2024-09-30 14:19:53 发布
网友
因为形容词和动词都能用否定前缀表达消极情绪,所以我需要从我现有的数百万个句子中找出这样的短语。例如“我不擅长这个。”是一个否定句,即使“好”是一个积极的词。在
我用nltk标记所有的句子。但是我怎样才能过滤掉否定的前缀呢?大多数否定前缀如no,not都被标记为副词“RB”。这是不是意味着我可以用所有带标记的副词作为否定前缀?而且,我所拥有的数据是巨大的,这使得我很难想出一个否定前缀的列表。在
NLTK有一个用于sentiwordnet的API,但这可能对您的任务没有帮助。Sentiwordnet有它的扭结。E、 g
sentiwordnet
>>> from nltk.corpus import sentiwordnet as swn # Kind of useful. >>> swn.senti_synsets('happy', 'a') [SentiSynset('happy.a.01'), SentiSynset('felicitous.s.02'), SentiSynset('glad.s.02'), SentiSynset('happy.s.04')] >>> swn.senti_synsets('happy', 'a')[0].synset.definition() u'enjoying or showing or marked by joy or pleasure' >>> swn.senti_synsets('happy', 'a')[0].pos_score() 0.875 >>> swn.senti_synsets('happy', 'a')[0].neg_score() 0.0 >>> swn.senti_synsets('happy', 'a')[0].obj_score() 0.125 # Not very useful... >>> swn.senti_synsets('slow', 'a') >>> swn.senti_synsets('slow', 'a')[0].synset.definition() u'not moving quickly; taking a comparatively long time' >>> swn.senti_synsets('slow', 'a')[0].pos_score() 0.0 >>> swn.senti_synsets('slow', 'a')[0].neg_score() 0.0 >>> swn.senti_synsets('slow', 'a')[0].obj_score() 1.0
NLTK http://www.nltk.org/howto/sentiment.html中还有VADER algorithm:
NLTK有一个用于
sentiwordnet
的API,但这可能对您的任务没有帮助。Sentiwordnet有它的扭结。E、 gNLTK http://www.nltk.org/howto/sentiment.html中还有VADER algorithm:
^{pr2}$相关问题 更多 >
编程相关推荐