Gensim LDAmodel错误:NaN和所有主题均相同

时间:2018-07-02 19:01:58

标签: python pandas nlp gensim lda

遵循文档here以及以下链接:Machine Learning Gensim Tutorial,我完全不知道为什么会这样。在对句子进行标记化和定形化之后,我将这些句子放入短语转换器中,创建了一个Dictionary,并将所有正确的变量插入到模型中。这是我的代码示例:

tokens =  [[euid, sent, gensim.parsing.preprocessing.preprocess_string(sent.lower(), filters=[strip_punctuation,
        strip_multiple_whitespaces, strip_numeric, remove_stopwords, strip_short, wordnet_stem])] for sent in sentences]
#these filters are all default gensim filters except for wordnet_stem, which uses a WordNetLemmatizer

 bigram = gensim.models.Phrases(bag_of_words)
bigram_mod = gensim.models.phrases.Phraser(bigram)

样本令牌列表如下所示:['beautiful', 'Manager', 'tree', 'caring', 'great_place'](完全由伪造的列表)

texts = [bigram_mod[t] for t in bag_of_words]
id2word = corpora.Dictionary(texts)
sent_wordfreq = [id2word.doc2bow(sent) for sent in texts]

lda_model = gensim.models.ldamodel.LdaModel(corpus=sent_wordfreq,
                                            id2word=id2word,
                                            num_topics=5,
                                            update_every=1,
                                            alpha='auto',
                                            per_word_topics=True)

这是我得到的主题:

  

[(0,'nan *“ discovered” + nan *“ gained” + nan *“ send” + ...   (1,'nan *“发现” + nan *“获得” + nan *“发送” + ...   而且还会继续3次

因此,不仅所有主题都是相同的,而且每个主题的权重都是nan。可能是什么问题?

1 个答案:

答案 0 :(得分:0)

已更新:如果您遇到此问题,请升级numpy版本(这是一个numpy问题)。对我来说,conda install numpy =“ 1.14.5”可以正常工作。