我正在尝试构建一个基于语义方法的反馈情绪分析器。举个例子:“我有一个安全的旅程”--假设这是一个司机的反馈,由一个乘客提供。我需要从这句话中提取以下信息:
"I had safe journey" ->
SUBJECT= "driving"
SENTIMENT= "positive"我正在使用NLTK,我参考了NLTK书。我已经阅读了“从文本中提取信息”一节。该部分讨论了使用基于正则表达式的语法的Chunking。但是我很困惑,英语有许多不同的句型,我不知道如何涵盖所有的可能性。
实际上,我是NLP的新手。我还在NLTK的书中找到了“分析句子结构”和“分析句子的意义”。分块足够实现我的目标了吗?我应该怎么做?
发布于 2015-07-05 16:08:51
你不一定要做解析或分块。主题的检测和情感极性的检测都可以在足够的质量水平下使用基于简单词袋的分级器来实现。这取决于输入文本的性质(它们有多长,有多少拼写/语法错误,有多少不同的主题...)以及您的需求(例如,如果你已经对80%的准确率感到满意)。
然而,你最需要的是一个已经分类的实例的训练集,或者一个好的极性词典。如果你两者都没有,解析/分块不会对你有多大帮助。
发布于 2015-07-05 19:01:41
两种解决方案:
中使用它
但首先,您应该对文本进行标记化。使用NLTK,您可以使用Punkt调用nltk.word_tokenize()。
https://stackoverflow.com/questions/31227281
复制相似问题