本文最先发表于IT Professional杂志,现由InfoQ & IEEE Computer Society在此为您呈现。
搜素引擎构建于对真实测试案例标准集的使用,该标准集允许开发人员度量其它替代方法的相对有效性。这篇文章讨论了NIST的文本检索会议(TREC)项目,该项目创建了用于度量查询结果质量的基础架构。
我们总是认为以母语进行的文本文件查询是有保障的,但是像Yahoo、Google和Bing这样的网页搜索引擎并非一天构成,而且网页内容也不是我们需要查询的唯一领域。随着数据变得越来越无处不在,搜索需求也相应地扩大了。人们为了不同的目的(比如:重新定位已知数据项、回答特定问题、学习特定问题、监测数据流、及浏览)在不同媒体(比如:文本、网页、Tweet、语音录音、静态图像和视频)中搜索所需内容。大多数情况下,用于支持这些不同搜索类型的技术还在不断完善中。可搜索技术是如何发展的?搜索引擎开发人员怎么知道哪些可行,又为什么可行呢?
来自大型、多元化搜索社区的参与者对标准的、真实测试中的搜索引擎性能的仔细度量已被证实是至关重要的;通过文本检索会议(TREC)项目,美国国家标准及技术研究所(NIST)在过去四分之一个世纪以来一直通过收集社区评估促进着搜索和与搜索相关技术的发展。
搜索算法通常通过测试集,即在基准任务上对比各个替代方法而发展起来的。第一个测试集是20世纪60年代从Cranfield学院的一系列关于航空索引语言的实验中获取而来的1。Cranfield测试集包含一组航空杂志文章摘要、一组针对这些摘要的查询以及每个查询的正确答案要点。从今天的标准看,它可能微不足道,但Cranfield集打破了当时的记录,为信息检索系统创建了第一个共享的度量工具。研究人员可以自己编写搜索引擎来查询所要的摘要,其返回值可以通过对比答案要点来度量。
其它研究组开始遵循由Cranfield测试提出的实验型研究法,生成了其它多个用于70和80年代的测试集。但到了90年代,大家开始对该方法越来越不满意。尽管有些研究组使用了相同的测试集,但在以下几方面却各持己见:是否使用相同数据,是否使用相同评估度量,是否跨查询系统对比结果。商业搜索引擎公司并未将从查询系统中取得的研究结果整合到他们的产品中,因为在当时他们觉得研究界所用的测试集太小了,并不值得借用。
面对这一不满,NIST被要求构建一个大型的用于评估文本检索技术的测试集,在当时该技术已发展为美国国防部高级研究计划局(DARPA)Tipster项目2的一部分。NIST同意以研讨会形式来构建大型测试集,同时也支持关于测试集使用方面等更大问题的检测。该研讨会就是1992年举行的第一次TREC会议,此后每年都举办一次TREC会议。TREC在早期就完成了构建大型测试集的最初目标;事实上到目前为止,TREC已经构建了几十个正被整个国际研究界使用的测试集。TREC更大的成就是对研究范例的建立和验证,并在此后的每年都继续将其拓展到新任务和应用程序的具体内容中去。
该研究范例以基于社区的评估为中心,称为“合作竞争(coopetitions)”,这一新词强调了竞争者间的合作,从而创造出更大的利益。
该范式的主要元素是评估任务,通常情况下,它是一个用户任务抽象,明确定义了我们对系统的期望。与评估项目相关联的是一或多个度量,它们在反映了系统的响应质量的同时,也是所有基础架构用来计算可构建度量标准的手段。其评估方法揽括了任务、度量、以及对度量分数有效解释的声明。一个标准的评估方法允许横跨不同系统间进行结果比较,这就是检索竞赛无获奖者为什么这么重要了;相对于其他研究组所能解决的,它促进了更广泛类型研究成果的整合。
谈到范式的具体实例,我们可以考虑第一个TREC中的主要ad hoc项目,该项目拓展了当时的Cranfield方法。该ad hoc评估项目还检索了相关文档(更确切地说,创建了一个文档列表将所有相关文档罗列于无关文档之前),然后给出一个文档集和称为话题的对信息需求自然语言的声明。该检索输出以准确率(检索出的相关文档数与检索出的文档总数的比率)和召回率(检索出的相关文档数和文档库中所有相关文档数的比率)为指标,为每个已知话题(换句话说,就是答案要点)提供相关文档集。TREC的创新在于利用pooling3为大型文档集构建相关集合。
该pool是所有参与系统对给定话题的检索而查询出来的前X个文档的集合。只有来自话题pool中的文件才会被人工评审员采用并鉴定其相关性,其它的文档则与有效性评分的计算无关。尽管只参照了整个测试集中的一小部分,但是随后的测试证明在TREC中执行的pooling在文档集中所发现的文档绝大部分都是相关的。另外,该测试进一步验证了在通常情况下,这些在测试集上获得更高分数、构建于pooling上的检索系统往往比那些分数较低的系统在实际应用中更有效4。同时该测试也暴露了通过计算测试集所得分数只有有限的有效应用。因为分数的绝对值由多种因素决定,而非仅仅是检索系统(比如:使用不同人工评审员通常对分数会有一定的影响)。只有比较其它系统在完全相同测试集上计算出的分数才有效。这就意味着对比不同年度的TREC分数是无效的,因为每个TREC构建的测试集都是新的(不同的)。想让pooling成为有效的策略,在pool中拥有类型广泛的检索方法起着非常必要的作用。因此,TREC的社区因素 — 使用了多种检索方法用于检索不同文档集 — 是创建良好测试集的重要因素。社区因素同时也是TREC在其它方面成功的重要因素。TREC只有在所有检索方法都呈现时,才能检验当前的技术。一年一度的TREC会议不仅促进了不同研究组间,而且还促进不同研究开发组织间的技术交流。该年度会议还为解决方法论方面的问题提供了有效的机制。最后,社区成员往往是新项目数据和用例的来源。
在TREC开始之初,大家还怀疑这个构建于实验室的统计系统(相对于在手动索引集合上使用布尔搜索的操作系统)是否能真正有效地从大型集合中检索出文档来。TREC中的ad hoc项目证明了90年代初的搜索引擎不仅确实拓展到了大型集合范畴,也不断得到了改进。其有效性无论在TREC测试集实验室中,还是在当下集合了该技术的操作系统中都得到了证明。此外,该技术现在所应用的测试集要比当初在1992年设想的大得多。网页搜索引擎是统计技术能力最好的例子。搜索引擎为用户带来他们想要的查询信息的能力已经成为网站成功的基础。正如之前所说的,搜索有效性的改进并不能简单地由每年的TREC分数来判断。然而,SMART搜索系统开发人员会将每八个他们曾经使用过的TREC ad hoc项目冻结起来,并保存系统副本5。每个TREC后,他们会在每个系统上执行所有测试集。针对每个测试集,新版SMART系统总是比旧版的更有效,而且分数也比旧版的大概要高出一倍。尽管该证据只能证实一个系统,但在每个TREC中,SMART系统结果始终追踪其它系统的结果,因此SMART结果完全可以代表当前技术水平。
尽管TREC的最初意图只是简单地为ad hoc检索构建一两个大型测试集,以及关于pooling方法论方面的问题的探索;但很快ad hoc项目就明显展露出可在多个方面调整发展的特性。从不同方向衍生出来的新项目都与经典项目息息相关,但又不同到足以要求评估方法论作出一定的变化。因此TREC引进了Track项目,从而每个给定的TREC都包含了多个检索子项目,每个子项目又是自身评估挑战的焦点。图1显示不同年度TREC所执行的Track项目,根据维度将Track项目分组从而将它们区分开来。Track项目位于下图的左边,展示了TREC所解决问题的宽度,而位于右边的单独Track项目则显示了项目在给定问题领域中的进展。
(点击图片放大)
图1. 文本检索会议(TREC)Track项目及它们的所属年份。Track项目名字位于右边,位于左边的则是Track项目关注的。空框所代表的Track项目是被分离出来成为一种评估方式用于运行当年的Track项目。颜色相同的Track项目则彼此密切相关。
现在,每个TREC会包含七或八个经常变换的track项目以保持新鲜度,及支持新的社区。多个TREC track项目已经是自己领域的首个大规模评估。在这种情况下,Track项目已经建立了相应的研究社区,并创建了首个用于支持其研究领域的特定测试集。有几个Track项目已经从TREC中分离出来,感兴趣的社区建立了自己的评估会议。比如:评估论坛会议和实验室(the Conference and Labs of the Evaluation Forum, CLEF)就于2000年从TREC中脱离出来,在欧洲拓展了关于跨语言检索的评估,此后它不断扩大,不仅包含了多语言,也涵盖了多模式(文本、图像和视频)信息。其它会议尽管没有从TREC中直接分离开来,却受到TREC的启发,将方法论拓展到其它领域。其中包括NII测试基地和信息访问研究社区(NII Testbeds and Community for Information Access Research)(NTCIR,research.nii.ac.jp/ntcir)关注了中文、日文和韩文文本;XML检索评估倡议(INEX, inex.mmci.uni-saarland.de);以及信息检索评估论坛(Forum for Information Retrieval Evaluation,FIRE)关注了印度次大陆的语言。
由于空间上的局限性,我们无法为每个TREC Track项目展开哪怕是粗略的讨论。因此我们抽样强调以下一些Track项目 — 过滤、问题解答和法律电子取证 — 它们从某种程度上部分解决了这些特别紧迫的搜索问题,其中还有视频检索Track项目,由于数字视频日益普及,它已发展出自己的NIST研讨会系列:TRECVID。
TREC的最初几年仅有Ad hoc和routing两个项目。Routing项目用于模拟用户监控文件流、选择相关文档及忽略无关文档。在TREC-4中,routing演变为过滤 — 一个更为复杂,却更真实的场景。正如电子邮件过滤系统实时处理传入的邮件流以删除垃圾邮件和执行归档规则一样,信息过滤系统处理传入的文件流,然后根据用户对之前交付文档的回馈而建立的用户兴趣模型配置文件,决定是否要将这些信息发送给用户6。
鉴于routing评估项目允许系统以批处理的集合形式处理所有文件,该过滤评估项目要求系统在文档到达文件流时就处理,并采用在线用户模型。如果系统选择显示文档给用户,还附有对该文件相关度的评价,那么该系统就被赋予了评估(模拟实时用户的回馈)。系统就可以根据这些信息进行及时的自我调整。如果系统决定不将这些文档显示给用户,那就是缺失了相关信息。过滤系统的有效性通过使用实用模型,一个基于返回相关文件数、并根据其返回的不相关文档数而被减分的系统。
过滤Track项目让与会者更好地理解过滤项目的执行难度。在实用模型中,系统因返回不相关信息而受处罚。如同现实生活一样,在过滤track集合时,在数以百万计的文档流中往往只有一小部分文档是相关的。因此,一些精明的系统会因为从未返回任何文档而得分很高 — 换句话说,它们决定不冒风险去浪费使用者的时间。由于系统在数据流初期只有少量培训数据,其初始性能往往比较差。为了完善该用户模型,系统必须给用户提供很多有希望却最终无关的文档。
该系统必须能够从反馈的原始成本中恢复,这些反馈经历了从执行特别好很快到分数特别好这一过程。
尽管主题相关的文档列表毫无疑问是有益的,其本身所提供的信息就多于用户想要检测的。TREC问题-解答Track项目于1999年引入,主要关注返回问题确切答案这一类问题。最初的问题解答Track项目关注事实型问题 — 即那些答案短且基于事实的问题,比如:“泰姬陵在哪里?”随后,Track项目又引入更为复杂的问题类型,如:列表问题(其答案是所请求类型实例的不同集合。比如:“有哪些演员曾在《屋顶上的小提琴手(Fiddler on the Roof)》这部电影中扮演过Tevye这一角色?”);以及定义型或传记型问题(比如:“什么是黄金降落伞?”或“谁是弗拉德三世(Vlad the Impaler)?”)。
问题解答Track项目是开放域问题解答系统的首个大型评估,而且利用了从其它TREC观察而获得的测试集评估优势来处理问题解答项目。该Track为检索和自然语言处理研究社区建立了通用项目,带来了问题解答研究的复兴。由于研究人员将复杂语言处理结合到问题解答系统中,该研究潮流在自然语言自动理解上实现了显著的进步。比如:Watson,IBM的Jeopardy-playing电脑系统,TREC问题解答Track项目中就有该公司曾参与的原型7。
法律Track项目始于2006年,专门关注电子取证问题,电子存储信息的有效生产是诉讼和监管设置的证据。当今组织更多地依赖电子记录,而非纸质记录。但相应数据量及其潜在的短暂本质已使传统司法发现流程和实践不堪重负。因此我们需要新的处理电子数据的发现实践。当该Track任务开始时,涉及的诉讼双方通常会讨论出一个布尔表达式用来定义发现结果集。然后再由人工检查每个检索文档,从而判定发现请求的响应能力。该Track的目的在于评估该基线方法和发现的其它查询技术的有效性。该Track使用了假设的投诉和相应的请求来生成由执业律师开发出作为主题的文档。指定的“主题权威”扮演了某案件中首席律师的角色,陈述关于具体是什么让文档响应请求的总体战略和指导方针。特定文档的相关性判断由法律专业人士来评估,他们会更根据自身的典型工作实践来审查文档。
该Track项目对法律社区有着重大的影响,其中包括司法意见中的引文(见en.wikipedia.org/wiki/Paul_W._Grimm)。它的主要成果就是引发实时对话,该对话通过对迭代流程的展示指出应该完成哪个电子发现,这个迭代查询会包含一个人工到查询循环中,其效力往往优于一次性检索。在信息检索这方面,Track在标准测试集评估方法上表现出了不足。为了方便稳定的评估,尤其当使用pooling中构建的测试集时,标准方法所依赖的平均有效性是从一组每个主题只有一小部分相关文档的主题中获取的。但是当返回文档数量很大时,电子发现中的真实案例则从单个响应集中衡量其有效性。
虽然不属于TREC研讨会范畴,但依然属于NIST,TRECVID从它出现于TREC Track项目中以来,已经以多种形式发展起来(请看图2)。TRECVID创建于2001年,将TREC/Cranfield理念扩展到基于具体内容的视频分析和检索。两年后,TRECVID成立了独立的系列研讨会,并开始了使用电视广播新闻(英文、中文和阿拉伯语)及4年为一周期的循环,还将测试数据从50小时增加三倍到了150小时。系统任务包含使用多媒体主题的查询,高层次特征提取,拍摄和传记边界确定,和相机运动检测。
2007年开始了以3年为周期的循环,采用来自荷兰声音和视觉研究所(Netherlands Institute for Sound and Vision)的教育和文化节目。测试数据也在2009年增加到280小时。针对BBC工作样品(未经编辑的节目素材)添加了一个综述任务,针对由英国内政部(UK Home Office)提供的机场监控录像添加了事件监测任务。从2010年开始,TRECVID就开始关注不同的、通常非专业的网络视频,这些由不同社区捐献的视频在数量上从几百到几千小时不等,在拓展了研究和功能/时间检测任务的同时,也往评估中添加了已知事项和实例查询(见图2a)。
TRECVID研究人员已经为全球科学同行在对艺术状态的判断上做出了显著的贡献。2009年,由都柏林城市大学的图书馆学家进行的文献计量学研究发现TRECVID参与者在2003年和2009年间生成了310个(未经审阅的)研讨会文章,与此同时,还生成了2073篇同行评审期刊文章和会议论文8。
尽管测试数据的变化导致我们难以度量系统的改进,但阿姆斯特丹大学的MediaMill团队在2010年进行的实验证实了,过去三年里特征检测有了三倍的改善 — 这对一个系统来说,已经是TRECVID中表现最佳的执行者9。2010年和2011年的检测测试数据是相同的,但测试查询(11,256)却是随机创建的,这允许了系统间的比较。顶级团队在检测和定位上2011年的平均分数要比2010年好。
TRECVID研讨会系列汇集了来自多元化社区自我资助的研究人员,在多个领域激发起有趣工作的任务深深地吸引着他们。与此同时,研究人员也被数据和计分流程的可用性所吸引,因为这些允许他们关注研究任务,而非基础架构。与此同时,他们还被科学比较的开放论坛所吸引。来自世界各地能参与到竞赛项目中的团队数量也在增长,新的顶级执行者也不断出现。越来越多的知识分子将注意力放到了持久性问题上,比如:从视频中提取有意义的信息,只能从长远角度才有增加进展的可能性。
(点击图片放大)
图2. TRECVID在(a)数据、项目和(b)参与者方面的演变。TRECVID中使用的数字视频包括广播新闻报道、未经编辑的电视节目素材、监控录像和非专业互联网视频。不同数据类型支持不同的项目,比如:传统的ad hoc查询,复制检测和视频序列中特定活动模式的识别。TRECVID程序中文档的作者数量是TRECVID参与宽度的一个度量。
在其作为独立研讨会系列的头三年,TRECVID社区发展迅速,申请量从20组增加三倍到了60组,其中有40组至少完成了一个项目。从2007到2009,申请增加到100组左右,其中有60组已组队完成,社区参与还以该水平持续发展到现在。对研讨会文档合著者的粗略计算显示了大概有400名研究人员参与到每年的TRECVID实验中(见图2b)。虽然学术团队占据了主导地位,商业研究实验室却一直是组合的一部分。欧洲和亚洲的地区参与者最多,北美则紧随其后。
TRECVID社区所贡献的不仅限于研究。他们还为评估基础架构贡献了各种关键部分,其中包括地面实况注释系统和判断、镜头分割、自动语音识别、评估软件、数据托管和训练有素的的探测器。如果没有这种合作,TRECVID是无法实现的。
以下是从2009年信息检索中基础和趋势10(Foundations and Trends in Information Retrieval)的一篇评论文章中找到的结论:
由于TRECVID在领域中广泛的接受度,从而获得了大量国际团队的参与,他们来自大学、研究机构和企业研究实验室。TRECVID基准可作为实际标准用来评估基于概念的视频搜索研究的性能。实际上该基准已经在视频搜索社区产生了巨大的影响,生成了大量的视频检索系统和出版物汇报了TRECVID中进行的实验。
包括利用多媒体搜索主题的创新自动决定将镜头作为检索的基本单元(允许有效地判断系统的输出),将平均精度应用程序作为视频查询和概念检测有效性的度量,采用基于成本的度量用于拷贝检测,及使用实用方法评估简单总结。
跨研究团队技术转换发生于TRECVID和更广泛的视频分析社区内。用于某年某系统中的方法通常会在下一年被其它系统做出一定修改后采用。由于实验室是通过原型系统练习的,因此TRECVID结果往往具有指导性,而非结论性。随着算法反复证明自己可以是多种系统的一部分,并能解决不断变化的测试数据,特定方法的可信证据逐步增多。相当数量的工程在某种情况下,需要做可用性测试以将实验室内的成功实例应用到现实世界的应用程序中。
荷兰声音和视觉研究所,是TRECVID主要的数据和用例捐赠者之一,是TRECVID记录在案、允许其加入大范围的研究者社区以低成本在他们自己的数据上探索他们所感兴趣的项目。与附近另一个TRECVID参与者(阿姆斯特丹大学)在所需的工程设计和用户测试从原型到可运行系统的转换上有更密切的合作,使得有前景的技术得到了更进一步的探讨11。
过渡到现实世界运用的一个具体例子是荷兰一个公司对功能/概念探测器的开发和授权,它们将被集成到软件工具中允许警方搜索非法材料中应被没收的视频12。
TREC在常见问题集上所采用的评估竞争技术方法已被证明是提高当前技术及加速技术转移的一种强有力的方式。Google的首席经济学家Hal Varian曾在其Google博客2008年的一篇博文13中这样描述TREC的影响:
TREC在信息检索上对数据恢复的研究所具有的标准性、广泛可用性和精心构建的数据集为本领域进一步创新奠定了基础。一年一度的TREC会议促进了合作、创新和程度可控的竞争(当然还有吹牛的权利),从而引导了更好的信息检索。
NIST委员会RTI国际展开了对TREC影响更详细的研究14。 在数量方面,该研究估算出在TREC上所投资的每一美元,信息检索研究人员能得到的累积回报利润在3到5美元之间。该项研究还列举了各种定性收益,总结起来其中一部分包括以下这些:
TREC活动同时还有其它好处,只是并不属于经济范畴。TREC帮助教育研究生和本科生,其中有一些还去领导IR公司,其它一些留在学术界教书和进行研究。TREC使得IR产品质量和可用性得到了提升 — 我们的研究显示TREC促进了IR研究大范围的拓展,从而带来了高质量的应用程序,比如:网页搜索,企业搜索和领域特定搜索产品和服务(例如:基因组分析)。更具体地说,该研究估算出从1999年到2009年间所观察到的网页搜索产品超过200%的提升中大约有三分之一是由于TREC的存在而带来的。
尽管有了这样的成功,我们依然有很多工作需要去做。虽然内容存储变得越来越大了,电脑依然无法真正理解由人类运用而产生的内容。
在可预见的将来TREC和TRECVID研讨会还会继续,关注于搜索研究社区和更广泛用户社区上具有重大影响的问题的搜索研究。
TREC网页1和2有关于TREC的丰富资料,其中包括每个研讨会的完整流程和关于如何获取测试集的详情。每个冬季想要参与的组织可以通过响应号召邀请参与到TREC中。
某些商业实体、设备或材料可能会在本文中被识别出用于充分描述实验型流程或概念。这种识别的目的并不在于暗示他们被美国国家标准及技术研究所推荐或认可,也不在于暗示某些实体、材料或设备是解决问题的最好工具。
Ellen Voorhees是美国国家标准及技术研究所的一名计算机科学家,她的主要工作职责在于管理TREC项目。她的研究关注于开发和验证合理的评估模式用于度量不同用户研究项目和自然语言处理项目的系统有效性。Voorhees从美国康奈尔大学获得了计算机科学博士学位,她在信息访问上的工作曾获得三个专利;于此同时,她还是西门子公司研究机构(Siemens Corporate Research)的技术成员之一。可以通过以下邮箱联系到Ellen:[email protected]。
Paul Over是美国国家标准及技术研究所的一名计算机科学家,TREC视频检索(TREC VID)的项目领导人。他曾经在NIST中负责过文本检索评估(TREC)中交互文本检索系统的评估,也是文本摘要技术评估中自然语言处理的研究人员。总的说来,他曾发布过多篇关于视频片段、摘要和研究不同话题的文章。他在2011年获得了美国商务部颁发的杰出联邦服务的铜牌。可以通过以下邮箱联系到Paul:[email protected]。
Ian Soboroff是美国国家标准及技术研究所(NIST)检索组的一名计算机科学家和经理。他当前的研究兴趣包括为社会媒体环境和非传统检索项目构建测试集。Soboroff已为大范围的数据和用户任务开发了评估方法和测试集。可以通过以下邮件联系到Ian:[email protected]。
本文最先发布于IT Professional杂志。IT Professional提供了关于当今战略技术问题可靠的、并由同行审评的信息。为了满足运行可靠且灵活企业所面临的挑战,IT经理和技术管理者依赖IT Pro获取最先进的解决方案。
查看英文原文:Building Better Search Engines by Measuring Search Quality