1.23 国际评测
自动问答的研究历史可以上溯到 50 时代,图灵首次提出用人机对话来检验机器智能。在 60 年代问答技术主要服务于数据库的自然语言界面,70 年代则聚焦于交互式对话系统,70 年代末开始转向阅读理解。自动问答系统的应用领域也从初期的实验领域拓展到开放领域,研究对象从当初的小规模语料库拓展到互联网。不过,受限于信息检索和自然语言处理的技术水平,以及标准问答语料库的匮乏,智能问答的进展不尽如人意。这一状况直到文本检索会议(TREC)开展问答评测之后才得以根本扭转。
TREC 是文本检索领域最权威的国际评测会议,由美国国家标准技术局(NIST)主持。这是一个一年一次的会议系列,开始于 1992 年,迄今已举办了 20 多次。其宗旨主要包括:通过提供规范的大规模语料和客观、公正的评测,来促进技术的交流、发展和产业化;发展对文本检索系统的评测技术等
[1] 。正因如此,TREC吸引了全世界信息检索研究机构的注意力。TREC 会议的评测项目一开始只有随机检索(AdHoc)和分流(Routing)两项,之后随着文本检索技术的不断发展,逐渐转向更新颖更热门的项目。1999年,TREC 首次开展了自动问答评测(TREC/QA) [2] 。通常意义下的文本检索输入的查询是关键词,返回的是相关文本。对于自动问答,输入的查询是问题,希望返回的不是整篇文本,而是在给定的语料库中检索并返回问题的直接答案。自此以后,众多研究者开始对问答系统产生了浓厚的兴趣,直到 2007 年的最后一次评测,QA 一直都是最受关注、参加机构最多的TREC 评测项目之一。
TREC/QA 任务考察三类不同的问题,即事实性(factoid)、列表类(list)和定义类(definition),然后用这三类问题的平均得分作为总体得分,对参评系统进行评价。事实性问题只有一个答案,而且答案一般都比较简短,往往用词语或词组即可回答,例如“珠穆朗玛峰有多高?”。列表类问题可能会有多个分布在不同文档的答案,例如“联合国安理会有哪些常任理事国?”除了答案之外,TREC/QA也要求给出证据,即答案所在的文档编号。定义类问题则要求系统返回一段描述文字作为答案 , 例如对于“南丁格尔是谁?”这样的问题,仅用几个词语无法完整回答,提出这类问题的用户往往希望系统能够提供更加详细的信息。TREC/QA 每年都会提供 500 道左右的测试问题,经过将近 10 年的评测,建立了含有数千道问题的题库,这些问题,以及对应的答案、答案模板和证据,成为了此后自动问答研究的标准语料库。研究人员在该语料库上训练和测试各种问答模型,先后提出了基于逻辑推理的方法[3] 、基于模板匹配的方法 [4] 、基于机器学习的方法[5]和基于数据余性的方法[6]等许多领先方法,极大促进了自动问答的研究水平。
除了对各种方法的性能加以比较之外,TREC/QA评测的另一项贡献是提出了适用于 QA 的评价指标。第一种指标是查准率(precision),指的是回答正确的问题占问题总数的百分比。在系统仅为每个问题提供一个答案时,可用这一指标进行评测,例如 2003 年、2004 年的 QA 评测都使用了该指标。而 2007 年的 QA评测则采用了查准率的一种变体,即将答案是否正确
进一步细化为全局正确、局部正确(文档集中存在该答案,但该答案并非是整个文档集中的最佳答案)、不确切(与正确答案有交集)、不正确、不支持(答案正确,但给出的证据不支持)5 种结果,并为每种结果设置不同的权重[7] 。
但在多数情况下,要求系统只能返回一个答案并不合理。就如搜索引擎,为一个查询返回多个结果是用户普遍接受的一种方式,因此也应允许问答系统为每道问题返回多个答案。根据经验,用户一般比较关注前 10 个答案。另一方面,第一个正确答案出现在哪个位置也在某种程度上反映了系统的性能。它出现在第 1 位还是第 10 位,或者在前 10 个答案中都没出现,对于用户来说是截然不同的体验。因此 TREC 除了查准率之外又提出了 MRR 指标(Mean ReciprocalRank),其计算公式如下[2] :
其中,n 为问题总数,RR i (Reciprocal Rank)是指问题 i 的第一个正确答案排序的倒数。比如问题 i 的第一个答案错误,而第二个答案正确,则 RR i 为 1/2;如果正确答案没有出现在前 10 位中则 RR i 为 0。
查准率和 MRR 是针对事实类问题的评价指标对于列表类问题,TREC 提出了实例查准率(instanceprecision)、实例查全率(instance recall)和F值等指标。对于某个列表类问题,实例查准率指的是问答系统给出的正确答案占给出的全部答案的比例,实例查全率指的是问答系统给出的正确答案的数量占所有正确答案的比例,F 值则是实例查准率和查全率的调和平均值。
定义类问题存在某种程度的“主观性”,为此TREC 提出了“两步走”的评价策略。在第一步,所有参赛系统提交答案,由评价员浏览所有的潜在答案,从中构建答案的“片段”。片段指的是问题正确答案的某个方面,例如,对于问题“南丁格尔是谁?”,可能的片段包括南丁格尔的生卒年月、国籍、教育水平、主要事迹等,这些片段彼此不相交也不能再进一步细分。在第二步,每个系统给出的答案也被人工细分为片段,从而可以计算出片段查准率和片段查全率。多名评价员独立构建答案的片段,这样还可以计算出片段的重要程度,被多名评价员认可的片段能得到更高的权重。
不同于检索、过滤等其他任务,TREC/QA 的评测需要更多的人力资源。除了给出答案之外,问答系统还必须给出答案的证据;评价员不仅要判断答案是否正确,还需要判定答案所在的文档是否能真正支持答案,避免投机取巧的系统从百科或知识库中直接查找答案,而非通过自动问答技术从文档库中提取。定义类问题所需要的人力就更多了。这种耗费巨大的评测,在 TREC 引入 QA 任务之前几乎是不可能实现的。国内的复旦大学、哈尔滨工业大学,中国科学院计算所、清华大学和北京大学等单位先后参加了TREC/QA 评测,都取得了不错的成绩。表 1 给出了在TREC/QA 评测的最后一年,也就是 2007 年排名前十位的系统,其中复旦大学取得了第三名。
除此之外,其他评测会议如 NTCIR 和 CLEF 也设置了问答评测项目,这些评测会议同样极大地推动了自动问答系统的相关研究,并在 TREC 之后接过了 QA评测的大旗。其中,NTCIR 是由日本学术振兴会和日本国立情报学研究所组织的评测,其特色是既关注日文和其他亚洲语言的检索和跨语言检索,也重视从文本检索到“信息”检索的转化,例如自动问答、自动文摘等[8] 。
CLEF 是由欧盟资助的一个评测会议系列,多语言、跨语言评测是它的主要特色[9] 。QA4MRE(Questionanswering for machine reading)是 CLEF所开展的一个评测项目[10] 。不同于从海量文档中查找问题的答案,QA4MRE 的主要目的就是提供一个通过问答和阅读理解测试来评测机器阅读系统的方法。该任务要求参评系统通过阅读文档,然后从可选答案中选择正确的答案。由于答案的来源只有单篇文档,无法利用语料库中可能存在的冗余信息,选择正确的答案可能需要复杂的文本推理过程,因而其难度超过了 TREC/QA。