今天研读 《Attributed Question Answering: Evaluation and Modeling for Attributed Large Language Models》
本文中所有系统回复以及人工/自动化评分:点这里
AutoAIS 的提出可以参考文章:《Rarr: Researching and revising what language models say, using language models》
1. 为什么要研究 LLM 的问答能力?什么是可归因能力?
过去要训练一个好的问答模型,需要精心设计大规模的问答标注数据。然而,即使是对于最简单的 QA 任务标注大量的数据集都十分困难,更不用说对问题的方面与层次更多的多面性问答乃至多轮的交互式对话进行人工标注了。而 LLM 在 few-shot 甚至 zero-shot 的场景下即可对自然语言理解和生成的任务表现良好,因此,研究 LLM 的问答能力很有必要,尤其是“信息搜寻”场景下。
在许多“信息搜寻”场景下,我们希望 LLM 具备可归因能力 (attribution) 。理想情况下,只要模型对现实世界发表了断言(比如说明了一个事实,给出了一个数据),它就必须在合适的地方贴出证据片段(Evidence snippets)来支持自己的话,就像写学术论文贴出参考文献一样。但实际上,学术界和工业界对于这个问题的理解还十分匮乏。
基于此,作者提出了三个待解决的核心问题:
如何衡量可归因能力?
当前 SOTA 方法在可归因能力上表现如何?
如何建立可归因的 LLM ?
为了探索上述三个问题,作者提出了可归因问答(Attributed Question Answering, Attributed QA)。在一个可归因问答系统/模型中,输入是一个问题(Question),输出是一个二元组(Answer, Attribution),其中 Answer 是模型生成的答案字符串,Attribution 是一个指针,指向一个固定的语料库中的某个特定段落。这个段落必须包含能完全支持答案的证据。(如何判断“能完全支持”呢?作者后面会给出判定依据)
在具体的实现上:
首先,作者建立了一套可复现的评估框架。这套框架分为两部分。第一部分是人类专家对模型输出的打分,这将作为黄金标准。但为了加速研究的进展,作者引入并深入研究了一个自动化指标:AutoAIS ,它把评估模型输出的可归因性转化为了一个自然语言推理任务。作者发现 AutoAIS 的打分和人类专家的打分之间具备强相关性,因此是足够可靠的。(这也将在后面由实验数据证实)
其次,作者对当时的 SOTA 组件进行了系统化的分析,测试了不同架构和监督程度。重点提到了三种技术路线:
路线 A :先检索再阅读(Retrieve-then-read)。主流的代表就是 RAG 。这种模型的表现很强劲,但是需要大量的训练数据以及计算资源。
路线 B :事后追溯归因(Post-hoc attribution)。模型先写答案,再去语料库中溯源。这听上去很让人激动,不过极具挑战性(因为模型写出的答案可能已经存在幻觉,难以追溯归因)。
路线 C :端到端低监督建模(End-to-end modeling)。不依赖海量的(问题-答案)监督对,直接端到端让模型学会生成答案并指向引用。作者很看好这一方向。
2. 可归因问答如何建模?
2.1 任务定义
用集合 C 表示所有证据的来源(比如维基百科中所有段落 ID 的集合),每一个 c ∈ C 代表某一个具体段落的 ID ,用 text(c) 表示实际段落的文本。将可归因问答系统建模为一个函数 g ,输入是一个问询 x ,输出 g(x) = (a, c) ,其中 a 是答案字符串文本,c ∈ C 。
2.2 评估
就像上面所说,作者的评估框架采用了 人类专家打分 + 自动化打分 这两部分,可以表述为:
Human Evaluation:对给定的三元组 (x, a, c) ,采用 AIS(可归因准确率) 评估规范来判断问询 x 是否可由段落 c 解释。具体而言,人类打分者需要回答两个问题:
模型生成的答案 a 以及它引用的段落 c ,在逻辑上、语意上是不是清晰的、可解释的?
模型生成的答案 a 能否被它引用的段落 c 完全支持?
如果人类打分者对上述两个问题的回答都是肯定的,那么称三元组 (x, a, c) 的打分是“可归因”。
一般地,假设有一系列问询 x1, x2, ..., xn 与一个待评测系统 g ,用 ri 表示针对第 i 个测试样例,随机分配的人类评委团。若评委团中大多数人认为系统输出 g(xi) 是可归因的,则函数 h(xi , g(xi), ri) 取值为 1,否则取值为 0 。于是可以定义测试准确度 (test accuracy) :

测试准确度衡量了 n 个测试用例中被人类打分者认为 “可归因” 的用例所占的比例。
Automatic Evaluation (AutoAIS):采用自然语言推理(NLI)分类器自动化打分的方案。用函数 AutoAIS(xi , g(xi)) 表示 NLI 分类器的输出(函数值为 1 代表 NLI 分类器判定为“可归因”,否则函数值为 0)。于是可以定义自动化打分方案下的测试准确度:

2.3 对可归因 LLM 问题的探讨
问题 1 :标签空间非常大
对于同一个问题 x,能够提供可归因答案的二元组 (a, c) 非常多(即 “标签空间” 很大),这一方面是因为对于同一个答案 a ,可能存在许多段落 c ∈ C 能够支撑它;另一方面是因为对同一个问询 x 本身可能就有许多正确回答。这是基于以下三个原因:
核心意思一样,但字符串不一样,比如 “2米” 和 “20分米”,“200厘米”。
有些问题在现实中本来就没有唯一标准答案,不同的文献段落支持截然不同的流派和观点。
用户输入的问题往往很宽泛,模型从不同的角度去解读问题,就能在知识库里找到完全不同的切入点来回答。
这使得评估问答系统是否可归因变得很有挑战性。
问题 2 :为什么要追求 “可归因能力” ?
原因一:这能够巧妙避免 “事实性” 的难题。判断一句断言是否“真实”比起判断其是否“能被给出的文档支持”要困难的多,甚至无法解决(因为很多问题本身就无所谓“是真是假”)。
原因二:让系统开发者和人类评审者能更简便地、更可靠地判断模型给出的答案的质量。人类评审者无需上搜索引擎查询答案来源,系统开发者无需提前写死每个答案的真值标签。
问题 3 :与闭卷问答评估的比较
闭卷问答评估(Closed-book QA)是指在推理阶段完全依靠模型的参数化知识来生成答案。
虽然闭卷问答评估提供了一种对 LLM 表现高效便捷的评估方式,但它有两个巨大的缺点:
闭卷模型给出的答案是一个没有出处的孤立字符串。从产品落地和用户体验的角度来看,这种无法溯源的系统是一个不完整且对用户和开发者价值有限的半成品。
闭卷评测依赖预先人工整理的唯一标准答案,对于答案非常多元化的问题,这会严重低估模型的真实能力。而且,如果不用本文中提出的大规模人类标注来做锚定,行业无法估计这种低估的程度是多大。
问题 4 :为什么要进行人类打分?
原因一:由于设计唯一的真值标签是不可行的,必须让模型自由生成 (a, c) ,因此人类评审者的打分可以作为有效的质量衡量依据。
原因二:海量人类真实打分数据能产生巨大的行业复利。一方面可以用于测试以寻找更合适可靠的自动化指标,另一方面可以用于训练裁判模型,从而实现高精度的、自动化的可信赖大模型评测。
问题 5 :可归因问答与可归因 LLM 之间的关系
作者认为,LLM 输出的长文本回答,本质上是一个个陈述句组成的序列,而这些陈述句又可以等价于一个隐式的问答对(譬如,长文本 “恐龙最早生活在2.3亿年前。它们在三叠纪晚期开始繁衍……” 可以拆解为 “恐龙最早生活在2.3亿年前。” 和 “它们在三叠纪晚期开始繁衍。” 而 “恐龙最早生活在2.3亿年前。” 可以转换为一个问答对 “问:“第一批恐龙生活在什么时候?” --> 答:“2.3亿年前。””)
因此,可归因问答是整个可归因大模型技术里最简单、最核心的最小原子单元。如果在将可归因问答这种简单的场景下完成了系统性的指标设计、架构路线和评估方案,那么这些成果可以自然地延伸到更复杂的任务中。不过,在延伸的过程中可能存在更复杂的问题,比如:
边界判定:大模型生成的长文本回复里,到底哪些是常识(不需要加引用),哪些是事实断言(必须加引用)?
多源归因:模型写的一句非常复杂的长句子,可能需要同时引用许多不同的来源才能证实,这种多对多的引用怎么在工程上对齐?
3. 可归因问答的实现方法
3.1 架构
架构 1 :Retrieve-then-read (RTR)
RTR 模型先根据输入的原始问题 x ,从知识库中召回 k 个最相关的候选段落,接着第二阶段的模型从这 k 个段落中经过重排或精选得到的 P 个段落作为上下文输入,生成短答案 a ,同时,模型这 k 个候选段落中,挑出一个段落 A 作为支持这个答案的最终引用。
在本文中,作者选用 BM25 作为稀疏检索,GTR 作为稠密检索,FiD(Fusion-in-Decoding)作为生成器。
(稀疏检索基于字面上的精确对齐,BM25 是经典的代表,它基于统计学算法;稠密检索基于语义向量空间的相似度匹配)
架构 2 :Post-hoc retrieval
这一架构的系统先用一个 LLM 针对输入的原始问题 x 生成答案(一般用 few-shot 提示词方法,就是在提示词中给出几个输入输出示例),接着将问题和答案拼接起来,通过稀疏或稠密检索选出 k 篇最相关的段落。若 k > 1 ,就将得分最高的段落用作归因段落。
架构 3 :LLM-as-retriever
这一架构的系统用一个 LLM 同时生成答案以及归因语料的指针。与 RTR 模型不同的是,LLM-as-retriever 不采用稀疏或稠密检索,而是通过 提示词 + 微调 的方式来实现 “检索” 的。
3.2 监督方式
作者考虑了两种监督方式。
方式一:NQ-64
整个系统在训练或提示词阶段,仅仅只能使用 64 个从 Natural Questions 数据集里随机挑选出来的(问题/答案)对。
方式二:NQ-full
系统允许使用完整的 Natural Questions 数据集。在 RTR 流水线中,GTR 检索器和 FiD 生成器使用全量数据训练;在 Post-hoc retrieval流水线中,当遇到一个新的目标问题时,系统会用 BM25 去全量数据库里检索出跟这个问题字面最相似的 64 个样本,并把它们作为上下文长提示词输入 LLM 。
3.3 最好的系统
作者选取了 4 个在各自架构领域内 AIS 分数最高的系统 + 2 个变体来做实验。
系统一:Best RTR system
输入问题后,先用 GTR 检索出 50 个可能包含答案的候选段落,再用一个专门在 NQ 数据集上特训过的重排模型对这 50 个段落重排。FiD 在训练阶段用全部 50 个段落,但是在推理阶段可以只基于 top-1 段落,如此这个 top-1 段落自然成为归因段落。这里需要注意的是,推理阶段送入 FiD 的段落应当和归因阶段的候选段落相一致,这在后面会由实验结果来验证。
系统二:Best post-hoc retrieval system
输入问题后,先用 PaLM-540B 模型配合 BM25 算法检索出的 64 个样例做 few-shot 提示词,输出一个答案 a 。然后系统将原始问题和答案 a 拼接在一起,用 GTR 检索出最相关的 top-k = 50 个段落。最后将 “精准包含了 PaLM 生成的答案字符串” 的段落作为归因段落。
系统三:Best low-resource system
输入问题后,依然让 PaLM-540B 闭卷答题。提示词依然是那 64 个从 NQ 训练集里用 BM25 检索出来的的 Few-shot 问答对。但是事后检索从系统二的 GTR 换成了 BM25 。BM25 不需要任何监督训练或者微调,因此计算资源的开销大幅减少了。最后的归因段落选取方式和系统二是一样的。
系统四:Best LLM-as-retriever system
这个系统提供了更加端到端的方式。作者对 PaLM-540B 的参数进行了微调(而不是仅仅使用 Prompt ),使得模型对于输入一个纯文本问题,能给出答案字符串以及对应的维基百科网址。当大模型写出一个 URL 后,系统会查询这个 URL 对应的整篇维基百科网页文本,然后用 BM25 计算一下网页文本里哪个段落跟原始问题最匹配,就把这个段落作为归因段落。
这里的微调采用了比较复杂的数据工程。采用了以下两部分数据构成一个混合数据集:
一个原生的 Natural Questions 训练集。
用一个在 SQuAD 数据集上训练好的问题生成模型,对着经过 “去上下文污染” 处理的维基百科句子生成大量模拟问题。
两个变体:AutoAIS reranked variants
用 AutoAIS 裁判模型作为重排模型来给出 AutoAIS 分数最高的段落。这个段落在 RTR 和 post-hoc retrieval 系统中均被当做归因段落。此外,在 RTR 系统中,这个段落还被用来做 FiD 的最终推理。需要注意的是,如果将 AutoAIS 作为了一个系统组件,那么最后评估这个系统可归因能力时,就不能使用 AutoAIS 了,需要使用人类评审者的打分。
4. 具体的实验
4.1 实验 1 :几大系统 + 三个指标

AIS 是人类评审者的打分,AutoAIS 是自动化指标,EM(Exact Match,一种匹配输出字符串和真值标签字符串是否一模一样的指标)是为了对齐前人工作设计的指标,不衡量可归因能力。
实验一结论:
在人类打分(AIS)上表现最好的系统,并不一定能在传统指标(EM)上拿到最高分。这一方面固然有作者做实验时没有特意去用指令微调或思维链来刷高 EM 分数的缘故,不过也证明了只看 EM 准确率来评估 RAG/可归因系统存在巨大的局限性。
Best RTR 系统只用了一个 3B 参数的 T5-XL 小模型,就取得了最高的归因性能,击败了拥有 540B 参数的 PaLM 巨型模型。但是 RTR 方法极度依赖海量显式监督数据以及严重受限于检索瓶颈的特点也成为其短板。
Best Post-hoc 系统在 EM 上表现相对较高,且生成阶段不需要海量数据的微调(只需要 few-shot 提示词即可)。但是归因能力却远比 RTR 差,这说明“事后倒查引用”比 RTR 这种“看着文档抄答案”的归因难度要高得多。
Best Low Resource 只使用了稀疏检索,但在 AIS 和 AutoAIS 比起 Best Post-hoc 没有低太多。这对于一些难以提供监督数据的复杂信息搜寻场景来说是一个利好消息。
Best LLM-as-retriever 只依赖 LLM 做端到端生成提供 URL,再通过 URL 抓取网页文本做 BM25 检索,但是却 Best Low Resource 在 AIS 和 AutoAIS 的表现上几乎持平,这个成绩已经非常有前景了。不过它和 Post-hoc 一样,无法摆脱对超大规模参数的底座模型的依赖。
4.2 实验 2 :针对 RTR 和 post-hoc 系统的消融实验


实验二结论:
稠密检索(GTR)全面超过稀疏检索(BM25)。
RTR 在训练 FiD 时,让它看 50 个例子(T=50)对于冲击高分是必不可少的。
RTR 的生成与归因必须匹配。如果在生成答案时让 FiD 看了 50 篇文章(P=50),那么在给出引用时,必须把这 50 篇文章全部纳入归因考量范围(A=50)。
Post-hoc 在事后倒查(Post-hoc)引用时,在检索出来的 50 篇候选文档(k=50)里去搜寻包含答案的段落,其效果显著优于只看检索器排在第 1 名(k=1)的文档。
在 Post-hoc 系统中,当我们允许系统利用完整的 NQ-full 数据库去给当前问题匹配最相似的 64 个 Few-shot 例子时,模型的 Exact Match 显著增长,但对 AIS 的提升却微乎其微。
虽然现有的 SOTA 方法用来做可归因问答已经勉强够用,但提升空间依然巨大,尤其是怎么在“事后倒查(Post-hoc)”的场景下,提升大模型生成的答案的可归因能力,是一块难啃的骨头。
4.3 实验 3 :AIS 和 EM、AutoAIS 的关系

实验三结论:
EM(精确匹配)与人类 AIS 指标的皮尔逊相关系数只有 0.45 ,这指出了依赖死板的“标准答案语料库 + 字符串硬匹配”的传统评测方法,在未来的可归因问答研究中具有很强的局限性。
AutoAIS 与人类真实 AIS 打分的皮尔逊相关系数高达 0.96 ,这说明在不把 AutoAIS 作为一个系统组件的前提下,它是人类 AIS 打分的一个很好的平替品。
然而,当我们考察一个给定系统中单独的样例,AutoAIS 与人类真实 AIS 打分的相关性会大幅降低且充满波动。因此,AutoAIS 只适合评价一个系统整体 “可归因能力” 的强弱,而不适合用来判断某一个单独的用例 “是否满足可归因性” 。
这也解释了为什么加入 AutoAIS 作为重排器的模型变体在相关性图表里成了离群值。因为在 AutoAIS 眼中的最佳段落未必是人类眼中最佳的段落。
5. 结论
在这篇研究中,作者确立了一项旨在开发可归因大语言模型(Attributed LLMs)的研究议程。作者认为在信息检索与搜寻的应用场景中,可归因能力对于基于 LLM 的技术而言是至关重要的。
为了明晰如何在这一领域取得突破,作者定义并研究了一项全新的任务——可归因问答(Attributed QA)。该任务以可归因性指标(AIS)原则为评估基石,并利用一系列业界顶尖的(SOTA)组件构建系统,从而对各种架构设计进行了基准测试。
作者坚持将人类真实打分(Human rating)作为系统评估的黄金标准,但同时也发现,AutoAIS 在系统(全局)层面上与人类的评判高度相关。这使得它在无法承受人工评估成本的场景下,非常有希望成为一种合格的开发评测指标,甚至可以作为一种带有噪声的训练监督信号。
在作者的评测中,“先检索再阅读”(Retrieve-then-read, RTR)路线取得了最强劲的性能表现,但它的代价是需要对传统训练集进行充分的全监督利用。相比之下,“事后倒查归因”(Post-hoc attribution)虽然挑战重重,但依然展现出作为未来研究可行架构的巨大潜力。