LDA 模型中超参数 alpha 和 theta 的设置规则

Rules to set hyper-parameters alpha and theta in LDA model

想知道LDA模型的超参数alpha和theta是否有规则设置。我运行图书馆给的一个LDA模型gensim:

ldamodel = gensim.models.ldamodel.LdaModel(corpus, num_topics=30, id2word = dictionary, passes=50, minimum_probability=0)

但是我对超参数的规范有疑问。根据我在库文档中的红色内容,两个超参数都设置为 1/主题数。假设我的模型有 30 个主题,两个超参数都设置为共同值 1/30。我 运行 在描述经济 activity 的新闻文章中使用模型。出于这个原因,我希望文档主题分布 (theta) 很高(文档中的相似主题),而主题词分布 (alpha) 也很高(主题共享许多词,或者,词不每个主题都如此独特)。因此,鉴于我对超参数的理解是正确的,1/30 是正确的规格值吗?

我假设您希望 theta 和 phi(文档-主题比例和主题-词比例)更接近等概率分布而不是稀疏分布,具有排他性 topics/words。

由于 alpha 和 beta 是对称狄利克雷先验的参数,因此它们直接影响您的需求。狄利克雷分布输出概率分布。当参数为 1 时,所有可能的分布都同样喜欢结果(对于 K=2,[0.5,0.5] 和 [0.99,0.01] 有相同的机会)。当参数>1 时,这个参数作为一个伪计数器,作为先验信念。对于高值,等概率输出是首选 (P([0.5,0.5])>P([0.99,0.01])。Parameter<1 具有相反的行为。对于大词汇表,您不希望主题在所有单词中都有概率,这就是为什么 beta 往往小于 1(alpha 也一样)。

但是,由于您使用的是 Gensim,您可以让模型为您学习 alpha 和 beta 值,从而允许学习不对称向量(请参阅 here),它代表

alpha can be set to an explicit array = prior of your choice. It also support special values of ‘asymmetric’ and ‘auto’: the former uses a fixed normalized asymmetric 1.0/topicno prior, the latter learns an asymmetric prior directly from your data.

eta(我称之为 beta)也是如此。