如何在gensim LdaModel中调整alpha参数
How to adjust alpha parameter in gensim LdaModel
我在我的 lda 分布中使用对称 alpha 训练了一个主题模型:
model = gensim.models.ldamodel.LdaModel(bows, num_topics = 20, id2word = dictionary, passes = 100)
我可以看到:
model.alpha
array([ 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05,
0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05,
0.05, 0.05])
其中
numpy.sum(model.alpha)
1.0000000000000002
我不太明白 gensim 如何允许降低 alpha 参数以允许每个文档成为较少主题的混合体?
看起来像 docs
似乎 gensim.models.ldamodel.LdaModel
需要一个默认为 'symmetric'
的 alpha
参数。您可以明确地为它提供一个 alpha 数组,或者将其设置为 'auto'
,它将从您的数据中学习先验。
我建议尝试使用 alpha='auto'
让它学习先验知识。
我在我的 lda 分布中使用对称 alpha 训练了一个主题模型:
model = gensim.models.ldamodel.LdaModel(bows, num_topics = 20, id2word = dictionary, passes = 100)
我可以看到:
model.alpha
array([ 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05,
0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05,
0.05, 0.05])
其中
numpy.sum(model.alpha)
1.0000000000000002
我不太明白 gensim 如何允许降低 alpha 参数以允许每个文档成为较少主题的混合体?
看起来像 docs
似乎 gensim.models.ldamodel.LdaModel
需要一个默认为 'symmetric'
的 alpha
参数。您可以明确地为它提供一个 alpha 数组,或者将其设置为 'auto'
,它将从您的数据中学习先验。
我建议尝试使用 alpha='auto'
让它学习先验知识。