刘全升,姚天昉
(上海交通大学 计算机科学与工程系,上海 200240)
随着互联网的迅速发展和广泛普及,更多的人通过博客、BBS等网络媒介记录自己的心情,发表对各种事物的评论。这些带有倾向性观点的信息,不论对于普通的网络用户,还是对于产品生产商以及其他机构组织等都有很重要的价值。为了支持上述应用,我们需要更准确,更高效地分析与处理评论。在这一背景下,针对网络上网页内容获得有用观点并对其进行倾向性分析的观点检索技术应运而生,在市场预测分析,有害信息过滤,社会舆情分析,智能导购等诸多领域有着广阔的应用空间和发展前景。
观点检索,是指利用信息检索与情感分析等技术,寻找与主题相关且具有针对主题的观点评论等信息的文档,是主题检索与倾向性分析相结合的研究工作。Hurst等人[1]首次考虑了主题因素和倾向性因素,用于寻找与给定主题相关的倾向性信息,但只关注与主题相关的倾向性信息是否出现,而没有考虑其强度问题。Eguchi等人[2]在一个较小的文本集合上,提出了一个统计语言模型检索框架—生成式概率语言模型,并提出了一个倾向性强度的计算共识,将主题相关性与情感倾向性度量相结合,进行了情感信息检索 (Sentiment Retrieval)的尝试。Skomorowski[3]提出了一种新的基于查询主题的ad-hoc文本检索方法,根据文本对一个查询词条表达出观点内容的似然度,对每篇文本进行排序,检索出含有针对查询主题的主观性内容的文本。He等人[4]提出了一个精简而高效的以词典为基础的统计方法用于自动从博客集合中搜集主观性表达式,通过这些表达式进行意见型博客的检索可以达到很好的效果。本文提出了一种基于关联度的观点检索算法,综合考虑了观点检索过程中各因素之间的相互影响问题,并通过实验证明该方法具有较好的效果。
在观点检索中,最重要的是寻找主题相关的文本,观点检索的最后排序结果中,文本的主题关联度具有支配作用,主题检索过程中得到的文本主题相关度对观点检索的最后结果的影响比文本的倾向性强度要大得多。这可以从实验结果以及观点检索的直接目的看出[5]。因此观点检索的过程可以表述为: 在给定文档集合中寻找与给定主题相关并且包含有对主题评论的文本,通过计算文档集合C中每篇文档d与查询q、情感s三者的总关联度Score(q,s,d),得到各个文本的条件概率结果并排序,我们的算法如下:
1. 观点检索中重点在于主题检索,倾向性分析和二者的融合,整个检索过程可以看成是计算Score(q,s,d)值的过程。
2. 在观点检索中,主题检索具有最重要的地位,文本的主题相关度得分对观点检索最后结果的影响最大。因此,在观点检索过程中,需要突出主题检索的重要性,在主题检索与倾向性融合的过程中,分别对主题检索相关度和倾向性强度赋予不同的拟合系数,因此,Score(q,s,d)可以看成是如下等式:
Score(q,s,d)=Ffit(Score(q,d),Scoreq,s∈d(q,s))
=λScoreq∈d(q,d)
+(1-λ)Scoreq,s∈d(q,s)
(1)
3. 重点考虑主题检索过程中的查询扩展,对主题检索的相关性强度的计算需要分别考虑其给定的查询与查询扩展词实现的文本相关度。计算如下: 对查询扩展中不同的查询扩展词给予不同的权重,这一权重为扩展词与给定查询本身的关联度。因此,公式(1)可以写成:
其中,在公式(1)和(2)中,λ为拟合系数。
4. 计算文本中针对查询的倾向性强度,从两个方面进行考虑,分别是: 文档中包含词汇的情感程度,情感词与查询主题之间的关联度。将文档看成是一个词汇系列,则文档d中针对查询qi的倾向性强度Scoreqi,s∈d(qi,s)采用公式(3)进行衡量:
其中,qi是查询主题,Score_Sop(s,si)表示文档d中包含情感词si,以及副词、否定词等组成的情感单元的倾向性强度。Score_Srel(qi,si)表示情感单元与查询词之间的关联度。
将公式(3)代入公式(2)中,即得到总的观点检索的计算公式。该公式从理论上充分考虑了文本的主题检索相关度与倾向性强度在观点检索过程中的不同作用。同时,公式中充分考虑了查询扩展、扩展词以及查询词的关联度。此外,还考虑了情感检索过程中情感程度以及情感词与查询的关联程度。
2.2.1 查询主题与扩展主题关联度的计算
在查询扩展阶段,本文使用外部资源与伪相关反馈相结合的方法进行查询扩展,由q扩展成q1,q2,q3…qn,然后分别计算各个扩展词与原查询之间的关联度,选取扩展词以及计算关联度的算法如下:
1. 给定查询q,判断q的长度,若q为长查询,则需要对其进行分词,分词后的各个词作为I类候选扩展词qI。
2. 将q输入互动百科资源中,选择查询词条,从中抽取部分词汇作为候选扩展词汇。
3. 对查询q在给定文本集合中使用主题检索算法检索相关文本,选取返回结果中的前10篇文本,若步骤2中的候选扩展词没在这10篇文档中出现,则去除,不予考虑。
4. 对步骤2中剩下的候选词使用Google搜索引擎计算其与原查询词之间的偏序化关联度值[6],其计算方法见公式(5)。然后对结果进行排序,选取关联度值最高的5个词作为II类候选扩展词qII。
5. 返回I类和II类的扩展词作为查询q的候选扩展词,并返回作为最后的扩展词。
计算上述扩展词qi与原查询q的关联度Score_Qrel(q,qi)的算法如下所示:
1. Ifqi=qthenScore_Qrel(q,qi)=1 返回结果。
(4)
3. ∀qi∈qII,计算每个qi的关联度,我们使用偏序化权重衡量,使用商业搜索引擎Google检索(qi,q)以及qi返回的文档量count(qi,q)以及count(qi)来衡量二者的相关度。
(5)
4. 计算完毕,返回所有查询扩展词与给定查询q的关联度Score_Qrel(q,qi)。
2.2.2 每个查询词与文本关联度的计算
本文使用概率检索模型和语言模型用于衡量查询词与文本之间的相似程度。目前最具有代表性的概率检索相似度计算公式有概率检索模型的Okapi BM25公式和语言模型的狄利克雷先验平滑公式,上述公式计算Scoreqi∈d(qi,d)如下:
其中,w为词,qi为查询,|qi|为查询词的个数,d为文档,|d| 为文档词数,C为文档集合,avdl是平均文档集合中每个文档的词数,N为文档集合的文档数。C(w,d)为词w在文档d中的词频,c(w,qi)为词w在查询qi中的词频,df(w)为出现过词w的文档数,p(w|C)为词w在文档集合C中出现的概率。其他几个为调节参数,根据文本长度,词汇等特征调节以得到最佳的检索结果。一般情况下,k1取值为1.0到2.0左右,b的取值通常都为0.75,k3取值一般为0到1 000,μ的取值一般为2 000左右。
2.2.3 文本中查询词倾向性强度的计算
在本文中,将文本中倾向性强度计算的最小单位定义为情感单元,一个情感单元包括情感词,也可能包括否定词和程度副词等。它的倾向性计算算法如下:
1. 使用HowNet情感词词典[7],识别情感词以及情感词的极性、权重等信息。
2. 使用否定词词典,副词词典[8]识别是否有上述修饰词。
3. 对不同情况下的修饰词分别进行情感词极性的调整,分别对修饰词为副词、否定词以及二者均出现等三种情况讨论。其中,否定词改变极性,程度副词分为三种不同的情况改变倾向性强度。将最后的结果返回为Score_Sop(s,si)。
计算每个情感单元与查询词的关联度Score_Srel(qi,si)时,将其作为一个评价对来获取,使用二者在一个窗口下共现的方法来衡量二者的关联度。为提高识别评价对的准确率,本文使用的窗口设为一个句子S,则
(8)
其中Cooc(qi,si|Sentence)表示情感单元与查询词在句子中的共现频度[9],只有当二者出现在一个句子内时,才将该值设为1,其余情况均为0。Cw表示在文档集C中使用查询扩展的方法检索q时返回的相关文档集。
本文实现了基于关联度的观点检索算法,在接下来的实验中,将验证基于关联度的观点检索算法的效果。为便于比较,本文选取了目前观点检索领域常用的两种算法作为参照。基于线性拟合模型的观点检索算法和基于生成模型的观点检索算法,上述两种算法的计算公式如下:
(10)
其中,λ为平滑系数,Scoreq∈d(q,d)为文本的主题相关度,co(si,q|W)表示在窗口W内,查询q与情感词的共现次数,而c(q,d)表示文档中查询词的词频。
为了测试不同文本检索公式在基于关联度模型的观点检索算法下的性能以及与其他相关观点检索方法的比较,我们采用了第一届中文文本倾向性分析评测(COAE2008)[10]观点检索子任务中提供的数据集进行实验,该数据集包含近4万篇文本,其中,包含不少于10%的主观文本,其余为客观文本。文本主题包括真实用户评论和新闻报道评论等,涉及财经、娱乐、影视、教育、房产、电脑、手机等领域,文章长度从几个句子到上百个句子不等。文本由网页提取正文后整理成纯文本形式,由于原始网页来源较为多样,评测集混合了两种编码,即GB2312和少量Unicode(UTF-8)编码。采用COAE2008观点检索子任务的20个查询主题作为测试查询。实验采用COAE2008的评测指标进行评价,具体包括观点检索的平均准确率(MAP),R准确率(R-prec),二元偏好(bPref)和P@10。[11]其中MAP为每个相关文档被检索到时的精确率的平均值, 对于提交结果的排序有较高要求,因此最终评测结果中以MAP为比较基准。
在实验中,我们首先测试了不同的文本检索算法下基于关联度模型的观点检索算法的性能,实验比较了概率检索模型的BM25公式和语言模型的狄利克雷公式随线性拟合系数λ的变化而结果表现的变化,具体实验结果如图1所示。
从图1可以看出,使用语言模型的狄利克雷平滑公式效果比BM25公式要好,不过二者的MAP指标结果差距不大,随着λ的增大,两个公式的检索结果都呈现先上升后下降的趋势,在λ=0时,检索结果为倾向型分析的结果;在λ=1时,检索结果为主题相关度的结果,但这两个结果都不是最好的结果。因为观点检索需要找到的是两个结果的融合效果,随着λ的增大,关联度模型中文本情感程度值的影响越小,主题检索的影响越大,而我们需要寻找的就是针对给定主题的评论。在λ=0.8~0.9区间时,可以取得最好的检索结果。
图1 不同文本检索公式下关联度算法的检索效果
接下来,我们使用了不同的方法进行观点检索的研究:
1. 基于线性拟合模型的观点检索: 使用语言模型的狄利克雷平滑公式计算文本的主题相关度,使用HowNet情感词词典进行倾向性分析与计算,线性拟合系数λ取值为0.9。
2. 基于生成模型的观点检索: 使用对数生成模型进行观点检索,使用HowNet情感词词典进行倾向性分析与计算,使用最大的窗口(W设为整个文本)进行分析,平滑系数λ取值为0.7。
3. 基于关联度的观点检索: 使用狄利克雷平滑公式计算主题相关度,使用HowNet情感词词典进行倾向性分析与计算。线性拟合系数λ取值为0.85。
上述三种方法所得的结果如表1所示。
表1 不同观点检索方法得到的结果比较
MAP指标是衡量相关性检索性能的最重要的评价指标。从表1可以看出,本文提出的基于关联度的观点检索算法在上述三个方法中可以得到最好的检索效果。但与COAE2008观点检索子任务的相关评测结果相比,本文使用的方法其最好结果还未达到COAE2008中的最好结果[10],这说明本文的方法还有较大的改进空间。
本文提出了基于关联度的观点检索算法并应用于中文文本观点检索的研究中。针对目前观点检索研究中检索主题与评论的关联问题进行了分析,使用查询扩展与查询的关联度,使得各个要素之间的关联度得以最准确地反映检索主题的评论信息。实验结果表明,本文提出的算法可以有效地解决主题与情感关系的衡量问题,基于该算法的实验结果比其他两种观点检索方法具有明显的优势。
但从实验结果可以看到,本文所得的最好结果与COAE2008观点检索子任务的最好结果还具有一定的差距:
1. 主题查询过程中,主题的查询扩展问题值得进一步探讨,进行查询扩展后需要充分考虑查询词与原查询词之间的关系,查询词与文本,情感等的关系问题。随着给定查询越来越复杂,这一问题将面临更大的挑战。
2. 观点检索过程中,如何找准针对主题的观点,这一问题是观点检索的核心问题。如何提高主题检索的性能,改善文本中针对主题的观点倾向性分析效果以及二者的融合问题都有待于进一步研究。
3. 可以对文本进行更好的预处理,如分词,缩略词,消歧等处理。
[1] M. Hurst and K. Nigam. Retrieving Topical Sentiments from Online Document Collections [C]//Document Recognition and Retrieval XI, 2004, 27-34.
[2] K. Eguchi and V. Lavrenko. Sentiment Retrieval using Generative Models [C]//Proceedings of Empirical Methods on Natural Language Processing (EMNLP), 2006: 345-354.
[3] J. Skomorowski. Topical opinion retrieval. [D]. University of Waterloo, 2006.
[4] B. He, C. Macdonald, JY. He et al. An Effective Statistical Approach to Blog Post Opinion Retrieval[C]//the ACM Conference on Information and Knowledge Management (CIKM). California, USA: 2008: 1063-1072.
[5] I. Ounis, C. Macdonald and I. Soboroff. Overview of the TREC2008 Blog Track [C]//Proceedings of the Seventeenth Text REtrieval Conference (TREC 2008). 2008.
[6] 张姝, 贾文杰, 夏迎炬,等. 观点检索技术研究[C]//第二届中文倾向性分析评测研讨会.CCIR2009.
[7] 董振东,董强. HowNet[DB/OL]: http://www.keenage.com, 2010.
[8] 徐琳宏,林鸿飞,杨志豪. 基于语义理解的文本倾向性识别机制[J]. 中文信息学报, 2007, 21(1): 96-100.
[9] X. Sun, Y. Lin, H. Lin et al. DUTIR at TREC 2008 Relevance Feedback Track[C]//Proceedings of the Seventeenth Text REtrieval Conference (TREC 2008). 2008.
[10] 黄萱菁,许洪波,赵军,等. COAE2008[DB/OL]: http://www.ir-china.org.cn/coae2008.html, 2008.
[11] 曹冬林, 林达真. 文本检索模型综述[J]. 心智与计算, 2007, 4(1): 426-432.