为了实现整个句子的情感分析,我们定义了如下的几个函数:停用词删除函数stopwords_del()、获取各类词典函数get_dict()和情感计算函数senti_score()等。
1.停用词删除函数
参数:
tokens:经过分词后的文本。
返回值:
fil_token_list:过滤掉停用词后的文本列表。
2.获取各类词典函数
参数:
text_word_dict:文本词典。
senti_word_dict:正、负面情感极性分析词语词典。
degree_word_list:程度级别词典。
返回值:
text_senti_dict:文本中包含的正、负面情感极性分析词词典。
text_degree_dict:程度级别词典。
3.情感计算函数
参数:
text_word_dict:文本词典。
text_senti_dict:文本中包含的正、负面情感极性分析词词典。(www.xing528.com)
text_degree_dict:程度级别词典。
返回值:
senti_score:情感分值,大于0为正面情感,小于0为负面情感,并且绝对值越大,代表情感越强烈。
测试主函数,需要指定停用词,文本中包含的正、负面情感极性分析词语和程度级别词语文件路径。
给定文本:
text1:“这个手机我喜欢”。
text2:“这个手机我不怎么喜欢”。
text3:“我们合作超愉快”。
text4:“我不怎么喜欢猫”。
情感极性分析如下:
运行结果为:
从上面可看出,text1、text3的情感极性为正面且text3的情感更强烈。text2和text4的情感极性为负面。
通过采用基于情感词典的文本情感极性分析,基本能够反映文本的情感倾向性,但这种方法主要有以下几个方面的缺陷:
(1)中文文本分词效果对文本的情感极性判断的影响重大。
(2)情感词典的质量也影响情感分类效果,有的情感词不包含在情感词典中,则无法判断文本的情感极性,同时,由于情感词典需要人工收集整理,工作量大。
因此,需要采用其他的情感分析方法避免出现这种情况。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。