2015-10-15 64 views
1

假设我们有一个适度增长的文档语料库,即每天将一些新文档添加到此文档语料库中。对于这些新增加的文档,我可以通过使用LDA的推理部分来推断主题分布。我不必为所有文件再次执行LDA的整个话题估计+推理过程,只是为了获得这些新文件的话题分布。但是,在一段时间内,我可能需要再次执行整个主题生成过程,因为自上次执行LDA以来新添加的文档数量可能会在文档语料库中添加全新的单词。我应该多长时间对整个文档语料库执行LDA?

现在,我的问题是 - 如何确定两个主题生成执行之间足够好的间隔?对于整个文档语料库应该多久执行一次LDA,有没有一般性建议?

如果我保持这个间隔很短,那么我可能会失去稳定的主题分布,主题分布将会不断变化。如果我把时间间隔过长,那么我可能会失去新的主题和新的主题结构。

回答

3

我只是在这里大声思考......一个非常简单的想法是从一堆新增文档中抽取一部分文档(比如说在一天的时间内)。

您可能可以从采样集合中的每个文档中提取关键词,然后将每个关键词作为对从添加这些新文档之前存在的集合版本构建的索引执行查询。

然后,您可以测量为响应每个查询而检索到的前K个文档的平均余弦相似度(以及对来自所取样的一组查询的每个查询的平均余弦相似度)。如果平均相似度小于预定义的阈值,则可能表明新文档与现有文档不相似。因此在整个系列中重新运行LDA可能是一个好主意。

相关问题