我目前正在尝试用 Java 实现一个标记引擎,并搜索从文本(文章)中提取关键字/标签的解决方案。我在 stackoverflow 上找到了一些建议使用逐点互信息的解决方案。
解决方案1
解决方案2
我不能使用 python 和 nltk 所以我必须自己实现它。但我不知道如何计算概率。
等式如下所示:
PMI(term, doc) = log [ P(term, doc) / (P(term)*P(doc)) ]
我想知道的是如何计算 P(term, doc)
我已经有一个兰格文本语料库和一个文章集。这些文章不是语料库的一部分。语料库使用 lucene 进行索引。
请帮帮我。
此致。
有很多算法可以做到这一点:
开源工具:
kea(http://www.nzdl.org/Kea/)监督方法使用训练数据和受控词汇
毛伊岛索引器(http://code.google.com/p/maui-indexer/)它基本上是 kea 的扩展,它提供了使用百科全书进行关键短语提取的设施。
carrot2(http://project.carrot2.org/)用于关键短语提取的无监督方法。它支持多种输入、输出格式和关键短语提取参数。
mallet主题建模模块(http://mallet.cs.umass.edu/topics.php)
斯坦福主题建模工具(http://nlp.stanford.edu/software/tmt/tmt-0.3/)
Mahout 聚类算法(http://mahout.apache.org/)
商业API:
泽曼塔 API(http://www.zemanta.com/developer/)
雅虎术语提取API(http://developer.yahoo.com/contentanalysis/)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)