有没有高效的Python库用于动态主题模型,最好是扩展Gensim的?
我正在尝试用主题模型来分析推特的实时数据。Gensim是一个非常简单易用的工具,它的简单性让我印象深刻。它有一个真正的在线实现方式用于LSI(潜在语义索引),但对于LDA(潜在狄利克雷分配)则没有。对于像推特这样内容不断变化的数据流,动态主题模型是最理想的选择。有没有什么方法,或者说是一些技巧,可以让我用Gensim来实现这个目标呢?
有没有其他的Python实现,最好是基于Gensim或者独立的?我更倾向于使用Python,因为我想尽快入门,但如果有其他更好的解决方案,即使需要一些额外的工作,也请告诉我。
谢谢。
3 个回答
2
我和David Blei以及John Lafferty聊过这个问题,现在的答案是没有,确实没有。
Sean Gerrish的DTM实现有一个已知的内存泄漏问题,不过在处理一些可控的数据集合时还是能用的。
3
Gensim中的DTM封装功能是可以用的,但现在的文档并不是特别完整。如果你想了解Gensim的使用,最有用的资料是这个DTM示例,它在docs/notebooks
文件夹里。这个示例会告诉你所有输入变量应该是什么样子的。这里有几点需要注意:
- DTM模型已经移到了
gensim.models.wrappers.dtmmodel
这个位置。 - 你必须设置
initialize_lda=True
,这是因为DTM代码中的一个bug(将来这个会成为默认设置——PR #676)。
你还需要一个可以正常工作的DTM编译版本(你需要提供这个可执行文件的路径)。你可以尝试使用GitHub上的合适可执行文件,但如果这个不行,你可能需要通过运行里面的makefile
来编译原始代码。
3
Gensim是一个工具,它为原来的C++代码提供了一个Python的接口。简单来说,就是你可以用Python来使用这个原本用C++写的程序,方便了很多人。