如何运行时警告:LDA中的exp遇到溢出

时间:2018-05-01 15:04:34

标签: python lda

ldamodel, fequency_list,vect = create_ldamodel(documents = chatTurn.case_content, num_topics = 6)

我正在运行上面的LDA代码,它的声明如下所示。

/Users/user/anaconda3/lib/python3.6/site-packages/gensim/models/ldamodel.py:497:运行时警告:在exp中遇到溢出   expElogthetad = np.exp(Elogthetad)

我使用的LDA模型函数如下:

def create_ldamodel(documents, num_topics):
    vect = CountVectorizer(stop_words = 'english')
    X = vect.fit_transform(documents.apply(lambda x:x.lower()))
    corpus = gensim.matutils.Sparse2Corpus(X, documents_columns=False)
    id_map = dict((v,k) for k, v in vect.vocabulary_.items())
    ldamodel = gensim.models.ldamodel.LdaModel(corpus,      num_topics=num_topics,
                                          id2word = id_map)

fequency_list = dict()
for i in list(ldamodel[corpus]):
    for j_k, j_v in i:
        if j_k in fequency_list:
            fequency_list[j_k] += j_v
        else:
            fequency_list[j_k] = 0

return (ldamodel, fequency_list,vect)

我可以知道有什么解决方案吗?

2 个答案:

答案 0 :(得分:0)

因为您的numpy与gensim不匹配,可能会在当前环境中更新numpy或指定numpy版本以匹配您的gensim版本。希望这对你有所帮助。 ^^

答案 1 :(得分:0)

我的运行时错误如下: RuntimeWarning:exp中遇到溢出   expElogthetad = np.exp(Elogthetad) 在尝试了许多次之后,我发现建议您卸载numpy并再次重新安装它:

python3.6 pip卸载numpy 并重新安装: python3.6 -m pip install -U numpy