在大多数情况下,我发现polarity_scores返回的输出为“ Neutral”,而应该突出显示一定百分比的负面和正面情绪,例如考虑以下情况,对于下面提到的所有3种情况,我发现{'neg': 0.0, 'neu': 1.0, 'pos': 0.0, 'compound': 0.0}
。
代码:
from nltk.sentiment.vader import SentimentIntensityAnalyzer
sid = SentimentIntensityAnalyzer()
a = "Our sales representative, Tom, was very attentive to our needs."
sid.polarity_scores(a)
输出:
{'neg': 0.0, 'neu': 1.0, 'pos': 0.0, 'compound': 0.0}
我希望上面的例子突出显示一定百分比的负面和正面情绪,而不是'neu'= 1.0和'compound'= 0.0。
有人可以建议如何获得与给定文本字符串的实际情绪匹配的更好结果吗?如果它们比Vader更好,我愿意探索其他库或软件包。
感谢您的咨询。
答案 0 :(得分:0)
Vader是一个基于词典的情感分析库。在您提到的句子中,唯一不中立的单词是“专心”,但正如您在此处看到的:https://github.com/cjhutto/vaderSentiment/blob/master/vaderSentiment/vader_lexicon.txt单词中未包含“专心”一词,这就是为什么它表示您的句子是中立的。>