我从不同的博文中删除了有关特定主题的文字。我读到的关于sentimenet分析的大多数主题都是基于训练分类器,以便确定它是否是pos / neg答案,如thread所示。
我的问题是在哪里可以找到单词词典,还有情绪。
例如:Nice: Positive , bad: negative
。
答案 0 :(得分:3)
您正在寻找的是情感词典。情感词典是一个单词词典,其中每个单词都有相应的情感分数(从非常消极到非常正面)或者你提到的标记如好或坏(但后者不常见)。您可以使用几种情感词典,例如sentiwordnet,sentistrength和AFINN等等。在所有这三个词典中,你得到的情绪分数对应于每个情感词,当然,你可以简单地设定一个条件,即如果一个词有相应的负分,那么它是坏的,如果是肯定的,那么它是好的。 其中最容易使用的是AFINN,我建议你从这开始。稍后您可以根据您的应用程序升级到更合适的版本。 您可以找到有关AFINN here的信息,并从here下载。
如果您有其他问题,请告诉我。
答案 1 :(得分:0)
如果使用英语文字,则可以使用与预训练模型相关的极性分数字典。 我建议使用NLTK的Vader,因为它操作起来非常简单。
from nltk.sentiment import vader
analyzer = vader.SentimentIntensityAnalyzer()
words_with_sentiments = analyzer.make_lex_dict()
len(words_with_sentiments)
输出为7502个条目。
.make_lex_dict()的输出是一个字典,其结构如下:
{...
'agree': 1.5,
'agreeability': 1.9,
'agreeable': 1.8,
'agreeableness': 1.8,
'agreeablenesses': 1.3,
'agreeably': 1.6,
'agreed': 1.1,
'agreeing': 1.4,
'agreement': 2.2,
'agreements': 1.1,
'agrees': 0.8,
'alarm': -1.4
...}
理论上,正值对应于正面情绪,而负值对应于负面情绪。然后,您可以将该字典用作正在解析的字符串的查找表。