- 1 -
中文主观性特征识别与主观评论检索1
任然,张铭
(北京大学信息科学技术学院,北京 100871)
摘 要:本文对中文领域内的主观性/客观性文本进行判别,目前该领域相关研究较少。利
用其在广泛的网络数据中挖掘出与某特定产品相关的主观性信息(评论等),满足用户对于
主观性信息的需求。首先从网络中通过适当的方法获取初始的主客观数据集,利用此数据集
获取具有主观标志性的词语、子句,然后根据此信息来实现对文本主客观性的判定。最后利
用辨别算法,针对某一事物,对搜索引擎返回的相关结果进行筛选和过滤,返回其中的主观
性评论内容。本文选取了电子产品领域进行试验,获得了较为满意的结果。
关键词: 主观性判定,评论检索,文本分类
Subjective Feature Detection and Review Search for Chinese
Text
Ren Ran, Zhang Ming
(School of Electronics Engineering and Computer Science, Peking University, Beijing 100871)
Abstract: This paper proposes an approach to identify subjective sentences in Chinese, which has
rarely been studied. We try to collect all the subjective information that is relevant to the target
object, so as to meet the web users’ need for such information. First, we obtain the initial dataset
of subjective and objective texts from the web in a proper way. Then, from such data, we analyze
sequences of words that are good indicators for subjectivity. With the help of such information,
we filter the results returned by the search engine about a certain product. We keep the ones that
are determined subjective as the result for our review search. Finally, we do experiment on the
electronic product domain, to be more specific, the cell phone domain, and have got satisfying
results.
Keywords: Subjectivity Detection, Review Search, Text Classification
1. 引 言
随着博客、论坛、各种专业的评论网站的迅速发展,在网上发表个人看法变得越来越便
捷。人们也越来越愿意在网上发表自己的各种观点,以及获知他人的观点、看法。对这些包
含有用户观点的主观性信息资源进行挖掘,既可以更好地满足用户需求,也具有巨大的商业
价值。很多企业都试图及时获取用户对其产品和服务的看法与评价,以便根据这些反馈进行
改进。而且潜在消费者在购买一种商品或服务之前,也总是将其他消费者对该产品的评价以
及感受作为参考。2004 及 2007 年对超过两千名美国成年人进行的调查结果显示[1][2]:
81%的互联网用户曾对某一产品在网上进行过调研;20%的人们几乎每天都要进行类似的
调查、检索;在网上各类评论(餐厅、酒店、旅行社等等)的读者中,73% - 87%的人
1本项目受以下基金的支持: 教育部科技发展中心网络时代的科技论文快速共享专项研究资助课题
(“FSSP”,编号 2008101),863 基金 2009AA01Z143 和 2009AA01Z136。
作者简介: 任然(1988-),女,本科生,主要研究方向是数据挖掘、自然语言处理。
通讯作者,张铭(1966-),女,山西交城人,博士,教授,博士生导师,CCF 高级会员,主
要研究领域为数据库、数据挖掘、数字图书馆、语义网。
中国科技论文在线
- 2 -
表示这些评论对他们的消费行为产生了重要的影响。
可以看出,用户十分渴望从网上获得各种建议以及推荐。但该报告也指出,虽然大多数
的人对产品网上评论的获取给予了正面的评价,但有 58%的被调查者也反映网上相关信息缺
失、混乱、难于寻找。这个现象是十分可以理解的:互联网上的信息可以分为两类,一类是
描述了对于某一事物的个人看法、评价、感受的主观性内容(观点),另一类则是客观性内
容(事实)。而目前的搜索引擎较倾向于客观性信息,主要原因是排名结果更有利于客观性
信息。因此,如何更好地帮助用户获取与某对象相关的评论、感受、看法等主观性信息是一
个亟需解决的问题。这也正是本篇文章主要研究的问题。
本文在第二部分对于整体系统设计、应用到的算法以及相关背景知识进行了阐述。第三
部分中介绍了系统试验的数据、结果以及对结果的分析。最后,在第四部分中包含了对文章
的总结以及对未来工作的展望。
2. 系统设计
系统设计概述
图 1 主观信息识别系统框架
如图 1 所示,整个设计的流程为:首先从众多网页数据中选取适当的方法获得初始的主
/客观数据集;然后在此数据集的基础上构建后缀树,挖掘出其中的频繁子序列集(主客观
特征表达);利用得到的主客观特征表达集合,构建主客观分类器,并对其效果进行检验;
最后则是对搜索引擎关于某一对象检索得到的结果进行主客观判定,筛选过滤出其中的主观
评论信息,将其作为评论检索的结果返回给用户。
下面将针对每一部分的设计细节及其涉及到的原理进行阐述。
数据集的获取
关于主客观分类的数据集的获取主要有以下几个方式:(1)人工标注,所需要的工作
量较大。当然也可将他人早前进行人工标注得到的数据集拿来使用,同时可对结果进行比较。
英语资源相对较多,如TREC 2006 Blog Track测试集等,但中文的此类资源目前比较缺乏。
(2)利用网络已有资源。现在网上有了许多大型的评论网站,可以对其加以利用。例如选
取电影评论与电影情节介绍作为主客观对比的数据集。(3)Bootstrapping方法。利用少量
中国科技论文在线
- 3 -
种子主观性特征,由此特征集开始学习抽取模式,再由学习到的模式发现新的主观性特征,
进一步由新的主观性特征学习新的抽取模式,如此循环迭代[3]。此种方法在准确性上会有所
损失,但在某些很难获得初始数据集的领域具有重要的价值。
本文采用专业手机网站上的用户评论作为主观文本数据,手机相关的新闻内容作为客观
文本数据,并对数据进行了广告清理以及中文分词等预处理工作。
挖掘主观特征表达
通过主观与客观文本集合中频繁出现的词语序列集合,发掘出主观与客观文本各自的特
征表达,也即具有主客观表征性的单词、短语、子句。例如,“我认为”这个表达就可以被
认为是具有强烈主观表征性的。需要注意的是,譬如“后悔死了”这样的表达,标志着原文
本的主观性,但把这个短语分开来看,“后悔”或是“死”、“了”都没有这样的主观标识
性。因此有理由相信,通过挖掘主客观特征表达来进行主客观分类所取得的结果,要优于只
挖掘主客观特征词所取得的结果。
下面给出频繁子序列的正规定义。
频繁子序列
假设Σ是一个有穷字母表,其每一个元素 c 称为一个字符,T=t1t2…tn是Σ中字符连接
而成的一个长度为 n 的文本,T[i]表示 T 的第 i 个字符,T[i…j]表示 T 的第 i 个字符到第 j
个字符构成的字符串,C=T1$T2$...Tm$是由 m 个文本构成的文本语料,$是一个特殊的字符,
标志文本的结束。对于字符串 R=c1c2…cr,R 不包含结束字符$,如果至少存在两个位置 pi、
pj,使得 C[ pi … pi+r−1] = C[ pj … pj+r−1] = R,则 R 称为语料 C 的一个重复序列。对于事先设定
的阈值λ,如果 R 的出现频次大于λ,则 R 称为语料 C 的频繁子序列[4]。
已有不少发现频繁子序列的解决方案,如基于产生式文法的Sequitur算法[5],N元递增分
步算法[4]等,其中最常用的是基于后缀索引的方法。后缀索引是一种全文索引机制,后缀树
(Suffix Tree)和后缀数组(Suffix Array)是两种最常见的后缀索引结构。本文中采用后缀
树数据结构。
后缀树
后缀树是一种可以有效地支持字符串匹配和查询的数据结构。后缀树构建后,不仅使字
符串更加紧凑,还可以高效地实现如子串查找、最长重复子串、最长公共子串、回文子串等
众多功能。令 T=t1t2…tn是一个文本,Si(T) = T[i … n]表示 T 的从第 i 个字符开始的后缀。因
此对于 T=t1t2…tn,T 共有 n 个非空后缀,分别为 S1, S2, …, Sn。文本 T=t1t2…tn 的所有后缀
图 2 中文后缀树
中国科技论文在线
- 4 -
S1, S2, …, Sn所组成的精简 Trie 树称为 T 的后缀树。语料 C=T1$T2$...Tm$的所有文本的全部
后缀组成的精简 Trie 树称为语料 C 的通用后缀树。
对于中文文本,可将分词后的每个字/词视为字符,构建后缀树。例如句子:“我 相信
我 朋友 $”,其相应的后缀树如图2所示。
利用后缀树结构来进行频繁子序列发掘,可直接在后缀树的各个结点上增加一个计数
器,用以统计每一个后缀出现的频次。如果某个结点上的计数值大于所设定的阈值,那么从
根结点到该结点路径上所有字符构成的字符串便是原语料的一个频繁子序列。
文本分类
在获得了主客观文本的频繁子序列之后,可利用其作为特征向量构建向量空间,将各段
文本表示为该空间中的向量,然后利用得到的数据集构建文本分类器。
特征向量的选取
最朴素的一个想法便是采用主客观特征表达的并集作为特征向量集。但根据以下理论:
在一个客观性事实句子中添加表示评价或感受的主观性词语后,原客观句子便会变为主观
的。而在一个主观评论句子中添加若干客观性的短语,并不能改变其的主观性[6]。也就是说,
真正对句子主客观性造成影响的是那些具有主观指示性的短语。
像“我认为”这样在主观评论中频繁出现而带有强烈主观性指示作用的短语,往不会
在客观性内容中出现。而有一些内容、属性等,例如在谈论到手机时都会提到的“电池”、
“电话”等等,它们在相关的客观性内容也常出现。
据此,本文采用主观评论所得到的频繁序列与客观文章得到的频繁序列的差集作为特征
向量集,在主观数据中挖掘出的频繁序列集中去掉那些在各类文章中均常出现的短语,只剩
下仅在主观性文章中常出现的、对文章主观性有较好指示作用的短语,可在不降低效果的同
时降低算法复杂度。
分类粒度的选择
在文章层次上,可以将各个文章划分为主观性的(如社论、书评等)和客观性的(如新
闻等)。但实际上,绝大多数文章均为主观句子和客观句子的混合体[6]。主观性文章中往往
涵盖一些对客观事实的陈述。而有些客观性文章中也用到了部分主观性内容。因此有理由认
为,对文章的分类改为采取句子层次的分类,然后根据一篇或一段文章中主客观性句子的数
目分布,来确定其主客观性,比起文章或段落层次的分析,效果更好。
由于没有句子层次标注的数据集,在这里无法直接利用分类算法构建分类器而进行分
类。本文采取一种不同的方法,简单但合理有效:统计句子中各特征表达出现的次数,若总
计多于两次,则将该句判定为主观性句子,否则为客观性的。而若一篇/段文章中主观性句
子的比例大于 30%则将其判定为主观性文档。
分类工具及算法
对于此次实验中将用到的机器学习算法,使用了软件工具 Weka。Weka(Waikato
Environment for Knowledge Analysis)是一款非商业化的机器学习以及数据挖掘开源软件。
它 支 持 多 种 分 类 算 法 : 贝 叶 斯 、 决 策 树 、 关 联 规 则 、 回 归 分 析 等
(
本文中采用的朴素贝叶斯(Naïve Bayesian)是一种的经典的基于概率统计分类模型。其
中国科技论文在线
- 5 -
数学基础是贝叶斯定理,主要思想就是计算在给定一待分类文档的条件下,该文档属于各个
类别的条件概率,然后选择条件概率最高的那个类别为该文档所属的类别。朴素贝叶斯分类
器基于一个类条件独立性假设(朴素假设) ,即假设一个文档中任何两个特征词之间的出现
与否是相互独立的。
其训练过程是计算特征词属于每个类别 jC 的概率 ( / )i jP w C ,
其中 表示特征词 iw 出现在类 jC 中的个数,m 表示特征词表中的总
单词数,而 表示 jC 类文档中出现的所有特征词的总次数。
在测试时,计算测试文本 d 属于类 jC 的概率 ( / )iP C d ,将其分到概率最大的类别中。
其中 ( )iP C 为类 jC 的先验概率。
评论检索
借助主观性判定算法,从众多网络数据中挖掘出更多的与某特定产品相关的主观性信息
(评论等),挖掘出来的内容可能属于某个人的博客,或者论坛的某个帖子等等。总之,可
以使用户拥有的信息不再局限于专业评论网站平台上的评论内容。
对于某一特定关键词在通用搜索引擎中检索得到的结果,抽取出其中的网页主要内容
部分,进行主观性判定,最后将判别为主观性的结果作为评论搜索得到的结果进行返回。
3. 实验结果与分析
数据集
此次试验中的数据主要来自于,这是一个综合性的电子产品咨询、评
测、评论、报价平台。该网站内针对各个型号的手机,均含有综合介绍、报价、参数、图片、
评论、评测/行情等八个子部分。
将其中评论部分的内容作为此次主要的主观性数据。而对于客观性内容,此次选择了
该网站手机文章中心下的三个子单元(新闻、行情、新品)中的内容。
经过网页爬取,主观内容部分共获取了数百个手机型号的约一千页网页数据。利用网
页解析,获得各条评论内容。各型号的手机评论数目从个位数到近千条不等,其分布基本呈
负幂函数分布。平均每个型号的手机拥有 15 条评论,获取的评论总数为 12248 条。而客观
内容部分,共得到了与新闻、行情、新品相关约一万篇客观性文本。由于一份用户评论往往
要远短于一篇客观性文章,为了保证主客观数据的平衡,缩减客观文章的数目到约两千篇,
共 6420 个段落。主观客观数据的字节数均为 1182KB。
然后对数据进行整理。进行了广告过滤后,评论总数目减少了约四百条。虽然总数目不
是很庞大,但是由于其重复度高,如若不谨慎处理,很有可能会对主观特征表达提取造成比
较大的影响。
1
( , ) 1
( / )
( , )
k j
k j
i kd C
i j m
s ks d C
N w d
P w C
m N w d
∈
= ∈
+
= +
∑
∑ ∑
( , ) 1
k j
i kd C
N w d∈ +∑
1
( , )
k j
m
s ks d C
N w d= ∈∑ ∑
1
( / ) arg max ( ) ( / )
m
i i j i
j
P C d P C P w C
=
= ∏
中国科技论文在线
- 6 -
主客观特征表达
对主观内容及客观内容分别进行处理,利用 ICTCLAS 工具进行分词,然后建立后缀树。
对频繁子序列进行提取时,阈值的选择需要综合考虑数据集大小、后续过程中的计算复杂度
等因素,在此将阈值设为 20。在主观、客观部分分别得到了 3172、2989 条频繁子序列。其
部分内容如表 1 和表 2 所示:
可以看到,在得到的主观文本的频繁序列中,包含了诸如“啊”、“呢”、“呀”、
“吧”等语气词,“呵呵”、“哎”等叹词,“我”,以及一些语气不很正式的表述短句如
“还不错”、“好垃圾”、“千万别买”、“上当了”等。这些都是十分典型的用户评论用
词,并且不在客观性文章中出现,可以作为很好的主观性文本的指示词。同时,在获得的主
观频繁序列集中,也有着许多诸如“电话”、“电池”、“迪信通”的这种在谈论手机时都
会提到的属性、名词。在一个句子中它的出现并不指示着主观性。这样的短语不止局限于名
词,还包括着如“目前”、“一个月”、“可以考虑”等常用的表述短语。
而在对客观文本挖掘得到的频繁序列集中,大多是与手机相关的特征名词,如“功能”、
“摄像头”、“电话”等等。注意到“电话”同时出现在在两个频繁模式集合中。另外还有
的则是通用且常见的表述词,如“此外”等。而明显指示着文本客观性的短语则较少。
评测标准
首先在对结果进行检验时,Weka 本身提供的:
Percentage of Correctly Classified Instances (Accuracy) = 分类正确的实例数全部实例数
可以作为检验分类器二值分类效果的衡量标准。
而另外由于本文的最终目标是从全部文本中抽取出主观性文本返回给用户,因此,利用
针对主观类别的查准率(Precision)和查全率(Recall)可更好地评价系统的效果。其中:
主观频繁子序列 出现频次
啊 2020
我 274
呵呵 87
还不错 86
好垃圾 31
千万别买 26
电话 147
电池 147
目前 122
一个月 84
客观频繁子序列 出现频次
功能 863
摄像头 260
电话 130
覆盖 104
市场份额 53
诺基亚 312
最精彩的数码产品资讯 133
推出了一款 31
此外 134
手机资讯 79
表 1 主观的频繁子序列示例 表 2 客观的频繁子序列示例
中国科技论文在线
- 7 -
= 判断正确的主观文档数查准率 判断得到的主观文档数
= 判断正确的主观文档数查全率 实际的全部主观文档数
实验采用 10 层交叉验证(10-fold cross validation)。将数据集分割成 10 个子样本,1
个单独的子样本被保留作为验证模型的数据,其他 9 个样本用来训练。交叉验证重复 10 次,
每个子样本验证一次,平均 10 次的结果得到一个单一估测。
实验评测
原数据集检验
分别测试了在以下三种处理条件下得到的结果:
(1)选取两个频繁序列集并集,共 4986 个元素,作为特征向量集合。
(2)采用差集运算,得到了精简特征表达集,有 1997 个元素,作为特征向量集合。
(3)将对文章的分类改为采用句子层次的分析。
评测性能对比见图 3。
段落/全特征 段落/简特征 句子/简特征 段落/全特征 段落/简特征 句子/简特征
(a) 精确度、查准率、查全率试验结果 (b) 测试用时
得到的内容准确率在 74% - 80%,查准率在 79% - 81%,查全率在 83% - 89%。
可以看到,采用全部频繁子序列集与采用精简的子序列集所得到的查全率与查准率并没
有太大的差别,而在没有影响分类效果的同时,检验时间得到了大幅度的降低,效率得到了
提高。
而通过改为句子层次的分析,查准率较小幅度提高,而查全率有了一定程度的提升。
实际数据检验
本文选取了十个最热门的手机型号作为关键词,在百度百度() ——最好
的中文搜索引擎之一——进行主观信息检索。
分别选取前 30 条返回结果(根据搜索引擎营销公司 iPropect 的研究发现,超过 80%的
使用者使用搜索引擎时,不会看第三页以下的搜索结果[7]),对其网页内容的主客观性进行
人工评判。同时,提取出这 30 个网页的主体内容,利用之前训练得到的分类算法,对其进
图 3 评测性能比较
中国科技论文在线
- 8 -
行主客观分类。得到结果,与人工评判结果相比对,对结果进行评测。
表 1 评测结果
查准率 查全率
诺基亚 5800
诺基亚 N85
夏普 9020C
诺基亚 N81
魅族 M8
苹果 iPhone
夏普 6010C
索爱 W908
诺基亚 N82
索爱 W595
平均
下面摘录其针对关键词“夏普 9020C”筛选得到的部分评论搜索结果:
4. 结论
本文通过从网络数据中获取的主客观文本数据集,对主客观特征表达进行挖掘,并利用
主客观特征表达构建分类器,实现对主观性、客观性文本的判别;进而利用此分类模型从网
络数据中挖掘出与某特定产品相关的主观性信息(评论等),满足用户对于主观性信息的需
中国科技论文在线
- 9 -
求。在手机产品信息领域的数据集上对该算法进行了检验,得到了较为满意的结果。
可以从以下几个方向开展进一步的研究:
(1)利用自扩展的学习方法,获得训练数据集,将这一方法应用在更多其他的,尤其
是难于获得大规模初始数据集的领域上。
(2)利用句子的语法结构等信息,对更深层次的主观特征性表达进行挖掘。
参考文献
[1] comScore/the Kelsey group. Online consumer-generated reviews have significant impact on
offline purchase behavior [EB/OL].
November 2007.
[2] J. A. Horrigan. Online shopping [R]. Pew Internet & American Life Project Report, 2008.
[3] E. Riloff, J. Wiebe, and T. Wilson. Learning subjective nouns using extraction pattern
bootstrapping [J]. Proceedings of CoNLL-03, 7th Conference on Natural Language Learning,
2003: 25-32.
[4] 龚才春,贺敏,张华平,等。大规模语料的频繁模式快速发现算法[Z]。全国网络与信
息安全技术研讨会,2007。
[5] C. G. Nevill-Manning, I. H. Witten. Identifying Hierarchical Structure in Sequences: A
linear-time algorithm [J]. Journal of Artificial Intelligence Research, 1997, Vol. 7: 67-82.
[6] E. Riloff, J. Wiebe. Learning Extraction Patterns for Subjective Expressions [J]. Proceedings
of the Conference on Empirical Methods in Natural Language Processing (EMNLP), 2003.
[7] A. Watlington, F. Marckini. The iProspect Search Engine Branding Survey [EB/OL].
May 2002.
[8] B. Pang and L. Lee. Opinion Mining and Sentiment Analysis [J]. Foundations and Trends in
Information Retrieval, 2008, Vol. 2, No 1–2: 1-135.
[9] J. Wiebe, T. Wilson, R. Bruce, et al. Learning subjective language [J]. Computational
Linguistics, 2004, vol. 30: 277–308.
中国科技论文在线