用NLTK python对使用样本数据或web服务的句子进行情感分析?

Ke.*_*Ke. 17 nlp classification nltk weka

我正着手进行情绪分析的NLP项目.

我已经成功安装了用于python的NLTK(看起来像是一个很棒的软件).但是,我无法理解如何使用它来完成我的任务.

这是我的任务:

  1. 我从一段长篇数据开始(比如说,从他们的网络服务中就英国大选的主题发表几百条推文)
  2. 我想把它分解成句子(或者信息不超过100个字符)(我想我可以在python中做到这一点?)
  3. 然后搜索该句中特定实例的所有句子,例如"David Cameron"
  4. 然后我想检查每个句子中的正面/负面情绪并相应地计算它们

注意:我对准确性并不是太担心,因为我的数据集很大,而且对讽刺也不太担心.

以下是我遇到的麻烦:

  1. 我可以找到的所有数据集,例如NLTK附带的语料库电影评论数据不是web服务格式.看起来这已经完成了一些处理.据我所知,处理(斯坦福)由WEKA完成.NLTK不可能单独完成这一切吗?这里所有数据集已经被组织成正/负已经例如极性数据集http://www.cs.cornell.edu/People/pabo/movie-review-data/这是如何完成的?(按情绪​​组织句子,肯定是WEKA?还是其他什么?)

  2. 我不确定我理解为什么WEKA和NLTK会一起使用.似乎他们做了很多相同的事情.如果我首先用WEKA处理数据以找到情绪,为什么我需要NLTK?有可能解释为什么这可能是必要的吗?

我发现了一些接近此任务的脚本,但所有脚本都使用相同的预处理数据.是否不可能自己处理这些数据以查找句子中的情绪而不是使用链接中给出的数据样本?

非常感谢任何帮助,将为我节省很多头发!

干杯柯

eal*_*ent 12

电影评论数据已被人类标记为正面或负面(进行评论的人给予电影评级,用于确定极性).这些黄金标准标签允许您训练分类器,然后您可以将其用于其他电影评论.您可以使用该数据在NLTK中训练分类器,但将结果应用于选举推文可能不如随机猜测正面或负面.或者,您可以将自己的几千条推文标记为正面或负面,并将其用作训练集.

对于使用朴素贝叶斯与NLTK情感分析的描述:http://streamhacker.com/2010/05/10/text-classification-sentiment-analysis-naive-bayes-classifier/

然后在该代码中,使用您自己的数据计算单词计数(在word_feats方法中),而不是使用电影语料库.