2010-09-23 60 views
13

我正在寻找一个java驱动的解决方案来分析句子来记录一个关键词是正面还是负面使用的需求。Java文本分析库

即关键词可能是“白菜”和一句话: -

“我喜欢卷心菜但不是豌豆”

而且我想某种登录这是一个java句子解析正。 lucene(Hibernate-Search)库可以用于这个吗?

有什么想法?

回答

16

您正在寻找“情绪分析”。一种可能性是LingPipe,谁友好link to their competitors also。 Jeff Dalton在his blog也有很多自然语言处理工具。

+1

这里有很多东西。这将需要一些时间来筛选。我将重新报告我的发现 - 但非常感谢指针。 – jaseFace 2010-09-23 19:52:36

+0

是的,如果您发现任何有用的信息,请回报。 – ishnid 2010-09-23 20:52:53

0

看看Mahout Taste,它建立在Lucene上,但增加了很多开箱即用的功能。 (编辑)我应该补充一点,Mahout Taste只是相关到你要找的,而不是100%的匹配。

+3

(我是作者。)Taste是一个协作过滤引擎。封装项目Mahout涉及更一般的数据挖掘,但不包括情感分析。 – 2010-09-26 12:10:24

1

我怀疑有这样的事情。 Lucene肯定无法做到。

你甚至还可以定义“是否使用关键词是正面还是负面”以可编程方式进行评估?要做到这一点,你必须分析文本的真实含义,这是一个甚至没有被遥远解决的AI问题。

我想你可以通过统计分析关键字是否更频繁地出现在正面(好的,好的,好的,美妙的)或负面的(坏的,讨厌的,糟糕的,可恶的)关键词上来解决它,但即使在那里,否定,讽刺和复杂的句子结构也会产生问题。

+0

我想起了一个以“精神乐意,肉体虚弱”为开端的译者,并以“葡萄酒很好,但肉腐烂”为回归。 – 2010-09-23 13:13:27