无法理解MALLET中的HLDA输出



下面是我的代码片段:

HierarchicalLDA hlda = new HierarchicalLDA();
hlda.initialize(instances, instances, 5, new Randoms());
hlda.estimate(1000);
hlda.printState(new PrintWriter(new File("Data.txt")));

我无法理解控制台输出和"Data.txt"文件中打印的内容的含义。我已经搜索了MALLET网站,但没有发现任何有用的东西。任何帮助或建议将不胜感激。提前感谢!

在hLDA中,每个文档通过主题树采样路径。每个令牌存在于该路径的一个"级别"上。printState方法为您提供文档路径中每个树节点的ID,然后是关于单词的信息:单词的数字ID、该ID的字符串以及路径中的级别。

    node = documentLeaves[doc];
    for (level = numLevels - 1; level >= 0; level--) {
        path.append(node.nodeID + " ");
        node = node.parent;
    }
    for (token = 0; token < seqLen; token++) {
        type = fs.getIndexAtPosition(token);
        level = docLevels[token];
        // The "" just tells java we're not trying to add a string and an int
        out.println(path + "" + type + " " + alphabet.lookupObject(type) + " " + level + " ");
    }

相关内容

  • 没有找到相关文章

最新更新