研究与开发
现代计算机 下
文章编号:1007-1423(2017)06-0003-04 DOI:
基于情感词典的酒店评论情感分类研究
陈柯宇,何中市
(重庆大学计算机学院,重庆 400044)
摘要:
酒店用户评论包含评论人的情感,对其情感进行分析研究对于商家和用户都具有意义。 基于情感词典的无监督分类
方法是一种非常有效的情感倾向性分类方法,提出一种基于扩展情感词典的情感分类算法,通过合并公共情感词典
以及利用 word2vec工具扩充词典得到酒店领域情感词典,根据提出的算法判定评论的情感极性并分类。 实验结果验
证该方法对酒店领域评论进行情感分类的有效性和准确性。
关键词:
情感词典; 酒店评论; word2vec; 情感分类
0 引言
随着互联网的蓬勃发展,用户通过网络进行交流,
在网络平台上发布大量的留言和评论, 通过分析这些
评论中隐藏的情感倾向,可以为消费者提供参考,也可
以为商家提供信息,用来改进服务,增加用户满意度。
情感分类技术的任务是通过自动分析某种商品评
论的文本内容,将其分为正面情感类和负面情感类。常
见的情感分类技术主要有两种方法: 基于情感词典的
无监督分类方法和基于机器学习的有监督分类方法。
对于基于机器学习的有监督分类方法,Pang 等人 [1]第
一次将机器学习的方法用于情感分类当中, 使用贝叶
斯、SVM、最大熵分类器进行情感分类。 唐慧丰等人[2]把
名词和 N-Gram 等多种词性的词作为分类特征, 比较
了不同特征选择方法和不同分类方法下的效果。 王素
格等人 [3]采用五种情感词表,通过 SVM 分类器对汽车
语料情感分类进行研究,表明使用形容词、动词和副词
作为情感词得到的分类效果较好。 对于基于情感词典
的无监督分类方法, 如何构建高质量的情感词典是研
究的重点。文本情感词典构建研究中,学者们对英文情
感词典构建方法研究比较多, Turney 等人 [4]利用点互
信息(Pointwise Mutual Information,PMI)算法计算词语
的情感极性来判断文本的情感倾向。 Taboada 等人[5]使
用一个包含词语极性和强度注释的情感词典来计算文
本的情感倾向。 Yu 等人[6]用已有的情感词典词语作为
种子词,通过 PMI 算法计算词语的情感极性,从而判
断文本的情感倾向。王素格等人[7]融合已有的五种词典
资源构建了中文情感词表, 并采用了加权线性组合方
式对句子进行情感类别判断。 然而,对于不同领域,情
感词典的质量与文本倾向性算法对于分类精度影响很
大,本文使用了 word2vec[8-10]工具来扩充酒店领域情感
词典,并通过增加词典类型以及判定条件,提出了一种
改进的基于词典的情感分类算法。
1 word2vec工具
Word2vec 是 Google 公司 在 2013 年发布的一款
将词表征为实数值向量的开源工具, 其利用深度学习
的思想, 先通过训练文本语料库构建词汇表, 再根据
CBOW 模型或 Skip-Gram 模型训练得到每个词的词向
量, 而向量空间上的相似度可以用来表示文本语义上
的相似度。Word2vec输出的词向量可以用来进行聚类、
找同义词、词性分析等。
CBOW 模型(Continuous Bag-of-Words Model),也
叫连续词袋模型。它会根据语境预测词语,即对一些单
词以及他们的上下文环境建立一个数据集, 使用围绕
目标单词的其他单词(语境)作为输入,在映射层做加
权处理后输出目标单词。 在 CBOW模型中, 非线性的
隐藏层会被删除掉, 而投影层会被共享给语料中的所
有词汇,即所有词都会被投射到相同的位置,从而保证
了训练得到的词向量是平均值。 Skip-gram模型根据当
前单词预测语境, 每个词向量表征了上下文词汇的分
髶
研究与开发
现代计算机 下
布情况。 它会把当前单词作为连续投影层中对数线性
分类器的输入, 然后对在一个特定窗口区间的上下文
词汇作出预测。 对于在所设定窗口内的词,Skip-gram
模型都会两两计算概率, 这样会使一些中间含常见停
用词如“的”之类的短语很容易被识别为相同短语。 它
们的架构图分别如图 1、图 2所示:
图 1
图 2
本文采用 Java版的 word2vec工具, 先通过 learn-
File()和 saveModel()方法来训练模型,最后通过 dis-
tance("W")可以得到与词语 W最接近的词语以及它们
之间的余弦距离。
2 酒店评论情感词典构建
公共情感词典
目前常用的公共情感词典有知网(HowNet)发布的
情感词典、 台湾大学自然语言处理实验室提供的简体
中文情感词典 (National Taiwan University Sentiment
Dictionary,NTUSD )以及《学生褒贬义词典》(张伟,刘
缙, 郭先珍主编)。 其中 HowNet 词典包含正面情感词
语,负面情感词语,正面评价词语和负面评价词语和程
度级别词语等文件,本文将情感词语和评价词语合并,
都视为情感词,共有正面情感词 4366 个和负面情感词
4370 个 ; NTUSD 词典包含褒义词 2810 个和贬义词
8272 个。 褒贬义词典共 1664 个词条,其中褒义词 728
条,贬义词 933条,兼褒贬词 3条。
卡方检验(chi-square statistic,CHI)技术
卡方检验最基本的思想就是通过观察实际值与理
论值的偏差来确定理论的正确与否。 具体做的时候常常
先假设两个变量确实是独立的,然后观察实际值与理论
值的偏差程度,如果偏差足够小,我们就认为误差是很
自然的样本误差,是测量手段不够精确导致或者偶然发
生的,两者确确实实是独立的,此时就接受原假设;如果
偏差大到一定程度,使得这样的误差不太可能是偶然产
生或者测量不精确所致,我们就认为两者实际上是相关
的,即否定原假设,而接受备择假设。 通过将卡方检验,
我们能够有效地选择出特征向量,计算公式如下:
χ2(t,c)= N·(AD-CB)
2
(A+C)·(B+D)·(A+B)·(C+D)
(1)
其中,公式中各个参数的含义,说明如下:
N:训练数据集文档总数
A:在一个类别中,包含某个词的文档的数量
B:在一个类别中,排除该类别,其他类别包含某个
词的文档的数量
C:在一个类别中,不包含某个词的文档的数量
D:在一个类别中,不包含某个词也不在该类别中
的文档的数量
酒店领域情感词典构建方法
(1)将 NTUSD 词典与 Hownet 词典以及褒贬义词
典合并去重,得到新的情感词典 D。
(2)选用网上获取的 16000 条酒店评论语料作为
训练集, 通过 ICTCLAS 分词工具进行文本预处理,将
分词结果经过停用词表以及词性选择过滤后, 得到词
袋模型,利用公式(1),为每个类别下的每个词都进行
计算得到一个 CHI值, 然后对这个类别下的所有的词
基于 CHI值进行排序,选择出最大的若干个词;最后将
多个类别下选择的多个词进行合并以及词性过滤,得
到最终的 n的词语 Words(Wn)。
(3)通过 word2vec 工具进行情感词典拓展,步骤
如下:
①将 16000 条酒店评论作为训练集, 通过 word2
vec工具,训练出词向量模型文件。
②遍历(2)中得到的词语 Words(Wn),记录情感词
典 D中是否含有词语 Wi(0<i≤n),通过 distance("Wi")
找到与词语 Wi 相似度前十的词语 simWords(Wi,Wj)
(0<j≤10)。
③如果情感词典 D 中不含词语 Wi,计算出情感值
E(Wi),计算公式如下:
�����
���
�
��� ��
���
��
���������� ������
���
�
���
����
�����
���
�
��� ��
���
��
���������� ������
���
�
����
髷
研究与开发
现代计算机 下
����� �����
�� �
�� ����
�� � ���
���
��
�� �� ��� ���
��� ���
�� ��� ��� ��
�� �� ���
��� ���
�� ����
�� ��� ���
��� �
�
�� ������� ������
����� ��� ������ ������
�����
��� ������ ���
��
�����
�
E(Wi)=
10
j=0
ΣE(Wj) (2)
其中 E(Wj)表示词语 Wj 在情感词典 D 中的情感
值,令正面情感为 1,负面情感为-1。根据 E(Wi)的值将
Wi加入情感词典 Dt中, E(Wi)>0加入临时正面情感词
典, E(Wi)<0加入临时负面情感词典。
④将 simWords(Wi,Wj)进过词性过滤后,如果情感
词典 D中不含 Wj,则将 Wj根据 Wi的情感极性加入临
时情感词典 Dt中。
最后将输出得到的结果 Dt进行了人工筛选, 去掉
一些明显不符合结果的词语,将经过筛选后的情感词与
情感词典 D行进合并,得到最终的酒店领域情感词典。
特殊词词典
因为中文语法的复杂性,除了基本情感词典外,还
需要程序副词词典、否定副词词典等。本文根据知网情
感词典整理出 4 个程度副词词典, 分别赋予不同的权
值。 然而,在酒店领域评论中,如“大”这个情感词,“房
间很大”是正面评价,而“花费很大”为负面评价,又如
含有如同词语“总之”的句子,常常作为评论人的总结
性情感表现,再如“住”字本来不含情感,但如果评论中
出现“我再也不想来这住了”或者“我还会再来这住”这
类句子,可以看作评论人的整体情感。 因此,本文人工
整理出少数特殊词语词典用于判断上述情况。
3 酒店评论情感分析
在本文中,将正面情感词的情感强度值设为 1,负面
情感词的情感强度值设为-1, 评论的整体情感值为 E
(S),每个句子表示为 S1,S2,…,Sn,E(S)计算公式如下:
E(S)=
n
i=1
ΣE(Si) (3)
其中 E(Si)表示每个句子的情感值,而每个句子的
情感值由其句中所含的情感词、 修饰词以及特殊词等
决定:
E(Si)=T(Wi)·
n
i=1
Σ(E(Wi)·P(Wi)·PS(Wi)+
P(mark)) (4)
其中 n代表句子中满足要求的情感词数,E(Wi)为
情感词在情感词典中的情感值;P(Wi)为修辞词的权值,
如不同的程度副词“超级”、“稍微”赋予不同的权值,还
包括否定词,如“不好”与“好”表达的意思完全相反;PS
(Wi)表示特殊词例如歧义词所给予的权值;P(mark)表
示特殊标点符号如感叹号的权值,若句子情感值>0,则
加上 2,反之减去 2。 T(Wi)标记该词是否为总结词,如
果是则在该句的情感值上进行加强。
4 实验与分析
实验描述
本文采用谭松波整理的 6000 条酒店领域评论作
为测试集, 其中 3000条为正面评级,3000条为负面评
论, 先对公共情感词典按照第 3节描述的方法进行合
并扩展,得到新的酒店领域情感词典,再通过本文提出
的算法,利用公式(2)、公式(3)对每条评论分别进行情
感倾向值的计算以及分类, 同时将本文提出的算法与
文献[7]、文献[11]中的方法行进对比,其中文献[7]将句
子末的情感词汇的权值增加,文献[11]增加了前缀否定
词和转折词的判定。
评价指标
本文采用准确率(Precision)、召回率(Recall)和 F1
值(F1 Score)作为评价分类结果的指标,准确率和召回
率计算公式如下:
Precision=检索到的相关文档数量
检索到的所有文档总数
·100% (5)
Recall= 检索到的相关文档数量
系统中所有相关文档的总数
·100% (6)
F1 值被定义为准确率和召回率的调和平均数,它
认为召回率和准确率同等重要:
F1= 2·Precision·RecallPrecision+Recall
·100% (7)
实验结果
表1 不同方法实验结果对比
从实验结果可以看出, 本文提出的基于扩展情感
词典的情感分类算法在对酒店领域评论进行情感分类
时, 针对正面和负面情感的评论都有比较高的准确率
和召回率, 证实了本文提出的方法在判别酒店评论文
本情感倾向上的可行性。
5 结语
本文对酒店领域情感词典进行了扩展, 提出了改
髸
研究与开发
现代计算机 下
Sentiment Classification of Hotel Reviews Based on Sentiment Dictionary
CHEN Ke-yu,HE Zhong-shi
(College of Computer Science, Chongqing University,Chongqing 400044)
Abstract:
Hotel reviews of users contains human's sentiments, the analysis and research of the sentiments are meaningful for both businesses and
users. Unsupervised classification method based on sentiment dictionary is a very effective sentiment classification method, proposes a
sentiment classification algorithm based on extended sentiment dictionary, through combining the public sentiment dictionary and expand-
ing the dictionary by word2vec tools, gets a sentiment dictionary of hotel areas, according to the algorithm to determine and classify the
sentiment of reviews. The experimental results show that the method has good effectiveness and accuracy of classifying the reviews' senti-
ment of hotel areas.
Keywords:
Sentiment Lexicon; Hotel Reviews; Word2vec; Sentiment Classification
进的基于词典的情感分类算法, 考虑到酒店领域评论
中的特殊情况,选用谭松波的酒店领域评论共 6000 条
语料进行试验,从实验结果看来,本文的方法取得了较
好的效果。 但是基于情感词典的无监督分类方法十分
依赖情感词典,对新兴的网络情感词识别效果较差,且
特定领域的情感词典不适合跨领域情感分类在后续的
研究中, 将针对基于机器学习的有监督分类方法以及
跨领域情感分类进行进一步研究。
参考文献:
[1]Pang B, Lee L, Vaithyanathan S. Thumbs Up: Sentiment Classification Using Machine Learning Techniques[C]. Proceedings of the
ACL-02 conference on Empirical Methods in Natural Language Processing-Volume 10. Association for Computational Linguistics,
2002:79-86.
[2]唐慧丰,谭松波,程学旗. 基于监督学习的中文情感分类技术比较研究[J]. 中文信息学报,2007,21(6):8-94.
[3]王素格, 魏英. 停用词表对中文文本情感分类的影响[J]. 情报学报, 2008,27(2):175-179.
[4]Turney P D, Littman M L. Measuring Praise and Criticism: Inference of Semantic Orientation from Association[J]. ACM Transactions on
Information Systems(TOIS),2003,21(4):315-346.
[5]Taboada M, Brooke J, Tofiloski M, et al. Lexicon-Based Methods for Sentiment Analysis[J]. Computational Linguistics,2011,37(2):
267-307.
[6]Yu H, Hatzivassiloglou V. Towards Answering Opinion Questions: Separating Facts from Opinions and Identifying the Polarity of Opin-
ion Sentences[C]. Proceedings of the 2003 Conference on Empirical Methods in Natural Language Processing. Association for Compu-
tational Linguistics, 2003: 129-136.
[7]王素格,杨安娜,李德玉. 基于汉语情感词表的句子情感倾向分类研究[J]. 计算机工程与应用,2009,45(24): 153-155.
[8]Yao J,Wang H, Yin P. Sentiment Feature Identification form Chinese Online Reviews[C]. Proceedings of 2011 International Confer-
ence on Computer Science and Education: Communications in Computer and Information Science,2011:315-322.
[9]Wang H, Yin P, Zheng L, et al. Sentiment Classification of Online Reviews: Using Sentence-Based Language Model[J]. Journal of
Experimental & Theoretical Artificial Intelligence,2014,26(1):13-31.
[10]Mikolov T,Chen K, Corrado G, et al. Efficient Estimation of Word Representations in Vector Space[C]. Proceedings of Workshop at
ICLR. 2013.
[11]周剑峰,阳爱民,周咏梅. 基于中文微博的情感词典构建及分类方法[J]. 计算机与数字工程,2014,42(10):1773-1775.
作者简介:
陈柯宇(1992-),男,重庆潼南人,硕士,研究方向为自然语言处理
何中市,教授,博士生导师,研究方向为模式识别、机器学习与数据挖掘、自然语言处理与数字图像处理
收稿日期:2016-12-13 修稿日期:2017-02-10
髺