如何解决情感分析中的对比词问题(基于词典的方法)

时间:2019-08-10 02:45:57

标签: python nlp nltk sentiment-analysis

我想构建一个功能来处理非正式文本的情感分析中的对比词。文字为马来语。知道如何解决这个问题吗?

“食物很好吃,但是太贵了”-负面情绪

但是,由于肯定词(好,好吃)的数量高于否定词(昂贵),因此系统检测到句子为肯定。

所以我要做的是,一个对比词的价移子,我列出了一系列对比词,然后,如果系统中有对比词,它将极性从正向转变为负,反之亦然。

这是我尝试过的代码。

positive='1'
negative='-1'
neutral ='0'

pos_Words=set(['good','beautiful','best',])
neg_Words=set(['bad','suck','damn'])
contrast_words=set(['but'])

def sentiment(words):
    pslen= len(pos_Words.intersection(words))
    nglen= len(neg_Words.intersection(words))

    if pslen > nglen and contrast_words == 0:
        return positive
    elif pslen < nglen and contrast_words == 0:
        return negative
    elif pslen > nglen and contrast_words > 0:
        return negative
    eliif pslen < nglen and contrast_words > 0:
        return positive
    else:
        return neutral

我不知道我的概念是对还是错,这看起来太简单了,准确性还低,还有其他方法吗?

0 个答案:

没有答案