gensim 生成 LSI 模型导致 "Python has stopped working"
gensim Generating LSI model causes "Python has stopped working"
所以我正在尝试使用 gensim 生成 LSI 模型以及 corpus_lsi 按照 this 教程。
我从自己生成的语料库和字典开始。
文档列表太小(9行=9个文档),这是gensim教程
中提供的示例列表
然而,pythos 在到达生成 LSI_model 的行时就崩溃了。
您可以在下面看到我的代码以及生成的输出
代码
#!/usr/bin/env python
import os
from gensim import corpora, models, similarities
import logging
#logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)
if __name__ == '__main__':
if (os.path.exists("tmp\dictionary.dict")):
dictionary = corpora.Dictionary.load('tmp\dictionary.dict')
corpus = corpora.MmCorpus('tmp\corpus.mm')
print("Used files generated Dataset Generator")
else:
print("Please run dataset generator")
print ("generating tf-idf model ...")
tfidf = models.TfidfModel(corpus) # Generate tfidf matrix (tf-idf model)
print ("generating corpus_tf-idf model ...")
corpus_tfidf = tfidf[corpus] #use the model to transform vectors
print ("generating LSI model ...")
lsi = models.LsiModel(corpus_tfidf, id2word=dictionary, num_topics=2) # initialize an LSI transformation
print ("generating corpus_lsi model ...")
corpus_lsi = lsi[corpus_tfidf] # create a double wrapper over the original corpus: bow->tfidf->fold-in-lsi
lsi.print_topics(2)
输出
Used files generated Dataset Generator
generating tf-idf model ...
generating corpus_tf-idf model ...
generating LSI model ...
打印后 "generating LSI model" 它崩溃了
有什么建议吗?
我试过的其他东西
- 将 python 版本更改为 python 2.6
- 从 github 中删除 gensim 并重新安装它(而不是 conda)
问题似乎是教程中使用的功能(可能降级或其他)
所以我改了行
lsi = models.LsiModel(corpus_tfidf, id2word=dictionary, num_topics=2) # initialize an LSI transformation
到
lsi = LsiModel(corpus_tfidf,num_topics=2)
而且它确实运行良好
所以我正在尝试使用 gensim 生成 LSI 模型以及 corpus_lsi 按照 this 教程。
我从自己生成的语料库和字典开始。 文档列表太小(9行=9个文档),这是gensim教程
中提供的示例列表然而,pythos 在到达生成 LSI_model 的行时就崩溃了。 您可以在下面看到我的代码以及生成的输出
代码
#!/usr/bin/env python
import os
from gensim import corpora, models, similarities
import logging
#logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)
if __name__ == '__main__':
if (os.path.exists("tmp\dictionary.dict")):
dictionary = corpora.Dictionary.load('tmp\dictionary.dict')
corpus = corpora.MmCorpus('tmp\corpus.mm')
print("Used files generated Dataset Generator")
else:
print("Please run dataset generator")
print ("generating tf-idf model ...")
tfidf = models.TfidfModel(corpus) # Generate tfidf matrix (tf-idf model)
print ("generating corpus_tf-idf model ...")
corpus_tfidf = tfidf[corpus] #use the model to transform vectors
print ("generating LSI model ...")
lsi = models.LsiModel(corpus_tfidf, id2word=dictionary, num_topics=2) # initialize an LSI transformation
print ("generating corpus_lsi model ...")
corpus_lsi = lsi[corpus_tfidf] # create a double wrapper over the original corpus: bow->tfidf->fold-in-lsi
lsi.print_topics(2)
输出
Used files generated Dataset Generator
generating tf-idf model ...
generating corpus_tf-idf model ...
generating LSI model ...
打印后 "generating LSI model" 它崩溃了
有什么建议吗?
我试过的其他东西
- 将 python 版本更改为 python 2.6
- 从 github 中删除 gensim 并重新安装它(而不是 conda)
问题似乎是教程中使用的功能(可能降级或其他)
所以我改了行
lsi = models.LsiModel(corpus_tfidf, id2word=dictionary, num_topics=2) # initialize an LSI transformation
到
lsi = LsiModel(corpus_tfidf,num_topics=2)
而且它确实运行良好