在MALLET主题建模中,--output-topic-keys [FILENAME]
选项在每个主题旁边输出一个参数,该参数在MALLET站点的教程中称为主题的“Dirichlet参数”。
我想知道这个参数代表什么?它是LDA模型中的β吗?如果不是什么,它的意义和用途是什么。
我注意到,当我在生成主题模型时不使用参数优化选项时,此参数在版本2.0.7中与在版本2.0.8中不同。我想知道为什么会出现这种差异。
这是版本2.0.7输出
和2.0.8
我知道每次运行输出都不同,但我只关心这个参数。
答案 0 :(得分:3)
Mallet中使用的主题模型推理算法涉及为每个单词重复采样新主题分配,其中包含所有其他单词的分配。控制此过程的因素是(1)当前单词类型在每个主题中出现的频率,以及(2)每个主题在当前文档中出现的次数。平滑参数确保任何主题的值都不为零:第一个因子为beta
,第二个因子为alpha
。
您可以将此处显示的alpha
参数视为"虚数"添加的每个主题中的单词。在第一种情况下,主题0在每个文档中具有2.5个虚构的重量单词。此参数的默认值最初为50 / numTopics
。较大的值鼓励模型在文档中具有更均匀的主题分布,较小的值鼓励更多的稀疏性。一般的经验是50太大了,而5是更好的默认值。这在2.0.8中已经改变。
默认设置是使所有主题的alpha
权重相等。通过超参数优化,这些值可以变化。通常您会发现,具有较大价值的主题将包含"附近的停用词"这在大多数文档中都很常见,并且内容不多。具有非常小的值的主题通常是不寻常的和独特的文档。中间的话题通常是最有趣的。
答案 1 :(得分:1)
如果我理解正确,参数是alpha,而不是beta。
您可以使用标记
来使用非对称alpha--optimize-interval INTEGER
每INTEGER
次迭代重新估算超参数。