首页 > 解决方案 > Python - 如何更新 Vader Lexicon 分数?

问题描述

我正在为 python 使用 NLTK,我正在尝试更新一组单词的分数。虽然分数似乎正在更新,但它们似乎并没有按照我指定的方式更新。我想知道是否有人知道这个过程是如何工作的?

我在下面附上了一个最小的工作示例,显示了更新前后的分数

from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer

SIA = SentimentIntensityAnalyzer()
print(SIA.polarity_scores('moon'))

SIA.lexicon.update({'moon': 5})
print(SIA.polarity_scores('moon'))

之前和之后的分数可以在下面看到

{'neg': 0.0, 'neu': 1.0, 'pos': 0.0, 'compound': 0.0}
{'neg': 0.0, 'neu': 0.0, 'pos': 1.0, 'compound': 0.7906}

标签: pythonnltksentiment-analysisvader

解决方案


尝试只查询moon这样的词典:

from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer

SIA = SentimentIntensityAnalyzer()
print(SIA.polarity_scores('moon'))

SIA.lexicon.update({'moon': 5})
print(SIA.lexicon['moon'])

输出是:

在此处输入图像描述


推荐阅读