1、1,UNIT two信息检索的评价(IR evaluation),授课人:宋伟sw_,2,课前思考几个问题,为什么要评价?评价什么?如何评价?怎么基于实验结果,给出各项评价指标?,3,信息检索的评价基本指标:召回率、正确率其他指标:F值、AP、MAPTREC会议概况,内容提纲,4,信息检索的评价,为什么要评价IRIR中要评价什么?如何评价效果评价指标分类单个查询的评价指标多个查询的评价指标,5,从竞技体育说起,(曾经的一说)世界记录vs. 世界最好成绩110米栏世界记录:罗伯斯,古巴,12”87男子马拉松世界最好成绩:保罗特尔加特,肯尼亚,2小时4分55秒评价要公平!环境要基本一致:天气、风速
2、、跑道等等比赛过程要一样:竞走中的犯规指标要一样:速度、耐力,6,为什么要评估IR?,通过评估可以评价不同技术的优劣,不同因素对系统的影响,从而促进本领域研究水平的不断提高类比:110米栏各项技术-起跑、途中跑、跨栏、步频、冲刺等等信息检索系统的目标是较少消耗情况下尽快、全面返回准确的结果。,7,IR中评价什么?,效率(Efficiency)可以采用通常的评价方法时间开销空间开销响应速度效果(Effectiveness)返回的文档中有多少相关文档所有相关文档中返回了多少返回得靠不靠前其他指标覆盖率(Coverage)访问量数据更新速度,8,如何评价效果?,相同的文档集合,相同的查询主题集合,相
3、同的评价指标,不同的检索系统进行比较。The Cranfield Experiments, Cyril W. Cleverdon, 1957 1968 (上百篇文档集合)SMART System,Gerald Salton, 1964-1988 (数千篇文档集合)TREC(Text Retrieval Conference), Donna Harman, 美国标准技术研究所, 1992 -(上百万篇文档),信息检索的“奥运会”,9,评价指标分类,对单个查询进行评估的指标对单个查询得到一个结果对多个查询进行评估的指标(通常用于对系统的评价)求平均,10,单个查询的评价指标(1),未检索出(Not
4、 Retrieved),RN,NR,NN,检索出(Retrieved),相关的(Relevant),不相关的(Not Relevant),RR,检索出的不相关文档,未检索出的相关文档,未检索出的不相关文档,检索出的相关文档,11,单个查询的评价指标(1)(四种关系的矩阵表示),真正相关的文档(RR+NR),真正不相关的文档(RN+NN),系统判定相关的文档(RR+RN),系统判定不相关的文档(RR+RN),Recall,Precision,12,单个查询的评价指标(1),召回率(Recall): RR/(RR + NR),返回的相关结果数占实际相关结果总数的比率,也称为查全率,R0,1 正确率
5、(Precision): RR/(RR + RN),返回的结果中真正相关结果的比率,也称为查准率,P0,1 两个指标分别度量检索效果的某个方面,忽略任何一个方面都有失偏颇。两个极端情况:返回1篇,P=100%,但R极低;全部返回,R1,但P极低,相关文档(标准答案),应答文档(返回答案),13,召回率和正确率的一个计算例子,一个例子:查询Q,本应该有100篇相关文档,某个系统返回200篇文档,其中80篇是真正相关的文档Recall=80/100=0.8Precision=80/200=0.4结论:召回率较高,但是正确率较低,14,关于召回率和正确率的讨论(1),“宁可错杀一千,不可放过一人”偏
6、重召回率,忽视正确率。冤杀太多。判断是否有罪:如果没有证据证明你无罪,那么判定你有罪。召回率高,有些人受冤枉如果没有证据证明你有罪,那么判定你无罪。召回率低,有些人逍遥法外,15,关于召回率和正确率的讨论(2),虽然Precision和Recall都很重要,但是不同的应用、不用的用户可能会对两者的要求不一样。因此,实际应用中应该考虑这点。垃圾邮件过滤:宁愿漏掉一些垃圾邮件,但是尽量少将正常邮件判定成垃圾邮件。有些用户希望返回的结果全一点,他有时间挑选;有些用户希望返回结果准一点,他不需要结果很全就能完成任务。,16,关于召回率的计算,对于大规模语料集合,列举每个查询的所有相关文档是不可能的事情
7、,因此,不可能准确地计算召回率缓冲池(Pooling)方法:对多个检索系统的Top N个结果组成的集合进行标注,标注出的相关文档集合作为整个相关文档集合。这种做法被验证是可行的,在TREC会议中被广泛采用。,17,召回率和正确率的问题,两个指标分别衡量了系统的某个方面,但是为比较带来了难度,究竟哪个系统好?大学最终排名也只有一个指标。解决方法:单一指标,将两个指标融成一个指标两个指标都是基于集合进行计算,并没有考虑序的作用举例:两个系统,对某个查询,返回的相关文档数目一样都是10,但是第一个系统是前10条结果,后一个系统是最后10条结果。显然,第一个系统优。但是根据上面基于集合的计算,显然两者
8、指标一样。解决方法:引入序的作用召回率难以计算解决方法:Pooling方法,或者不考虑召回率,18,单个查询评价指标(3)P和R融合,F值:召回率R和正确率P的调和平均值,if P=0 or R=0, then F=0, else 采用下式计算:E值:召回率R和正确率P的加权平均值,b1表示更重视P,19,单个查询评价指标(4) 引入序的作用,R-Precision:检索结果中,在所有相关文档总数位置上的准确率,如某个查询的相关文档总数为80,则计算检索结果中在前80篇文档的正确率。,20,单个查询评价指标(5) 引入序的作用,正确率-召回率曲线(precision versus recall
9、 curve)检索结果以排序方式排列,用户不可能马上看到全部文档,因此,在用户观察的过程中,正确率和召回率在不断变化(vary)。可以求出在召回率分别为0%,10%,20%,30%, 90%,100%上对应的正确率,然后描出图像,21,P-R曲线的例子,某个查询q的标准答案集合为:Rq=d3,d5,d9,d25,d39,d44,d56,d71,d89,d123某个IR系统对q的检索结果如下:,22,P-R曲线的例子,23,P-R曲线的插值问题,对于前面的例子,假设Rq=d3,d56,d1293. d56 R=0.33,P=0.33;8. d129 R=0.66, P=0.25; 15. d3
10、R=1,P=0.2不存在10%, 20%,90%的召回率点,而只存在33.3%, 66.7%, 100%三个召回率点在这种情况下,需要利用存在的召回率点对不存在的召回率点进行插值(interpolate)对于t%,如果不存在该召回率点,则定义t%为从t%到(t+10)%中最大的正确率值。对于上例,0%,10%,20%,30%上正确率为0.33,40%60%对应0.25,70%以上对应0.2,24,P-R曲线的优缺点,优点:简单直观既考虑了检索结果的覆盖度,又考虑了检索结果的排序情况缺点:单个查询的P-R曲线虽然直观,但是难以明确表示两个查询的检索结果的优劣,25,单个查询评价指标(6) P-R
11、曲线的单一指标,Break Point:P-R曲线上P=R的那个点这样可以直接进行单值比较11点平均正确率(11 point average precision):在召回率分别为0,0.1,0.2,1.0的十一个点上的正确率求平均,等价于插值的AP,26,P-R曲线中的Breakpoint,Breakpoint,27,单个查询评价指标(7) 引入序的作用,平均正确率(Average Precision, AP):对不同召回率点上的正确率进行平均未插值的AP: 某个查询Q共有6个相关结果,某系统排序返回了5篇相关文档,其位置分别是第1,第2,第5,第10,第20位,则AP=(1/1+2/2+3/
12、5+4/10+5/20+0)/6插值的AP:在召回率分别为0,0.1,0.2,1.0的十一个点上的正确率求平均,等价于11点平均只对返回的相关文档进行计算的AP, AP=(1/1+2/2+3/5+4/10+5/20)/5,倾向那些快速返回结果的系统,没有考虑召回率,28,单个查询评价指标(8) 不考虑召回率,PrecisionN:在第N个位置上的正确率,对于搜索引擎,考虑到大部分作者只关注前一、两页的结果,P10, P20对大规模搜索引擎非常有效bpref、NDCG:后面详细介绍。,29,评价指标分类,对单个查询进行评估的指标对单个查询得到一个结果对多个查询进行评估的指标(通常用于对系统的评价
13、)求平均,30,多个查询评价指标(9),平均的求法:宏平均(Macro Average): 对每个查询求出某个指标,然后对这些指标进行算术平均微平均(Micro Average): 将所有查询视为一个查询,将各种情况的文档总数求和,然后进行指标的计算如:Micro Precision=(对所有查询检出的相关文档总数)/(对所有查询检出的文档总数)宏平均对所有查询一视同仁,微平均受返回相关文档数目比较大的查询影响MAP(MeanAP):对所有查询的AP求宏平均,31,多个查询评价指标(10),宏平均和微平均的例子 两个查询q1、q2的标准答案数目分别为100个和50个,某系统对q1检索出80个结
14、果,其中正确数目为40,系统对q2检索出30个结果,其中正确数目为24,则:P1=40/80=0.5, R1=40/100=0.4P2=24/30=0.8, R2=24/50=0.48MacroP=(P1+P2)/2=0.65MacroR=(R1+R2)/2=0.44MicroP=(40+24)/(80+30)=0.58MicroR=(40+24)/(100+50)=0.43,32,整个IR系统的P-R曲线,在每个召回率点上,对所有的查询在此点上的正确率进行算术平均,得到系统在该点上的平均正确率(average precision)。两个检索系统可以通过P-R曲线进行比较。位置在上面的曲线代表
15、的系统性能占优。,33,面向用户的评价指标,前面的指标都没有考虑用户因素。而相关不相关由用户判定。假定用户已知的相关文档集合为U,检索结果和U的交集为Ru,则可以定义覆盖率(Coverage) C=|Ru|/|U|,表示系统找到的用户已知的相关文档比例。假定检索结果中返回一些用户以前未知的相关文档Rk,则可以定义出新率(Novelty Ratio) N=|Rk|/(|Ru|+|Rk|),表示系统返回的新相关文档的比例。,34,其他评价指标,不同的信息检索应用或者任务还会采用不同的评价指标MRR(Mean Reciprocal Rank): 对于某些IR系统(如问答系统或主页发现系统),只关心第
16、一个标准答案返回的位置(Rank),越前越好,这个位置的倒数称为RR,对问题集合求平均,则得到MRR例子:两个问题,系统对第一个问题返回的标准答案的Rank是2,对第二个问题返回的标准答案的Rank是4,则系统的MRR为(1/2+1/4)/2=3/8,35,其他评价指标,Adaptive & Batch filteringUtility=A*R+B*N+ C*R-+D*N-T11U=2* R+-N+P=R+/(R+N+), R=R+/(R+R-)T11F=1.25/(0.25/R+1/P)归一化平均,36,近几年出现的新的评价指标,BprefGMAPNDCG,37,Bpref,Bpref:Bi
17、nary preference,2005年首次引入到TREC的Terabyte任务中基本的思想:在相关性判断(Relevance Judgement ) 不完全的情况下,计算在进行了相关性判断的文档集合中,在判断到相关文档前,需要判断的不相关文档的篇数相关性判断完全的情况下,利用Bpref和MAP进行评价的结果很一致,但是相关性判断不完全的情况下,Bpref更好。*Buckley, C. & Voorhees, E.M. Retrieval Evaluation with Incomplete Information, Proceedings of SIGIR 2004,38,原始定义,对每个
18、Topic,已判定结果中有R个相关结果r是相关文档,n是TopR篇不相关文档集合的子集例子:R=4d15r, d13n,d10u,d12n,d9r,d7u,d4n,d6n,d5u, d2r, d1n,d3r,d14n,bpref=1/4*(1-0+1-2/4+1-4/4+1-4/4)=3/81,39,特定情况,当R很小(1 or 2)时,原公式不合适 r是相关文档,n是Top 10+R篇不相关文档集合的子集,40,最新定义,对每个Topic,已判定结果集合中有R个相关文档,N个不相关文档,则Bpref can be thought of as the inverse of the fracti
19、on of judgedirrelevant documents that are retrievedbefore relevant ones. Bpref and mean average precision are very highly correlated when used with completejudgments. But when judgments are incomplete, rankings of systems by bpref still correlate highly to theoriginal ranking, whereas rankings of sy
20、stems by MAP do not.*参看trec_eval工具8.0修正说明(bpref_bug文件),41,GMAP,GMAP(GeometricMAP): TREC2004 Robust 任务引进先看一个例子从MAP(宏平均)来看,系统A好于系统B,但是从每个查询来看,3个查询中有2个Topic B比A有提高,其中一个提高的幅度达到300%,42,GMAP,几何平均值上面那个例子GMAPa=0.056, GMAPb=0.086GMAPaGMAPbGMAP和MAP各有利弊,可以配合使用,如果存在难Topic时,GMAP更能体现细微差别,43,NDCG,每个文档不仅仅只有相关和不相关两种
21、情况,而是有相关度级别,比如0,1,2,3。我们可以假设,对于返回结果:相关度级别越高的结果越多越好相关度级别越高的结果越靠前越好*Jarvelin, K. & Kekalainen, J. Cumulated Gain-based Evaluation of IR Techniques. ACM Transactions on Information Systems, 2002, 20, 422-446,44,NDCG,45,NDCG,46,NDCG,47,NDCG,48,NDCG,优点: 图形直观,易解释 支持非二值的相关度定义,比P-R曲线更精确 能够反映用户的行为特征(如:用户的持续性
22、persistence) 缺点: 相关度的定义难以一致 需要参数设定,49,TREC会议概况,50,TREC 概况,The Text Retrieval Conference,TREC, http:/trec.nist.gov由NIST(the National Institute of Standards and Technology)和DARPA(the Defense Advanced Research Projects Agency)联合举办1992年举办第一届会议,每年11月举行,至2006年已有15届,可以看成信息检索的“奥运会”,51,TREC 的目标(1),总目标:支持在信息检
23、索领域的基础研究,提供对大规模文本检索方法的评估办法1.鼓励对基于大测试集合的信息检索方法的研究2.提供一个可以用来交流研究思想的论坛,增进工业界、学术界和政府部门之间的互相了解;,52,TREC 的目标(2),3.示范信息检索理论在解决实际问题方面的重大进步,提高信息检索技术从理论走向商业应用的速度;4.为工业界和学术界提高评估技术的可用性,并开发新的更为适用的评估技术。,53,TREC 的运作方式(1),TREC由一个程序委员会管理。这个委员会包括来自政府、工业界和学术界的代表。TREC以年度为周期运行。过程为:确定任务参加者报名参加者运行任务返回运行结果结果评估大会交流一开始仅仅面向文本
24、,后来逐渐加入语音、图像、视频方面的评测,54,TREC 的运作方式(2),确定任务:NIST提供测试数据和测试问题报名:参加者根据自己的兴趣选择任务运行任务:参加者用自己的检索系统运行测试问题,给出结果返回结果:参加者向NIST返回他们的运行结果,以便评估,55,TREC 的运作方式(3),结果评估:NIST使用一套固定的方法和软件对参加者的运行结果给出评测结果大会交流:每年的11月召开会议,由当年的参加者们交流彼此的经验,56,TREC 的运作方式(4),57,测试数据和测试软件,由LDC(Linguistic Data Consortium)或者其他单位免费提供,但有些数据需要缴纳费用,
25、一般都必须签订协议每年使用的数据可以是新的,也可以是上一年度已经使用过的TREC使用的评估软件是开放的,任何组织和个人都可以用它对自己的系统进行评测,58,TREC中的名词定义,Track TREC的每个子任务,QA、Filtering、Web、Blog等 Topic 预先确定的问题,用来向检索系统提问 topic query (自动或者手工) Question (QA) Document 包括训练集和测试集合(TIPSTER&TREC CDs、WT2G、WT10G、GOV2) Relevance Judgments 相关性评估,人工或者半自动,59,Topic的一般结构,Title:标题,通
26、常由几个单词构成,非常简短 Description:描述,一句话,比Title详细,包含了Title的所有单词 Narrative:详述,更详细地描述了哪些文档是相关的,60,Topic示例,Number: 351 Falkland petroleum exploration Description: What information is available on petroleum exploration in the South Atlantic near the Falkland Islands?Narrative: Any document discussing petroleum
27、exploration in the South Atlantic near the Falkland Islands is considered relevant. Documents discussing petroleum exploration in continental South America are not relevant.,61,使用Topic的方式,按照会议要求,可以利用Topic文本中的部分或者全部字段,构造适当的查询条件 可以使用任何方式构造查询条件,这包括手工的和自动的两大类。但提交查询结果时要注明产生方式。,62,使用Topic的方式,基于无序集合的评测:返回结
28、果无顺序 Set Precision/Set Recall 基于有序集合的评测: Pn/Average Precision/Reciprocal Rank 其他评测方法 Filtering Utility。,63,相关性评估过程(1),(Ad hoc任务)Pooling方法:对于每一个topic,NIST从参加者取得的结果中挑选中一部分运行结果,从每个运行结果中取头N个文档,然后用这些文档构成一个文档池,使用人工方式对这些文档进行判断。相关性判断是二值的:相关或不相关。没有进行判断的文档被认为是不相关的。,64,相关性评估过程(2),NIST使用trec_eval软件包对所有参加者的运行结果进
29、行评估,给出大量参数化的评测结果(主要是precision和recall)。根据这些评测数据,参加者可以比较彼此的系统性能。 其他track也有相应的公开评测工具,65,本章小结,为什么要评价?如何评价?各种评价指标(正确率、召回率、平均正确率)的定义及计算方法基本指标:正确率、召回率TREC会议,66,课后思考题,两个系统A,B,两个查询q1,q2, 它们的标准答案分别是 Rq1=d1,d4,d28,d39,d56, Rq2=d3,d7,d16,d45,d86,d97 A、B 检索的结果分别如下表所示。试计算出每个系统对每个查询的P、R、F、P-R曲线、P10、AP等指标,并利用MAP指标对两个系统进行比较。请写出计算过程和结果。其中AP计算采用未插值方法。,67,The end,