首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分层LDA会耗尽所有可用内存,并且永远不会完成

分层LDA会耗尽所有可用内存,并且永远不会完成
EN

Stack Overflow用户
提问于 2016-12-20 00:36:49
回答 1查看 370关注 0票数 2

我正在等待我在邮件列表上的成员资格得到确认,所以我想我应该在这里请求它,也许可以让事情更快一点。

我正在写关于主题建模和使用LDA和HLDA的Mallet实现的硕士论文。

我在一个超过400万个文档的语料库上工作。虽然LDA (ParallelTopicModel)很好地处理了数据集,但我没有遇到任何问题,HLDA无法在填满所有可用内存之前进行5-6次迭代(我甚至用90g的内存运行了程序)。在较小的数据集(10-20,000个文档)上,它是有效的。

这就是我训练模型的方式:

代码语言:javascript
复制
HierarchicalLDA hierarchicalLDAModel = new HierarchicalLDA();
hierarchicalLDAModel.initialize(trainInstances, testInstances, numLevels, new Randoms());
hierarchicalLDAModel.estimate(numIterations);

我很乐意为您提供故障排除所需的任何其他信息,只需评论并让我知道。

非常感谢您的提前!

EN

回答 1

Stack Overflow用户

发布于 2016-12-20 22:33:25

hLDA是一个非参数模型,这意味着参数的数量随着数据大小的增加而扩展。目前还没有办法应用最大数量的主题。您可以通过增加主题词平滑参数eta (而不是CRP参数)来最有效地限制主题数量。如果此参数较小,模型将倾向于创建新主题,而不是向现有主题添加低概率词。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41227159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档