我有一个带有大量文本数据的lucene索引,每个项目都有一个描述,我想从描述中提取更常见的单词,并根据描述生成标签来对每个项目进行分类,有没有lucene.net库可以做到这一点,或者其他任何用于文本分类的库?
发布于 2012-01-25 06:59:40
不,lucene.net可以进行搜索,索引,文本规范化,“像这样查找更多”的功能,但不是文本分类。
向您建议什么取决于您的需求。所以,也许需要更多的描述。但是,一般来说,最简单的方法是尝试使用外部服务。所有外部服务都有REST API,使用C#与之交互非常容易。
从外部服务:
还有很好的Java SDK,比如Mahout。在我的记忆中,与Mahout的交互也可以像服务一样完成,所以与它的集成根本不是问题。
我使用c#完成了类似的“自动标记”任务,并且我已经在Open Calais中使用过。它每天可以免费进行50,000笔交易。这对我来说已经足够了。此外,uClassify也有很好的定价,例如“独立”许可证每年99美元。
但也许外部服务和Mahout不是您的方式。然后看看DBpedia项目和RDF。最后,至少可以使用朴素贝叶斯算法的一些实现。这很简单,一切都在你的控制之下。
发布于 2012-01-25 05:40:48
这是一个非常困难的问题,但是如果你不想花时间在这个问题上,你可以取整个文档中频率在5%到10%之间的所有单词。或者,你可以简单地选择最常见的5个单词。
做好标签提取是非常非常困难的。它是如此的困难,以至于所有的公司都依赖于暴露这样一个API的API服务。
您还可以执行停用词删除(使用从互联网获得的固定停用词列表)。
你还可以找到常见的N-gram(例如对),它们可以用来查找多个单词的标签。
https://stackoverflow.com/questions/8990804
复制相似问题