从 LDA 主题模型生成文档

Generating documents from LDA topic model

我正在从一组文档中学习主题模型,并且效果很好。但我想知道是否有任何现有系统实际上会根据模型中的主题和单词生成 new 文档。

即。假设我想要一个主题 0 的新文档,那么 Gensim/MALLET/other 工具中的任何一个都会根据我的主题选择(或多个选择)的一些输入实际生成一个新文档吗?还是这是您自己解决的问题?

假设我有两个主题:

topic #0: 0.009*river + 0.008*lake + 0.006*island + 0.005*mountain + 0.004*area + 0.004*park + 0.004*antarctic + 0.004*south + 0.004*mountains + 0.004*dam
topic #1: 0.026*relay + 0.026*athletics + 0.025*metres + 0.023*freestyle + 0.022*hurdles + 0.020*ret + 0.017*divisão + 0.017*athletes + 0.016*bundesliga + 0.014*medals

有什么工具可以"topic 0: .5, topic 1: .5, length: 7" 并很好地生成如下文档:

island freestyle river south medals mountains area

或者类似的东西?如果它已经存在,我不想复制它。

您是否阅读了 Mallet 网站上的开发人员指南和教程?它概述了如何创建具有特定主题高概率的文档:

    StringBuilder topicZeroText = new StringBuilder();
    Iterator<IDSorter> iterator = topicSortedWords.get(0).iterator();

    int rank = 0;
    while (iterator.hasNext() && rank < 5) {
        IDSorter idCountPair = iterator.next();
        topicZeroText.append(dataAlphabet.lookupObject(idCountPair.getID()) + " ");
        rank++;
    }

此代码创建一个新文档,很有可能是主题 0。可以轻松修改此代码以包含多个主题并具有一定长度。