【问题标题】:LDA and topic modelLDA 和主题模型
【发布时间】:2012-03-25 00:14:45
【问题描述】:

我已经研究了几个星期的LDA和Topic模型。但是由于我的数学能力较差,我不能完全理解它的内部算法。我使用了GibbsLDA实现,输入了很多文档,并将主题编号设置为100 ,我得到一个名为“final.theta”的文件,其中存储了每个文档中每个主题的主题比例。这个结果很好,我可以使用主题比例做很多其他事情。 但是当我在 LDA 上尝试 Blei 的 C 语言实现时,我只得到一个名为 final.gamma 的文件,但我不知道如何将这个文件转换为主题比例样式。 谁能帮我。 而且我了解到LDA模型有很多改进版本(例如CTM,HLDA),如果我能找到一个类似于LDA的主题模型,我的意思是当我输入很多文档时,它可以直接输出文档中的主题比例. 非常感谢!

【问题讨论】:

  • +1 用于 LDA 参考 - 这对我来说是一个新想法。谢谢。

标签: algorithm model lda dirichlet


【解决方案1】:

我认为 Blei 实现的问题在于您正在通过运行进行变分推理:

$ lda inf [args...]

当您想进行主题估计时,使用:

$ lda est [args...]

运行后,当前目录或可选最后一个参数指定的目录中都会有一个文件“final.beta”。然后运行包含在 tar 中的 python 脚本“topics.py”。这里的自述文件:http://www.cs.princeton.edu/~blei/lda-c/readme.txt 描述了所有内容,尤其是 B 和 D 部分。

(如果这仍然没有意义,请告诉我)

就 CTM 等改进而言:我对 HLDA 一无所知,但我过去曾使用过 LDA 和 CTM,我可以说两者都没有比另一个更好 - 这是一个案例对不同的数据更好。 CTM 假设文档是相关的,并使用该假设来改进结果,只要它是真的。

希望这会有所帮助!

【讨论】:

  • 感谢您的帮助,但我想要的是如何将结果文件转换为主题比例?我的意思是 theta。
  • 我认为,这个答案具有误导性。虽然 OP 询问主题比例(每个主题在文档中出现的次数 - theta),但答案是关于主题(单词分布 - beta)。
【解决方案2】:

要获得 E[θ],只需对每行中的 gamma 进行归一化。它遵循狄利克雷分布的性质。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-12
    • 2019-06-09
    • 2017-03-09
    • 2015-11-15
    • 2014-07-16
    • 2020-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多