如果我们在LDA中选择20个主题,然后再选择30个主题。我的问题是,这两种结果是否会交叉那20个主题并产生相似的结果?
回答:
简短回答 – 不会。LDA的工作方式是使用Gibbs采样器来获取文档向量的Dirichlet分布。分配是在这个样本上进行的,因此,除非你定义明确的随机种子并运行相同数量的主题k,否则由于采样的随机性和分配的不确定性,结果总是会有所不同。请查看Blei等人2003年的原始论文,了解k是如何定义的。
更新(关于评论):层次LDA(hLDA)试图通过构建遵循中国餐馆模型的主题层次来解决保留主题和子主题的问题。但它仍然不完美。
然而,扁平LDA的工作方式是,它关注的是文档而不是主题来产生进一步的结果。比如,你得到主题0(餐馆里的第一张桌子),所有文档都试图坐在那里,但空间不够,你创建了另一个主题1,有些文档觉得在这里更舒服,等等。现在你从这些桌子是如何创建的角度来看是正确的。但有一件非常重要的事情 – 当你创建一个新桌子/主题1时,主题0会发生变化,因为一些文档已经离开了第一张桌子,并带走了单词(或它们的共现概率)到新桌子,所有主题0中的单词在新情况下都被重新洗牌。当你创建更多桌子/主题时,之前的所有主题也会被重新估计。因此,当你用30个主题重新运行时,你永远不会得到相同的20个主题。