LDA:为什么要对新文档进行推理抽样?

时间:2016-01-12 10:59:31

标签: sampling lda topic-modeling mallet

鉴于标准的LDA模型只有1000个主题和数百万个文档,使用Mallet /崩溃的Gibbs采样器进行培训:

在推断新文档时:为什么不跳过抽样并简单地使用模型的术语 - 主题计数来确定新文档的主题分配?我理解在新文档上应用Gibbs抽样考虑了新文档的主题混合,这反过来影响主题的组成方式(beta,term-freq。发行)。但是,由于在推断新文档时主题保持不变,我不明白为什么这应该是相关的。

抽样问题是概率性质 - 有时推断的文档主题分配,在重复调用时会有很大差异。因此,我想了解采样与仅使用确定性方法的理论和实践价值。

谢谢Ben

2 个答案:

答案 0 :(得分:3)

仅使用最后一个Gibbs样本的术语主题计数并不是一个好主意。这种方法没有考虑到主题结构:如果一个文档有一个主题的许多单词,它可能会有更多来自该主题的单词[1]。

例如,假设两个词在两个主题中具有相同的概率。给定文档中第一个单词的主题分配会影响另一个单词的主题概率:另一个单词更可能与第一个单词位于同一主题中。这种关系也是另一种方式。这种情况的复杂性是我们使用像Gibbs采样这样的方法来估算这类问题的价值的原因。

至于你对主题分配的评论各不相同,可能无法提供帮助,并且可以作为一件好事:如果主题分配不同,你就不能依赖它。你所看到的是,关于该词的主题的后验分布没有明显的胜利者,所以你应该采取一些特定的任务:)

[1]假设beta,文档主题分布的先验,鼓励稀疏性,通常选择主题模型。

答案 1 :(得分:2)

真正的问题是计算复杂性。如果文档中的N个令牌中的每一个都可以具有K个可能的主题,则对于N个可能的主题配置存在K.有两个主题和一个文档大小这个答案,你有更多的可能性,而不是宇宙中的原子数。

此搜索空间的采样非常有效,如果平均连续三到五次吉布斯扫描,通常会得到一致的结果。你可以做一些计算上不可能做到的事情,而且你需要付出的代价是一些不确定性。

如前所述,可以通过设置固定的随机种子来获得“确定性”结果,但实际上并没有解决任何问题。