stay-leave / weibo-public-opinion-analysis

基于微博数据的舆情分析项目,包括微博爬虫、LDA主题分析和情感分析。
658 stars 101 forks source link

关于困惑度 #16

Closed 2871858184 closed 1 year ago

2871858184 commented 1 year ago

博主您好,在我用您的代码进行计算时,发现计算出来的困惑度为负数,但是我看很多论文里面计算结果都是正的,请问您知道这是为什么吗?

stay-leave commented 1 year ago

非常感谢你的提问,由于我在当时也不是很懂,没在意困惑度是负数了。 在lda.py的第100行我计算了困惑度,使用LdaModel类的log_perplexity()函数来计算LDA模型的困惑度,该函数返回的是模型的对数似然函数值的相反数。

所以,我们需要对该值取指数才能得到LDA模型的困惑度。 可以将其修改为perplexity = np.exp(- Ida_model.log_perplexity(corpus)),这样就转为正数了。

Ida_model.log_perplexity(test_corpu s)计算得到对数似然函数值的相反数, 即LDA模型的困惑度,‘np.exp()函数将 困惑度的值转换为正数。

np就是numpy

2871858184 commented 1 year ago

谢谢您的回答!