基于产品属性的条件句倾向性分析
2011-06-14林鸿飞
杨 源,林鸿飞
(大连理工大学 信息检索研究室,辽宁 大连 116024)
1 引言
近些年来,产品评论的倾向性分析一直是一个热点研究问题,具有很大的现实意义,不仅可以让顾客更全面的了解产品信息,也为商家及时了解顾客的意见提供了帮助。产品评论中句式多种多样,条件句占了很大比重,Narayanan等人[1]对英文评论中条件句(包含情感倾向为中性的)所占的比重进行了简单的调查,大约占句子总量的8%左右。本文在语料采集过程中,也对中文评论中的条件句数量简单调查了一下,含有情感倾向的条件句超过了句子总量的6%,所以,研究条件句的倾向性分析很有意义。
条件句倾向性分析属于产品属性倾向性分析的范畴,在这个领域,已经有很多人从不同角度进行了研究。Hu等人[2]自动获取了评论中的产品属性以及情感词,但是这些情感词主要是形容词。Popesu等人[3]在Hu的基础上,选用了更多的词性作为情感词,得到了比Hu更好的结果。Popesu和Hu在分析属性倾向性时没有考虑句式的影响,在“如果觉得诺基亚不好,那么建议你买三星”这句评论中,没有“如果……那么”,诺基亚的情感是负的,加上了“如果……那么”,诺基亚的情感是中性的。Liu等人[4]发现比较句对产品的观点表达有很大意义,并对比较句和比较关系进行了抽取。Ganapathibhotla等人[5]后来在Liu的基础上,分析了比较句中的属性倾向性。宋锐等人[6]结合中文的特点,在抽取比较关系[7]的基础上,分析了属性倾向性。Liu、Ganapathibhotla以及宋锐考虑了特殊句式,对比较句进行了分析。条件句和比较句不同,有其自身的特点,不能把处理比较句的方法简单的引入到条件句中。Narayanan分析了英文评论中的条件句,根据时态把条件句分为四类,但是时态特征在中文处理中并不适用,另外Narayanan也没有考虑条件句的识别以及隐式条件句的分析。
本文在前人工作的基础上,对中文产品评论中的条件句进行识别,并分析其倾向性。考虑了不含有条件连接词的隐式条件句,并从中抽取出体现条件关系的隐式条件词。在识别条件句时,主要利用条件连接词和隐式条件词及其词性以及类序列规则进行分类。在分析倾向性时,依据条件连接词和隐式条件词把条件句分为假设条件句、让步条件句、特定条件句和无条件句四类,并把条件句的类别用于SVM分类。本文的结构安排如下: 第2节介绍相关术语,第3节介绍条件句的语言学特征,第4节介绍条件句识别以及倾向性分析所选的特征和分类策略,第5节介绍实验结果和相关分析。
2 条件句分析相关术语
属性: 实验语料选取手机评论,用属性表示手机的一些具体特征,如屏幕、按键等,手机型号或品牌也属于属性的范围。
条件连接词: 把像“如果……那么”这样表示条件关系的词称为条件连接词。
显式条件句和隐式条件句: 含有条件连接词的称为显式条件句,不含有条件连接词的称为隐式条件句。
隐式条件词: 隐式条件句中通常含有一些体现条件关系的词,称之为隐式条件词。
情感倾向性: 用消极和积极来表示倾向性。Narayanan等人采用了积极、消极和中立三种类别,本文选取语料时,过滤了中立的部分,进行二值分类。
条件从句和结果从句: 条件句分为两个部分,条件部分称为条件从句,结果部分称为结果从句。
条件引导词和结果引导词: 像“如果”这样的引导条件从句的词称为条件引导词,像“那么”这样的引导结果从句的词称为结果引导词。
3 条件句语言学分析
条件句是汉语中比较常用的句式,其语言特点可以为条件句倾向性分析提供重要的特征。下面详细介绍一下条件句的一些语言特点。
3.1 条件连接词
产品评论中的条件句主要是显式条件句,含有条件连接词,这些词体现了条件关系。
“如果……那么”是最具代表性的条件连接词,“如果”引导条件从句,“那么”引导结果从句,如引言中所举的例子,条件连接词会影响属性的倾向性。条件句中的整体情感往往与结果从句的情感相一致。
有些条件句会省略条件引导词,有些条件句会省略结果引导词。例如“如果你觉得诺基亚不好看,还是买三星吧”。
汉语中还有很多其他的条件连接词,如“只要……就”、“只有……才”等。
常用的条件连接词有限,在总结的基础上手工建立了一个表。
3.2 隐式条件词
隐式条件句中没有条件连接词,但是含有一些体现条件关系的隐式条件词,表1是隐式条件句倾向性分析的例子。
表1 隐式条件句倾向性分析举例
续表
表1所举的例子都是隐式条件句,都是通过隐式条件词来表示条件关系的,下面详细介绍隐式条件词。
“本来”是对结果从句的虚拟,“本来”引导的句子后面往往会有对这一原因的解释,暗含这样一种语义,如果不是后面阐述的原因,虚拟的结果就会成为现实。
“将会”、“将”除了对将来情况的一般表述之外,也可以引导结果从句,这时并不表示一种将来的情况,而是表示一种推测,一种假设,当然也可以反映出一种情感,一种倾向。
“……的时候”、“有时”和“有时候”等是表示时间的词,在汉语表达中,它们更多的是表示一种条件,反映一种情况,引导条件从句。
“不得不”通常在条件从句中,有时会省略结果从句,暗含一种如果不说,心里就会不痛快的情感倾向。也可以理解为“如果不……将会……”的意思。
“再”、“再次”表示一种假设的条件,常用在表示某人再做某事,或者某种情况再发生时,这种再次发生的事情并不一定真的发生,只是一种假设的情况,说明一种条件,如表1中的举例就只是假设一种条件。
“……的话”经常跟“如果”同时使用,是一种口语化的表达,但是有些条件句省略了“如果”,这时就可以用它来表示条件关系了。
“幸好”表达这样一种语义: 如果不是这样就后悔死了。也可以表示一种假设的条件关系。
“不然”、“不这样”、“否则”通常引导结果从句,可以解释为“如果不……就”,所以当然可以表示条件关系了。
隐式条件征词不仅在隐式条件句中出现,在显式条件句中也大量出现,跟条件连接词一起表示条件关系,如“如果你再买手机的话,千万不要买三星了”。句中“如果”和“再”以及“……的话”一起出现,这是口语化表达的一个特点。
在抽取隐式条件词时,采用了三种方式: 首先,手工总结了一个隐式条件词表;其次,通过《同义词词林》[8],扩充了一些同义词;最后,根据隐式条件词与条件连接词经常共现的特点,自动从语料中抽取了一些在条件连接词附近,与条件连接词共现频率高的词,如“即使……也”经常与“仍然”同时出现。当然,与条件连接词同时出现的还有很多其他的词,如产品品属性和情感词,所以抽取时只抽取了连词、副词和介词和一些表达,然后去除了停用词、情感词等不可能是隐式条件词的词。
3.3 条件句分类
中文条件句一般可分为假设条件句、特定条件句和无条件句三类[9]。为了属性倾向性分析的需要,把假设条件句中含有让步成分的条件句单独分离出来,作为一类,定义为让步条件句。把条件句分为假设条件句、让步条件句、特定条件句和无条件句四类,并非是对中文条件句的语义关系进行可以划分,而是为了更好的分析属性倾向性,所以这与条件句通常的三类分法并不矛盾。表2是部分条件连接词与隐式条件词分类实例。
表2 部分条件连接词与隐式条件词分类表
条件句分类主要是根据条件连接词和隐式条件词,下面详细介绍条件句的四种分类。
假设条件句: 假设条件句中条件从句通常指出一种假设的条件,结果从句说明在这种条件下会出现的结果。假设条件句通常用“如果……那么”、“假如”、“倘若”等条件连接词来表达。假设条件句中条件从句和结果从句通常具有一致的情感,如“如果诺基亚N73的屏幕不好,我就不买了”,条件从句和结果从句对N73的屏幕都持消极情感。
让步条件句: 让步条件句的条件从句通常指出一种让步的条件,用“即使……也”、“纵然”、“尽管”等条件连接词来表达,让步条件句中条件从句和结果从句往往具有不一致的情感,如“即使三星的按键不好用,我也喜欢三星”,条件从句对三星持消极情感,结果从句对三星持积极情感,这也是本文把让步条件句从假设条件句中分离出来单独归类的原因,这样做更有利于属性倾向性的判别。
特定条件句: 特定条件句的条件从句通常表示的是一种特定的、单一的条件,结果从句表示在这一特定条件下的结果。特定条件句通常用“只有……才”、“只要……就”等条件连接词来表达。
无条件句: 无条件句的条件从句通常给出的是一种泛化的条件,结果从句表示的是这种泛化条件下的结果。无条件句通常用“无论……都”、“不管”等条件连接词来表达。无条件句的倾向性通常由结果从句来决定,例如“无论其他品牌手机的外观怎样,三星的外观设计都有自己的独到之处”,结果从句表达的是对三星手机外观的积极情感。
条件句分类主要根据条件连接词和隐式条件词,常用的条件连接词有限,显式条件句可以根据条件连接词表分类,隐式条件句的分类分为两种情况: 一种是含有手工获得的隐式条件词及其同义词,可以类比显式条件句直接分类;另一种只含有自动抽取的隐式条件词,根据抽取时与其共现的条件连接词进行分类。
4 条件句识别与倾向性分析
4.1 条件句识别
对产品评论中的条件句进行分析,首先要识别出条件句,Jindal等人[10]做了许多比较句识别的工作,条件句的识别与比较句有类似的地方,仅通过条件连接词和隐式条件词,在条件句识别实验中就得到了很高的召回率,但是准确率不高,因此,可以把条件句的识别分为两步:
(1) 识别出含有条件连接词和隐式条件词的句子,作为候选条件句;
(2) 把候选条件句进一步处理分类,得到真正的条件句。
第一步比较容易实现,下面主要介绍第二步。
观察候选条件句中非条件句的句子,发现这些句子中含有的条件连接词和隐式条件词的词性与条件句中的词性不同,如表3所示,其中词性标注使用中国科学院的分词工具ICTCLAS[11]。
表3 条件连接词和隐式条件词词性不同举例
表3中,两个例句的“那么”词性不一样,第一句是条件句,而第二句不是条件句,候选条件句中有很多这样的句子。对于这些句子,可以把词性加入分类特征来解决。
但是有些非条件句中,条件特征词和隐式条件词的词性与条件句相同,如表4所示。
表4 条件连接词和隐式条件词词性相同举例
表4中第一句是条件句,第二句不是,两句中“会”的词性相同,仔细观察发现周围使用的词不同,根据这一特点,采用类序列规则的方法可以帮助条件句的识别。这时需要把条件连接词和隐式条件词分为条件引导词和结果引导词两类,分别用TJ和JG表示。条件连接词以及手工获取的隐式条件词的分类比较直观,对于自动抽取的隐式条件词,根据抽取时与其共现的条件连接词进行分类。引导词周围的词只取词性,因为条件句与非条件句中引导词周围的词相差很大,只选取了引导词左右各一个词,如“你喜欢外观漂亮的手机的话,那么我推荐诺基亚N73”得到的序列为{w}{JG}{r}。
识别条件句时,采用朴素贝叶斯模型进行分类,
(1)
公式(1)中s表示一条句子,ci表示句子的类别,C表示句子s的类别,Aj表示句子中的一个特征,aj表示特征的取值。
公式(2)是公式(1)中P(Aj=aj|C=ci)的计算公式,其中nij是同时满足Aj=aj和C=cj的句子数,ni是类别为ci的句子数,mj是Aj可能取值的总数,λ是平滑因子,实验中取λ=1。
通过公式(1)分别算出一个句子是条件句和非条件句的概率,取概率大的作为该句子的类别。
4.2 条件句属性倾向性分析
条件句中出现多种属性时,由于句式比较复杂,分析起来比较困难,暂时只考虑单一属性的句子,把多种属性的分析作为下一步的工作。但是有两种情况也按照单一属性处理: 一种是手机型号或品牌与具体特征同时出现的时候,只考虑具体特征;另一种情况是句中出现两个属性,其中一个属性的倾向性在条件句中按中性处理,不加考虑,如“如果觉得诺基亚不好,那么建议你买三星”,只考虑三星,不考虑诺基亚,认为诺基亚的情感是中性。
Narayanan等人分析英文条件句倾向性时,采用了svm分类的方法,采用了普通句式中分析倾向性的特征,如否定词、情感词等,并根据时态把条件句分为四类,用于倾向性分类。然而时态特征在中文分析中不适用,根据汉语的特点,可以根据条件连接词以及隐式条件词把条件句分为假设条件句、让步条件句、特定条件句和无条件句四类,用于条件句倾向性分析。下面简单介绍一下除了条件句类别特征之外的其他特征,这些特征是属性倾向性分析中经常采用的特征。
(1) 情感词。实验采用大连理工大学信息检索研究室的情感词汇本体[12](以后简称为情感词汇本体)进行情感词的识别以及情感词倾向性的分析,另外,有些情感词的倾向性和手机属性相关联,主要根据手工建立的手机属性和情感词搭配表来解决这部分情感词的倾向性问题,如表5所示。
表5 属性和情感词搭配表示例
(2) 副词。副词总是和情感词紧密联系在一起的,虽然情感词汇本体中已经包含了一定数量的副词可以用来表达倾向性,还有一些副词,如“特别”、“简直”等会加重所修饰情感词的强度,本文也把这些副词作为特征的一部分。
(3) 否定词。在属性倾向性判别中,否定词是一类重要特征,否定词的出现会改变倾向性的极性,主要考虑情感词周围3个词之内的否定词。
(4) 手机属性的位置。手机属性的识别采用查表的方式,属性的位置特征是指属性是出现在条件从句中或者是结果从句中。这是Narayanan等人采用的一个特征。
条件句是根据条件连接词和隐式条件词进行分类的,所以这两类词也是重要特征,只是与类别特征产生重复,实验中在baseline特征集的基础上分别加入这两类特征,进行了比较。
5 实验
5.1 条件句识别实验
实验语料是来自IT168网站[13]的2 300条句子,其中1 112条是条件句,条件连接词或隐式条件词都是分类的关键词,简称为关键词,实验分为四个部分。
(1) 利用是否含有关键词来抽取条件句。
(2) 利用关键词的词性进行贝叶斯分类。
(3) 利用关键词抽取的类序列规则进行贝叶斯分类,类序列规则抽取的最小支持度设为5%。
(4) 利用关键词的词性以及类序列规则进行贝叶斯分类。
实验结果如图1所示。
图1 条件句识别实验结果
从图1中可以看到,在识别条件句时,利用关键词的词性进行分类以及利用关键词抽取的类序列规则进行分类,都比仅利用是否含有关键词来抽取条件句要得到更好的准确率,虽然召回率下降,但是F值却提高了,另外利用关键词抽取的类序列规则进行分类的结果要好于利用关键词的词性进行分类的结果,因为不同词性的关键词得到的类序列规则也不同,当同时考虑词性和类序列规则时,得到了最好的结果。
5.2 倾向性分析
实验语料是来自IT168网站的1 109条条件句评论,采用一定的规则进行抽取,再进行手工标注,实验语料全部是有关手机的评论,其中762条为显式条件句,347条为隐式条件句,条件句为显式或隐式,主要看该句是否含有条件连接词,同一类的显式或隐式条件句对属性倾向性的表达类似,隐式条件句如果加上合适的条件连接词,可以成为显式条件句,所以属性倾向性分类时不考虑条件句是显式或是隐式。
分词工具使用中国科学院的ICTCLAS,实验的设计主要是为验证把条件句分为四类对属性倾向性分析中的影响,因此把情感词、副词、否定词以及手机属性的位置四类特征作为Baseline特征集,在Baseline特征集的基础上分别考虑了条件连接词和隐式条件词、三类分法以及四类分法对属性倾向性分类的影响。实验中各类特征所占的比例如表6所示,实验采用6倍交叉验证,实验结果如表7所示。
表7 条件句倾向性判别结果
表7的结果显示,在Baseline特征集的基础上,加入四类分法,得到了最好的结果,说明按条件连接词和隐式条件词把条件句分为四类有助于属性倾向性分析。
条件句的三类分法是把假设条件句和让步条件句合为一类,如3.3节所述,假设条件句中条件从句和结果从句的情感通常一致,而让步条件句中条件从句和结果从句的情感通常不一致,把两类句子放在一类会影响倾向性的结果,所以加入三类分法的结果不如四类分法,也不如加入条件连接词和隐式条件词的结果。
条件句是根据条件连接词和隐式条件词分为四类的,而四类分法的结果好于条件连接词和隐式条件词的结果,是因为直接加入类别特征可以起到减少向量维数,降低向量稀疏的作用,所以效果更好。表8显示了600条评论的实验结果。
表8 600条评论的结果
表8是600条评论的实验结果,与表7的结果相比,都有下降,因为机器学习在语料规模较大时效果更好,但是加入条件连接词和隐式条件词的结果下降的更快,因为用条件连接词和隐式条件词做特征,相当于把条件句分成了更多种的类别,随着语料规模的下降,会影响机器学习的结果。
在实验过程中还有一些因素会对结果造成影响,下面详细介绍一下。
(1) 分词过程会有一定的偏差,从而导致对语料的分析以及特征的选取会出现一定的偏差,影响实验结果。
(2) 语料中有一些条件句不含有情感词,而是用口语化的表达方式来表达情感,例如,“如果电池短信一天超过500字,那么待机时间就在三天之内”,本句对待机时间持否定情感,但是句中不含有情感词,按照常识可以判断出表达的是消极含义,但是很难用情感词表、或一般的特征选择来解决,这类条件句的倾向性比较难判定,会影响实验结果。
6 结论
本文主要识别产品评论中的条件句并分析句中属性的倾向性。条件句中一般都含有条件连接词,隐式条件句不含有条件连接词,但是一般都含有体现条件关系的隐式条件词。识别条件句时,主要依据条件连接词和隐式条件词及其词性以及类序列规则进行分类;分析属性倾向性时,依据条件连接词和隐式条件词把条件句分为假设条件句、让步条件句、特定条件句和无条件句四类,并把条件句的类别用于SVM分类。通过实验证明了该方法有助于条件句倾向性分类。
分析产品评论的倾向性时,仍存在一定的不足。产品评论中有一些口语化的表达方式没有一定的语法可依,新出现的一些情感表达常识不能用往常的分词和情感词抽取方法来识别,对实验的结果会有一定的影响。
下一步的工作可以对多属性条件句倾向性分析,抽取产品评论中的条件关系,以及对产品评论中口语化情感表达方式进行研究。
[1] Ramanathan Narayanan, Bing Liu and Alok Choudhary. Sentiment Analysis of Conditional Sentences[C]//Proceedings of Conference on Empirical Methods in Natural Language Processing (EMNLP-09), Singapore,2009.
[2] Minqing Hu and Bing Liu. Mining and Summarizing Customer Reviews[C]//Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (KDD-2004), Seattle, Washington, USA, 2004.
[3] M. Popescu and O. Etzioni. Extracting Product Features and Opinions From Reviews[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP 2005). Vancouver, B.C., Canada,2006: 339-346.
[4] Bing Liu, Minqing Hu and Junsheng Cheng. Opinion Observer: Analyzing and Comparing Opinions on the Web[C]//Proceedings of the 14th international World Wide Web conference (WWW-2005), Chiba, Japan,2005.
[5] Murthy Ganapathibhotla and Bing Liu. Mining Opinions in Comparative Sentences[C]//Proceedings of the 22nd International Conference on Computational Linguistics (Coling-2008), Manchester, 2008.
[6] Rui Song, Hongfei Lin. Comparative Components Extraction-based Feature Opinion Summarization[J]. Journal of Information and Computational Science. 2009,6(2): 1077-1085.
[7] 宋锐, 林鸿飞, 常富洋. 中文比较句识别及比较关系抽取[J]. 中文信息学报, 2009, 23(2):102-107.
[8] HIT-IRLab-同义词词林(扩展版)[DB/OL],哈尔滨工业大学信息检索研究室: http://ir.hit.edu.cn/.
[9] 胡裕树. 现代汉语[M]. 上海: 上海教育出版社, 1981.
[10] Nitin Jindal and Bing Liu. Identifying Comparative Sentences in Text Documents[C]//Proceedings of the 29th Annual International ACM SIGIR Conference on Research & Development on Information Retrieval (SIGIR-06), Seattle,USA,2006.
[11] 中国科学院http://ictclas.org[CP/OL].
[12] 徐琳宏, 林鸿飞,潘宇,等. 情感词汇本体的构造[J]. 情报学报,2008, 27(2):180-185.
[13] IT168[EB/OL].http://pinglun.it168.com.