AiPaper
论文状态:已完成

CrAM: Credibility-Aware Attention Modification in LLMs for Combating Misinformation in RAG

发表:2025/04/11
原文链接
价格:0.10
已有 3 人读过
本分析由 AI 生成,可能不完全准确,请以原文为准。

TL;DR 精炼摘要

本文提出可信度感知注意力修改(CrAM)方法,通过调整大型语言模型关键注意力头的权重,减少低可信度文档对检索增强生成(RAG)的负面影响。实验证明,CrAM在多种模型和数据集上显著提升了对错误信息的抵抗力,优于监督微调。

摘要

CrAM: Credibility-Aware Attention Modification in LLMs for Combating Misinformation in RAG Boyi Deng 1 , Wenjie Wang 2 * , Fengbin Zhu 2 * , Qifan Wang 3 , Fuli Feng 1 1 University of Science and Technology of China, 2 National University of Singapore, 3 Meta AI dengboyi@mail.ustc.edu.cn, wqfcr@fb.com, { wenjiewang96, zhfengbin, fulifeng93 } @gmail.com Abstract Retrieval-Augmented Generation (RAG) can alleviate hallu- cinations of Large Language Models (LLMs) by referenc- ing external documents. However, the misinformation in ex- ternal documents may mislead LLMs’ generation. To ad- dress this issue, we explore the task of “credibility-aware RAG”, in which LLMs automatically adjust the influence of retrieved documents based on their credibility scores to counteract misinformation. To this end, we introduce a plug-and-play method named Cr edibility-aware A ttention M odification (CrAM). CrAM identifies influential attention heads in LLMs and adjusts their attention weights based on the credibility of the documents, thereby reducing the im- pact of low-credibility documents. Experiments on Natual Questions and TriviaQA using Llama2-13B, Llama3-8B, and Qwen1.5-7B show that

思维导图

论文精读

中文精读

1. 论文基本信息

1.1. 标题

CrAM: Credibility-Aware Attention Modification in LLMs for Combating Misinformation in RAG

1.2. 作者

Boyi Deng, Wenjie Wang, Fengbin Zhu, Qifan Wang, Fuli Feng

1.2.1. 作者所属机构

  • Boyi Deng, Fuli Feng: 中国科学技术大学 (University of Science and Technology of China)
  • Wenjie Wang, Fengbin Zhu, Qifan Wang: 新加坡国立大学 (National University of Singapore)
  • Qifan Wang: Meta AI (注意:原文中Qifan Wang同时列出了NUS和Meta AI,这里根据原文列出)

1.3. 发表期刊/会议

该论文以预印本 (arXiv) 形式发布,原文未明确指出已被接收的期刊或会议。

1.4. 发表年份

2023 (根据 arXiv 论文 ID 及其发布日期推断,虽然摘要中未明确列出,但其引用文献有2023和2024年的,可以判断为近期工作)。

1.5. 摘要

检索增强生成 (Retrieval-Augmented Generation, RAG) 是一种通过引用外部文档来缓解大型语言模型 (Large Language Models, LLMs) 幻觉 (hallucinations) 问题的方法。然而,外部文档中的错误信息 (misinformation) 可能会误导 LLMs 的生成。为了解决这个问题,本文探索了“可信度感知 RAG (credibility-aware RAG)”任务,其中 LLMs 根据检索到的文档的可信度分数 (credibility scores) 自动调整其影响,以对抗错误信息。为此,本文提出了一种即插即用 (plug-and-play) 的方法,名为可信度感知注意力修改 (Credibility-aware Attention Modification, CrAM)。CrAM 识别 LLMs 中有影响力的注意力头 (influential attention heads),并根据文档的可信度调整它们的注意力权重 (attention weights),从而减少低可信度文档的影响。在 Natural Questions 和 TriviaQA 数据集上,使用 Llama2-13B、Llama3-8B 和 Qwen1.5-7B 进行的实验表明,CrAM 将 LLMs 对错误信息污染的 RAG 性能提高了 20% 以上,甚至超越了监督微调 (supervised fine-tuning, SFT) 方法。

1.6. 原文链接

/files/papers/690cd61f0de225812bf9335e/paper.pdf (这是用户提供的本地文件路径,实际的 arXiv 链接通常为 https://arxiv.org/abs/2404.06809,但此处严格按照用户提供的链接进行填写。)

2. 整体概括

2.1. 研究背景与动机

大型语言模型 (LLMs) 在生成文本时常出现“幻觉 (hallucinations)”现象,即生成看似合理但与事实不符的内容。检索增强生成 (Retrieval-Augmented Generation, RAG) 是一种有效缓解幻觉问题的方法,通过从外部知识库中检索相关文档并作为参考来指导 LLM 的生成。然而,现有 RAG 方法面临一个关键挑战:如果外部知识库中包含错误信息 (misinformation),LLM 可能会被这些低可信度文档误导,从而生成不准确或不忠实于事实的响应。例如,微软的 Bing 曾因互联网上的错误信息而被误导。现有研究也表明,向 RAG 语料库中注入 LLM 生成的错误信息会显著降低 LLM 的性能。

传统的解决错误信息的方法通常是检测并过滤掉低可信度文档。但直接过滤可能导致相关重要信息的丢失,反而降低性能。鉴于可信度分数 (credibility scores) 测量技术的显著进步,但如何有效利用这些分数仍是未充分探索的领域。因此,迫切需要一种机制,使 LLMs 能够根据文档的可信度分数,智能地调整其对检索文档的关注程度。

2.2. 核心贡献/主要发现

本文的核心贡献在于提出了 CrAM (Credibility-aware Attention Modification) 方法,旨在解决 RAG 中错误信息污染问题,使 LLMs 能够在不进行额外微调的情况下,实现可信度感知生成。

2.2.1. 主要贡献

  • 探索非微调 (non-fine-tuning) 的可信度感知 RAG 任务: 本文首次探索了在不微调 LLMs 的前提下,解决错误信息污染问题的可信度感知 RAG 任务,旨在缓解计算资源和训练数据限制。
  • 提出即插即用 (plug-and-play) 方法 CrAM: CrAM 能够识别 LLMs 中对生成结果有关键影响的注意力头 (influential attention heads),并根据文档的可信度分数调整这些注意力头的权重,从而降低低可信度文档的影响。
  • 广泛的实验验证: 在 Natural Questions (NQ) 和 TriviaQA 两个开放域问答数据集上,使用 Llama2-13B、Llama3-8B 和 Qwen1.5-7B 三种主流 LLMs 进行实验。实验结果在理想可信度分数和 GPT 生成的可信度分数两种设置下均验证了 CrAM 的优越性。

2.2.2. 关键发现

  • CrAM 显著提升了 RAG 在错误信息污染场景下的性能,准确率 (Exact Match, EM) 提高了 20% 以上。
  • CrAM 在大多数情况下甚至超越了需要监督微调 (Supervised Fine-Tuning, SFT) 的方法,如 CAG。
  • CrAM 对不同数量的低可信度文档具有鲁棒性,性能下降幅度远小于其他模型。
  • 通过消融实验验证了识别有影响力的注意力头和修改注意力权重的必要性。

3. 预备知识与相关工作

3.1. 基础概念

3.1.1. 大型语言模型 (Large Language Models, LLMs)

LLMs 是指参数量巨大(通常达到数十亿甚至数万亿)的深度学习模型,它们通过在海量文本数据上进行预训练,学习语言的模式、语法和语义。LLMs 擅长生成连贯、有意义的文本,可以执行问答、摘要、翻译等多种自然语言处理任务。然而,LLMs 存在“幻觉 (hallucinations)”问题,即生成的内容可能听起来真实但实际上是虚构或不准确的。

3.1.2. 检索增强生成 (Retrieval-Augmented Generation, RAG)

RAG 是一种结合了信息检索 (Retrieval) 和文本生成 (Generation) 的技术。它通过从外部知识库(如维基百科、数据库)中检索与用户查询相关的文档片段,然后将这些检索到的信息作为上下文输入给 LLM,指导 LLM 生成回答。RAG 的目的是让 LLM 的回答更准确、更可追溯,并减少幻觉,因为它有外部事实作为参考。

3.1.3. 错误信息 (Misinformation)

错误信息是指不准确或误导性的信息,它可能不是故意传播的。在 RAG 的语境中,外部知识库或检索到的文档中包含的错误事实、误导性陈述或虚假内容,都可能构成错误信息。

3.1.4. 可信度感知 RAG (Credibility-Aware RAG)

可信度感知 RAG 是本文提出的一种新的任务设定,其目标是让 LLMs 能够根据检索到的文档的可信度分数,智能地调整其对这些文档的依赖程度。高可信度文档应被赋予更高的权重,而低可信度文档的影响则应被降低,以确保生成的答案的准确性。

3.1.5. 注意力机制 (Attention Mechanism)

注意力机制是深度学习中,尤其是 Transformer 架构中的核心组成部分,它允许模型在处理序列数据时,动态地聚焦于输入序列中最重要的部分。在 LLM 中,注意力机制通过计算查询 (Query, Q)、键 (Key, K) 和值 (Value, V) 之间的相似度,为每个输入词元 (token) 分配不同的权重,从而决定该词元在生成下一个词元时应“关注”哪些其他词元。 其核心公式为: Attention(Q,K,V)=softmax(QKTdk)V \mathrm{Attention}(Q, K, V) = \mathrm{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V 其中:

  • QQ (Query): 当前要计算注意力的词元的表示。
  • KK (Key): 序列中所有词元的表示,用于与 QQ 进行匹配。
  • VV (Value): 序列中所有词元的表示,是加权求和的对象。
  • dkd_k: 键向量的维度,用于缩放,防止内积过大导致 softmax 梯度过小。
  • softmax\mathrm{softmax}: 将计算出的注意力分数归一化为概率分布。 该机制使得模型能够捕获输入序列中不同词元之间的依赖关系,并根据这些依赖关系调整对每个词元的关注程度。

3.1.6. 注意力头 (Attention Heads)

在 Transformer 架构中,多头注意力 (Multi-Head Attention) 机制并行地运行多个注意力机制(即“注意力头”)。每个注意力头独立地学习一组 Q, K, V 投影矩阵,并计算其自身的注意力。通过这种方式,不同的注意力头可以学习到不同的注意力模式或关注输入序列的不同方面,从而提供更丰富的表征能力。本文的 CrAM 方法正是通过识别并修改这些注意力头来发挥作用。

3.1.7. 监督微调 (Supervised Fine-Tuning, SFT)

SFT 是一种训练范式,指在大规模预训练的 LLM 的基础上,使用带有标签的特定任务数据集进行进一步训练。通过 SFT,LLM 可以适应特定的下游任务,例如问答、情感分析等。SFT 通常需要大量的计算资源和精心设计的数据集。

3.2. 前人工作

3.2.1. 错误信息检测 (Misinformation Detection)

  • 非 LLM 方法: 早期的工作通常依赖于训练特定模型来识别错误信息,例如使用 BERT (Devlin et al. 2019) 对文档可信度评分 (Kaliyar, Goswami, and Narang 2021) 或使用图神经网络 (Vaibhav, Mandyam, and Hovy 2019)。
  • LLM 方法: 近期趋势是利用 LLMs 本身进行错误信息检测,通常不需额外训练。例如,利用 GPT-4 (OpenAI et al. 2024) 进行文档可信度评分 (Pelrine et al. 2023),或使用 LLM 智能体 (agent) 进行迭代验证 (Quelle and Bovet 2024)。本文也采用了 LLMs 生成可信度分数的方式。

3.2.2. RAG 中的错误信息对抗 (Combating Misinformation in RAG)

  • 传统 RAG 的脆弱性: 已有研究指出 RAG 容易受到语料库中错误信息的污染,导致生成不期望的结果 (Zou et al. 2024; Pan et al. 2023b,a)。
  • 现有对抗方法:
    • CAR (Weller et al. 2024): 采用查询增强方案,检索更多文档后通过投票机制减轻错误信息影响。
    • RobustRAG (Xiang et al. 2024): 独立生成每个文档的 LLM 响应,再通过关键词或解码算法聚合结果。
    • SFT-based 方法 (Hong et al. 2024; Pan et al. 2024): 为检索到的文档分配可信度分数,并微调 LLM,使其能够利用这些分数进行生成。例如,CAG (Pan et al. 2024) 通过 SFT 训练 LLM 更好地理解文档的可信度差异。
    • CD2CD^2 (Jin et al. 2024): 训练两个 LLM 分别生成真实和误导性答案,以区分冲突信息。
  • 现有方法的局限性: CAR 和 RobustRAG 需要多轮模型推理,效率较低。SFT-based 方法需要额外的计算资源和精心设计的训练数据,限制了应用场景。

3.2.3. 因果追踪 (Causal Tracing)

因果追踪 (Meng et al. 2022) 是一种用于量化模型内部隐藏状态 (hidden states) 对生成特定答案的贡献的方法。它通过向隐藏状态添加噪声,然后比较生成目标答案的概率变化来评估贡献。本文的 CrAM 方法借鉴并修改了这一思想,将其应用于评估注意力头而不是隐藏状态的贡献。

3.3. 技术演进

LLM 的发展首先解决了生成文本的流畅性问题,但幻觉问题凸显。RAG 的出现旨在通过引入外部知识来增强 LLM 的事实性,但又带来了外部知识库中错误信息污染的新问题。早期的错误信息对抗方法侧重于检测和过滤,或者通过复杂的聚合策略。随后,有研究尝试通过监督微调 (SFT) 将可信度分数融入 RAG,但这带来了计算成本和数据准备的挑战。

本文的 CrAM 代表了该领域的进一步演进,它在不进行 SFT 的前提下,通过精细地操纵 LLM 内部的注意力机制,实现了可信度感知。这种“即插即用”的特性降低了应用门槛,并展现出优于某些 SFT 方法的性能,是 RAG 领域对抗错误信息污染的一个重要且实用的方向。

3.4. 差异化分析

CrAM 方法与上述前人工作的主要区别和创新点在于:

  • 非监督微调 (Non-SFT) 范式: 与 CAG (Pan et al. 2024) 等需要 SFT 的方法不同,CrAM 是一种即插即用 (plug-and-play) 的方法,无需额外训练 LLM,显著降低了计算资源和数据准备成本。这是其最核心的优势和创新点。
  • 注意力机制的精细化操纵: CrAM 不仅仅是简单地过滤文档,而是通过识别 LLM 内部的“有影响力注意力头 (influential attention heads)”,并根据文档的可信度分数,有选择性地调整这些特定注意力头的权重。这种方法利用了 Transformer 模型的内在机制,能够更细粒度地控制信息流。
  • 贡献度量化与选择: CrAM 提出了一种基于因果追踪 (causal tracing) 思想的机制,用于量化每个注意力头对生成错误答案的贡献,并选择贡献最大的头进行修改。这比简单地修改所有注意力头更有效且有理论依据。
  • 效率与性能的平衡: 相较于 CAR 和 RobustRAG 等需要多轮推理的方法,CrAM 在推理阶段的修改是相对轻量级的,同时在性能上超越了 SFT 方法,在效率和效果之间取得了更好的平衡。

4. 方法论

4.1. 方法原理

CrAM (Credibility-aware Attention Modification) 的核心思想是,鉴于注意力机制是 LLM 调节不同输入数据重要性的关键组件,可以通过修改注意力权重来实现可信度感知 RAG。具体来说,对于低可信度的文档,LLM 应该“给予”更少的注意力。此外,由于并非所有注意力头 (attention heads) 对模型输出的影响都相同,CrAM 进一步假设只有一部分注意力头对 LLM 使用错误信息生成不正确答案有较大的影响。因此,CrAM 的方法分为两步:首先,识别出这些有影响力的注意力头;然后,针对这些被识别出的注意力头,根据文档的可信度分数调整其注意力权重,以降低低可信度文档的影响。

4.2. 核心方法详解 (逐层深入)

CrAM 的整体流程如下图(原文 Figure 2)所示,可分为两主要步骤:1) 有影响力注意力头识别 (Influential Head Identification) 和 2) 注意力权重修改 (Attention Weight Modification)。由于注意力头识别过程涉及注意力权重修改,我们首先解释权重修改的步骤。

CrAM Workflow

图2:CrAM的整体工作流程。CrAM首先识别有影响力的注意力头,然后根据每个文档的可信度分数调整注意力权重。

4.2.1. 注意力权重修改 (Attention Weight Modification)

这一步骤旨在根据文档的可信度分数来降低低可信度文档对 LLM 生成结果的影响。

  1. 输入序列的构建与词元可信度分数计算: 对于 RAG 任务,用户查询 xx 和一组相关文档 D={d1,d2,,dn}\mathcal{D} = \{d_1, d_2, \dots, d_n\} 会被拼接起来,然后分词 (tokenize) 成一个词元序列 T(x,D)={t1,t2,,tm}\mathcal{T}(x, \mathcal{D}) = \{t_1, t_2, \dots, t_m\},其中 tkt_k 表示第 kk 个词元。 同时,对于每个文档 did_i,我们有其对应的可信度分数 sis_i。为了将这些分数应用于词元级别,并使其处于统一的范围内进行后续的缩放,首先需要对这些原始可信度分数进行归一化处理。 词元 tkt_k 的归一化可信度分数 sˉk\bar{s}_k 计算如下: sˉk={simin(S)max(S)min(S)if tk belongs to di1otherwise \bar { s } _ { k } = \left\{ \begin{array} { l l } { \frac { s _ { i } - \operatorname* { m i n } ( \mathcal { S } ) } { \operatorname* { m a x } ( \mathcal { S } ) - \operatorname* { m i n } ( \mathcal { S } ) } } & { \mathrm { i f ~ } t _ { k } \mathrm { ~ b e l o n g s ~ t o ~ } d _ { i } } \\ { 1 } & { \mathrm { o t h e r w i s e } } \end{array} \right. 其中:

    • S={s1,s2,,sn}\mathcal{S} = \{s_1, s_2, \dots, s_n\} 是所有文档的原始可信度分数集合。
    • min(S)\operatorname*{min}(\mathcal{S})max(S)\operatorname*{max}(\mathcal{S}) 分别是 S\mathcal{S} 中的最小值和最大值。
    • 如果词元 tkt_k 属于文档 did_i,则其归一化分数 sˉk\bar{s}_k 通过线性缩放映射到 [0, 1] 范围。
    • 如果词元 tkt_k 不属于任何文档(例如,它属于用户查询 xx),则其归一化分数 sˉk\bar{s}_k 被设置为 1,表示查询部分不应受到可信度调整的影响。 最终,整个词元序列 T(x,D)\mathcal{T}(x, \mathcal{D}) 对应的归一化可信度分数向量表示为 s=[sˉ1,,sˉm]R1×m\overline{\mathbf{s}} = [\bar{s}_1, \dots, \bar{s}_m] \in \mathbb{R}^{1 \times m}
  2. 注意力权重矩阵的修改: 对于 LLM 中的每一个注意力头 hh,其原始注意力权重矩阵表示为 Ah\mathbf{A}_h。 我们定义 (Ah)k(\mathbf{A}_h)_kAh\mathbf{A}_h 的第 kk 行向量,它表示序列中第 kk 个词元对所有其他词元的注意力权重。为了降低低可信度文档的影响,我们将 (Ah)k(\mathbf{A}_h)_k 与前面计算出的归一化可信度分数向量 s\overline{\mathbf{s}} 进行元素级乘法。 修改后的注意力权重矩阵 Ah\mathbf{A}_h^* 的第 kk 行向量 (Ah)k(\mathbf{A}_h)_k^* 计算如下: (Ah)k=Norm((Ah)ksˉ),k{1,,m} ( \mathbf { A } _ { h } ) _ { k } ^ { * } = \operatorname { N o r m } ( ( \mathbf { A } _ { h } ) _ { k } \odot { \bar { \mathbf { s } } } ) , k \in \{ 1 , \ldots , m \} 其中:

    • \odot 表示向量的元素级乘法 (element-wise multiplication)。这意味着原始注意力权重 (Ah)k(\mathbf{A}_h)_k 的每个元素都与其对应词元的归一化可信度分数 sˉj\bar{s}_j 相乘。如果某个词元属于低可信度文档,其 sˉj\bar{s}_j 接近 0,则对该词元的注意力权重就会被相应地缩小。
    • Norm()\operatorname{Norm}(\cdot) 表示 1\ell_1 归一化 (normalization),确保修改后的注意力权重向量的和仍然为 1。这是注意力机制的常见要求,维持概率分布的特性。

4.2.2. 有影响力注意力头识别 (Influential Head Identification)

这一步骤旨在找出那些对 LLM 使用错误信息生成不正确答案有主要影响的注意力头。CrAM 对因果追踪 (causal tracing) 方法进行了修改,以评估每个注意力头而不是隐藏状态的贡献。

  1. 设置实验条件: 给定一个 LLM LL、一个用户查询 xx、以及一组包含一个错误信息文档 dmisd_{mis} 和若干个正常文档 d1,d2,,dnd_1, d_2, \dots, d_n 的相关文档集 D={dmis,d1,d2,,dn}\mathcal{D} = \{d_{mis}, d_1, d_2, \dots, d_n\}。 同时,我们还知道一个由 dmisd_{mis} 支持的、针对查询 xx 的不正确答案 awronga_{wrong}

  2. 计算基线概率 P0P_0 首先,计算 LLM LL 在给定查询 xx 和文档集 D\mathcal{D} 的情况下,生成不正确答案 awronga_{wrong} 的概率。 P0=PL(awrongx,D) P _ { 0 } = P _ { L } ( a _ { w r o n g } \mid x , \mathcal { D } ) 其中:

    • PL()P_L(\cdot \mid \cdot): LLM LL 生成给定答案的条件概率。
  3. 计算修改后概率 P1P_1 接下来,对于 LLM 中的每一个注意力头 hh,我们都对其进行修改。修改方式是使用文档的可信度分数 S={0,1,1,,1}S = \{0, 1, 1, \dots, 1\} (即 dmisd_{mis} 的可信度为 0,其他正常文档的可信度为 1),按照 Section 4.2.1 中描述的注意力权重修改步骤,修改注意力头 hh 的权重矩阵。 然后,使用这个修改了注意力头 hh 的 LLM LhL_h^*,重新计算生成不正确答案 awronga_{wrong} 的概率: P1=PLh(awrongx,D) P _ { 1 } = P _ { L _ { h } ^ { * } } ( a _ { w r o n g } \mid x , \mathcal { D } ) 其中:

    • LhL_h^*: 表示原始 LLM LL 中,只有注意力头 hh 的注意力权重矩阵被修改后的模型。
  4. 量化贡献度 (Indirect Effect, IE): 注意力头 hh 对生成不正确答案的贡献度 (Indirect Effect, IE) 定义为: IEh=P0P1 \mathrm { I E } _ { h } = P _ { 0 } - P _ { 1 }

    • IEhIE_h 可以理解为:在修改注意力头 hh 后,生成不正确答案 awronga_{wrong} 的概率下降了多少。如果 IEhIE_h 值越大,说明修改该注意力头能更有效地抑制错误答案的生成,即该注意力头对传播错误信息的影响越大。
  5. 鲁棒性改进与头选择: 为了提高贡献度估计的鲁棒性,CrAM 使用一个不与测试数据重叠的小型数据集 {(x,awrong,D,S),}\{ (x, a_{wrong}, \mathcal{D}, S), \dots \} 来计算每个注意力头的平均 IE 值。 计算出所有注意力头的 IE 值后,按照 IE 值降序排列,选择排名靠前的注意力头作为有影响力的注意力头,这些头将在后续的推理阶段进行权重修改。

4.2.3. CrAM 整体工作流程 (CrAM Workflow)

总结 CrAM 的完整工作流程如下:

  1. 离线阶段:有影响力注意力头识别

    • 使用一个包含错误信息污染文档的小型数据集,根据 Section 4.2.2 描述的步骤,计算 LLM 中每个注意力头的平均 IE 值。
    • 根据 IE 值将所有注意力头降序排列,并选择排名靠前的作为有影响力的注意力头。这一步骤是离线完成的,只需一次性计算。
  2. 在线阶段:推理时的注意力权重修改

    • 在实际推理时,给定任何用户查询、相关文档及其可信度分数。
    • 针对第一步中识别出的有影响力的注意力头,使用 Section 4.2.1 描述的方法,根据文档的归一化可信度分数动态地修改它们的注意力权重。
    • LLM 使用这些修改后的注意力权重进行生成,从而显著减少低可信度文档的影响,提高生成答案的准确性。

5. 实验设置

5.1. 数据集

实验在两个开放域问答 (open-domain Question Answering, QA) 数据集上进行:

  • Natural Questions (NQ) (Kwiatkowski et al. 2019): 一个包含真实用户在 Google 搜索中提出的问题及其对应的维基百科答案的数据集。问题通常是事实性的,需要从长文本中抽取答案。
  • TriviaQA (Joshi et al. 2017): 一个大规模、远程监督的阅读理解挑战数据集,问题来源于各种在线琐事游戏和网站,通常涉及广泛的知识领域。

5.1.1. 文档准备

为了评估 CrAM 方法在错误信息污染下的性能,实验准备了高可信度文档和低可信度文档:

  1. 高可信度文档 (High-credibility documents):
    • 来源: 从 2018 年 12 月 30 日的维基百科转储 (Wikipedia dump) 中检索。
    • 检索流程:
      • 首先,使用 bge-large-en-v1.5 模型获取每个问题的一组候选文档。
      • 然后,使用 bge-reranker-large 模型对检索到的候选文档进行重排 (rank)。
      • 最终选择排名前四的文档作为高可信度文档。
  2. 低可信度文档 (Low-credibility documents, 即包含错误信息的文档):
    • 生成方式: 通过指令 LLM (即 gpt-3.5-turbo-0125) 生成,其中包含支持不正确答案的错误信息。
    • 具体实践: 对于每个问题,指示 LLM 生成一段新闻风格的文本,其中包含支持一个错误答案的错误信息。这些生成的内容被视为低可信度文档。
    • 数量: 对于每个问题,生成三个不同的低可信度文档,所有这些文档都支持同一个不正确答案。
  • 输入组合: 在实验中,低可信度文档与高可信度文档组合作为 LLM 的输入。这种方法避免了将低可信度文档直接注入到语料库中,从而更好地控制了低可信度文档的数量和影响,以便有效评估 LLM 的性能。

5.1.2. 可信度分数生成 (Credibility Scores Generation)

实验采用了两种不同的方式为文档分配可信度分数:

  1. 理想设置 (Ideal Setting):
    • 高可信度文档被赋予分数 10
    • 低可信度文档被赋予分数 1。 这种设置模拟了一个完美的可信度评估器,用于评估 CrAM 在最优条件下的上限性能。
  2. GPT 设置 (GPT Setting):
    • 使用 GPT (即 gpt-3.5-turbo-0125) 直接为每个文档生成可信度分数。
    • 这种设置更接近真实世界的场景,评估 CrAM 在实际、可能有噪声的可信度分数下的表现。

5.2. 评估指标

本研究主要采用问答任务中广泛使用的两个评估指标:

  1. 精确匹配 (Exact Match, EM)

    • 概念定义: EM 衡量模型生成的答案与标准答案是否完全一致。如果生成的答案与参考答案字符串完全相同(通常忽略大小写和标点符号),则计为 1,否则为 0。它是一个非常严格的指标,要求模型能够精确地生成正确答案。
    • 数学公式: EM=1Ni=1NI(predictioni=ground_truthi) \mathrm{EM} = \frac{1}{N} \sum_{i=1}^{N} \mathbb{I}(\mathrm{prediction}_i = \mathrm{ground\_truth}_i)
    • 符号解释:
      • NN: 测试样本的总数。
      • predictioni\mathrm{prediction}_i: 模型对第 ii 个问题的预测答案。
      • ground_truthi\mathrm{ground\_truth}_i: 第 ii 个问题的标准正确答案(真值)。
      • I()\mathbb{I}(\cdot): 指示函数,如果括号内的条件为真则返回 1,否则返回 0
      • predictioni=ground_truthi\mathrm{prediction}_i = \mathrm{ground\_truth}_i: 表示预测答案与真值完全匹配。
  2. F1 分数 (F1 Score)

    • 概念定义: F1 分数是精确率 (Precision) 和召回率 (Recall) 的调和平均值。在问答任务中,它通常通过将预测答案和标准答案视为词袋 (bag-of-words),然后计算它们之间重叠的词元来评估。F1 分数对于部分正确或答案中包含额外信息的预测更为宽容,因为它考虑了答案中的有效信息比例。
    • 数学公式: F1=2×Precision×RecallPrecision+Recall \mathrm{F1} = 2 \times \frac{\mathrm{Precision} \times \mathrm{Recall}}{\mathrm{Precision} + \mathrm{Recall}} 其中,精确率和召回率的计算如下: Precision=TPTP+FP \mathrm{Precision} = \frac{\mathrm{TP}}{\mathrm{TP} + \mathrm{FP}} Recall=TPTP+FN \mathrm{Recall} = \frac{\mathrm{TP}}{\mathrm{TP} + \mathrm{FN}} 对于问答任务中的 F1,TP、FP、FN 通常基于词元重叠来定义。假设预测答案集合为 PP (词元) 和标准答案集合为 GG (词元): Precision=PGP \mathrm{Precision} = \frac{|\mathrm{P} \cap \mathrm{G}|}{|\mathrm{P}|} Recall=PGG \mathrm{Recall} = \frac{|\mathrm{P} \cap \mathrm{G}|}{|\mathrm{G}|}
    • 符号解释:
      • TP\mathrm{TP} (True Positive): 真正例,指模型正确识别出的相关信息。
      • FP\mathrm{FP} (False Positive): 假正例,指模型错误识别出的不相关信息。
      • FN\mathrm{FN} (False Negative): 假反例,指模型未能识别出的相关信息。
      • PG|\mathrm{P} \cap \mathrm{G}|: 预测答案和标准答案中共有的词元数量。
      • P|\mathrm{P}|: 预测答案中的词元总数。
      • G|\mathrm{G}|: 标准答案中的词元总数。

5.3. 对比基线

实验将 CrAM 模型与四种类型的基线方法进行比较:

  1. 朴素 RAG (Naive RAG): 遵循标准的 RAG 流程,不包含任何对抗错误信息的机制。它直接将检索到的文档(包括高可信度和低可信度)输入给 LLM 进行生成。

  2. 基于提示 (Prompt Based): 这种方法通过在 LLM 的输入提示 (prompt) 中直接告知 LLM 文档的可信度分数。它在不进行额外训练的情况下,尝试让 LLM 自行理解和利用这些分数。

  3. 排除法 (Exclusion): 这种方法在将文档输入 LLM 之前,先将可信度分数低于某个阈值的文档排除掉。在理想设置下(可信度分数为二进制),此方法未被比较,因为理想可信度分数的二元性使得这种排除策略简单但可能效果不佳(例如,排除所有低可信度文档,但可能丢失重要信息)。

  4. CAG (Credibility-Aware Generation): 这是 Pan et al. (2024) 提出的一种基于监督微调 (SFT) 的方法。它通过将可信度分数和文档一同纳入提示中,对 LLM (Llama2-13B) 进行微调,以提升其理解文档可信度差异的能力。

    其中,朴素 RAG、基于提示和排除法属于非 SFT 方法,而 CAG 是 SFT-based 方法。

5.4. 超参数 (Hyperparameters)

  • 有影响力注意力头识别数据集大小: 除非另有说明,实验从每个数据集中随机选择 100 个数据点来计算所有注意力头的平均 IE (Indirect Effect) 值。
  • 最终修改的头部数量验证集大小: 使用另外 100 个来自每个数据集的数据点组成的验证集,以确定最终应包含多少个排名靠前的注意力头进行修改。

6. 实验结果与分析

6.1. 核心结果分析

6.1.1. 与非监督微调 (Non-SFT) 方法的比较

以下是原文 Table 1 和 Table 2 的结果,展示了 CrAM 与 Naive RAG、Prompt Based、Exclusion 等非 SFT 方法在理想和 GPT 设置下的性能比较。00√ 表示没有文档输入,模型直接生成;44√ 表示输入了四个高可信度文档;4+1x4√+1x 表示输入了四个高可信度文档和一个低可信度文档(包含错误信息)。

以下是原文 Table 1 的结果: 以下是原文 Table 1 的结果:

Model In-context corpus Method NQ TriviaQA
EM F1 score EM F1 score
Qwen1.5-7B 0√ Naive LLM 7.20 16.41 28.00 38.23
4√ Naive RAG 27.60 39.08 55.30 66.85
4+1x Naive RAG 10.50 20.71 25.00 35.63
Prompt Based 12.20 22.26 27.40 37.98
CrAM 29.10 (+16.90) 41.02 (+18.76) 52.90 (+25.50) 64.16 (+26.18)
Llama2-13B 0√ Naive LLM 20.30 28.59 50.40 57.56
4√ Naive RAG 28.90 39.98 62.50 71.03
4+1x Naive RAG 11.90 19.97 28.00 36.22
Prompt Based 12.50 22.94 23.10 32.70
CrAM 33.60 (+21.10) 44.62 (+21.68) 59.90 (+31.90) 67.11 (+30.89)
Llama3-8B 0√ Naive LLM 20.60 30.58 55.70 62.67
4√ Naive RAG 33.10 45.66 64.30 73.68
4√+1x Naive RAG 16.00 26.16 36.80 47.09
Prompt Based 29.90 39.69 53.50 63.01
CrAM 36.90 (+7.00) 48.45 (+8.76) 64.40 (+10.90) 73.49 (+10.48)

表1:理想设置下的主要结果。0√表示没有文档,模型直接提示;4√表示所有四个文档都从维基百科转储中检索;4√+1x表示四个高可信度文档(即从外部语料库检索)加上一个低可信度文档(即包含错误信息)。在4√+1x设置中,最佳性能被粗体显示。

以下是原文 Table 2 的结果:

Model In-context corpus Method NQ TriviaQA
EM F1 score EM F1 score
Qwen1.5-7B 0√ Naive LLM 7.20 16.41 28.00 38.23
4√ Naive RAG 27.60 39.08 55.30 66.85
4√+1x Naive RAG 10.50 20.71 25.00 35.63
Prompt Based 12.50 22.98 29.70 40.18
Exclusion 21.60 32.56 49.50 61.03
CrAM 23.10 (+1.50) 34.84 (+2.28) 52.10 (+2.60) 63.76 (+2.73)
Llama2-13B 0√ Naive LLM 20.30 28.59 50.40 57.56
4√ Naive RAG 28.90 39.98 62.50 71.03
4+1x Naive RAG 11.90 19.97 28.00 36.22
Prompt Based 11.20 21.62 20.50 30.09
Exclusion 23.70 34.00 54.40 62.37
CrAM 25.10 (+1.40) 35.56 (+1.56) 56.20 (+1.80) 64.03 (+1.66)
Llama3-8B 0√ Naive LLM 20.60 30.58 55.70 62.67
4√ Naive RAG 33.10 45.66 64.30 73.68
4+1x Naive RAG 16.00 26.16 36.80 47.09
Prompt Based 24.20 34.10 49.50 58.59
Exclusion 26.60 38.44 57.70 67.33
CrAM 30.70 (+4.10) 41.71 (+3.27) 62.20 (+4.50) 70.70 (+3.37)

表2:GPT设置下的主要结果。0√表示没有文档,模型直接提示;4√表示所有四个文档都从维基百科转储中检索;4√+1x表示四个高可信度文档(即从外部语料库检索)加上一个低可信度文档(即包含错误信息)。在4√+1x设置中,最佳性能被粗体显示。

主要观察结果:

  • CrAM 显著优于非 SFT 方法: 在理想设置 (Table 1) 下,CrAM 在所有三个 LLMs (Qwen1.5-7B, Llama2-13B, Llama3-8B) 和两个数据集 (NQ, TriviaQA) 上均显著优于 Naive RAG 和 Prompt Based 方法。例如,在 TriviaQA 上,Llama2-13B 的 CrAM 比 Prompt Based 在 EM 上高出 31.90%。这表明 CrAM 能够有效地对抗错误信息污染。
  • CrAM 在 GPT 设置下仍有效: 在 GPT 生成的可信度分数设置 (Table 2) 下,CrAM 同样在所有模型和数据集上超越了所有非 SFT 对比方法,验证了其在更现实场景下的有效性。
  • 排除法 (Exclusion) 的表现: 在 GPT 设置下,排除法表现优于 Naive RAG 和 Prompt Based,但通常不及 CrAM。这可能是因为排除法简单地丢弃了整个文档,可能导致信息损失,而 CrAM 则是更精细地调整注意力权重。
  • CrAM 的特殊优势: 值得注意的是,在理想设置下,CrAM 模型在 4+1x4√+1x 的情况下,有时甚至能超越 44√ 的 Naive RAG。这可能是因为生成的错误信息除了肯定不正确信息外,也可能否定了正确信息(例如“第一个获得诺贝尔物理学奖的不是伦琴,而是爱因斯坦”),这使得 LLM 能够重新利用被错误信息否定的正确信息。

6.1.2. 与监督微调 (SFT) 方法的比较

以下是原文 Figure 3 的结果:

CrAM vs CAG-13B

图3:在理想设置下,CrAM和CAG-13B在不同数量包含错误信息的文档下的性能比较。

主要观察结果:

  • 为了公平比较,实验只将基于 Llama2-13B 的 CrAM 模型与 CAG-13B (同样基于 Llama2-13B) 进行了比较。
  • CrAM 优于 SFT 方法: 如图 3 所示,当低可信度文档数量从 1 增加到 3 时,CrAM 模型在 F1 分数上持续显著优于 CAG-13B 模型。这进一步证明了 CrAM 的有效性,甚至超越了需要大量计算资源和训练数据的 SFT 方法。

6.2. 深入分析

6.2.1. 低可信度文档数量的影响

以下是原文 Figure 4 的结果:

Misinformation document count effect

图4:NQ数据集上,不同数量包含错误信息的文档下,性能变化情况。左侧为理想设置,右侧为GPT设置。

主要观察结果:

  • 实验使用 Llama3-8B 模型在 NQ 数据集上进行,将低可信度文档的数量从 1 增加到 3,同时保持高可信度文档数量为 4。
  • CrAM 的鲁棒性: CrAM 模型在理想和 GPT 设置下,当低可信度文档数量增加时,其性能始终优于其他对比模型。
  • 性能下降幅度较小: 与其他模型相比,CrAM 模型在低可信度文档数量增加时,性能下降的幅度要小得多。这表明 CrAM 对不同程度的错误信息污染具有更强的鲁棒性。

6.2.2. 数据集大小对注意力头选择的影响

以下是原文 Figure 5 的结果:

Dataset size for head selection effect

图5:NQ和TriviaQA数据集上,用于确定有影响力注意力头的数据集大小对性能的影响。

主要观察结果:

  • 实验分析了用于识别有影响力注意力头的数据点数量对模型性能的影响。
  • 影响较小: 尽管在 NQ 和 TriviaQA 数据集上,性能随着数据集大小的变化而略有波动,但最大 EM 差异仅为 4%。这表明用于选择有影响力注意力头的数据集大小对最终模型性能的影响较小,即使使用相对较小的数据集也能有效地识别这些头。

6.2.3. 选择的注意力头数量分析

以下是原文 Figure 6 的结果:

Number of selected attention heads effect

图6:在理想设置下,NQ数据集上,选择不同数量的注意力头对性能的影响。

以下是原文 Figure 7 的结果:

IE density distribution

图7:Llama3-8B所有注意力头的IE密度分布。

主要观察结果:

  • 实验分析了调整选择的注意力头数量对性能的影响。
  • 极端数量的影响: 当选择的注意力头数量接近 0 或最大值(例如 1024)时,模型性能急剧下降。
  • 中间范围的稳定性: 当选择的注意力头数量在中间范围内时,对性能的影响较小。
  • IE 分布解释: 通过分析 Llama3-8B 所有注意力头的 IE (Indirect Effect) 密度分布 (Figure 7),发现 IE 值近似于以 0 为中心的正态分布,大多数值集中在 0 附近。这表明大多数注意力头对模型性能的影响很小,只有那些 IE 值远离 0 (无论是正值还是负值) 的注意力头才对模型性能有显著影响。因此,选择中间数量的有影响力注意力头是合理的。

6.2.4. 消融实验 (Ablation Study)

以下是原文 Table 3 的结果:

Model Method NQ TriviaQA
EM EM
Qwen1.5-7B CrAM 29.10 52.90
CrAM-all 27.20 (-1.90) 50.60 (-2.30)
Naive RAG 10.50 (-18.60) 25.00 (-27.90)
Llama2-13B CrAM 33.60 59.90
CrAM-all 29.50 (-4.10) 59.50 (-0.40)
Naive RAG 11.90 (-21.70) 28.00 (-27.90)
Llama3-8B CrAM 36.90 64.40
CrAM-all 22.40 (-14.50) 51.50 (-12.90)
Naive RAG 16.00 (-20.90) 36.80 (-27.60)

表3:在理想设置下,使用4√+1x(即四个高可信度文档加上一个低可信度文档)的消融研究结果。

主要观察结果:

  • CrAM-all (移除头部选择): CrAM-all 是 CrAM 的变体,它移除了有影响力注意力头的选择机制,而是对 LLM 中的所有注意力头都应用注意力权重修改。
    • 结果显示,CrAM-all 的性能相较于完整的 CrAM 模型有显著下降。例如,Llama3-8B 在 NQ 上下降了 14.5%,在 TriviaQA 上下降了 12.9%。
    • 这表明识别有影响力的注意力头是必要的,并非所有注意力头都需要或应该被修改。有选择性地修改能够更精准地提升性能。
  • Naive RAG (移除权重修改): 如果禁用 CrAM 中的注意力权重修改机制,模型就退化为 Naive RAG 方法。
    • 结果显示,与 CrAM 模型相比,Naive RAG 的性能在所有三个 LLM 上都出现了显著下降。例如,在 TriviaQA 数据集上,所有三个 LLM 的性能下降超过 27.5%。

    • 这验证了修改注意力权重并结合文档可信度分数对于对抗错误信息的有效性至关重要。

      这些消融实验有力地证明了 CrAM 模型设计中,识别有影响力注意力头和进行注意力权重修改这两个核心组件的合理性和必要性。

7. 总结与思考

7.1. 结论总结

本文介绍了 CrAM (Credibility-aware Attention Modification),一个为 RAG 设计的即插即用 (plug-and-play) 方法,旨在使大型语言模型 (LLMs) 能够根据检索文档的可信度自动调整其影响。CrAM 的核心在于其两阶段策略:首先,它利用扩展的因果追踪 (causal tracing) 方法识别 LLMs 中对错误信息传播具有关键影响力的注意力头 (influential attention heads);其次,在推理时,它根据文档的归一化可信度分数,精细地调整这些被识别出的注意力头的注意力权重,从而有效抑制低可信度文档对 LLM 生成结果的负面影响。

通过在 Natural Questions (NQ) 和 TriviaQA 两个开放域问答数据集上,使用 Llama2-13B、Llama3-8B 和 Qwen1.5-7B 三种主流 LLMs 进行的广泛实验,CrAM 展现了其卓越的性能。在理想和 GPT 生成可信度分数两种设置下,CrAM 相较于朴素 RAG (Naive RAG) 方法,在精确匹配 (EM) 性能上提高了 20% 以上。更值得注意的是,CrAM 在大多数情况下甚至超越了需要监督微调 (SFT) 的基线方法(如 CAG),突显了其在不牺牲性能的情况下,具备更高的效率和更低的部署成本。消融实验进一步验证了识别影响力注意力头和动态调整其权重这两项机制的必要性。

7.2. 局限性与未来工作

  • 可信度分数获取的挑战: CrAM 的有效性高度依赖于高质量的文档可信度分数。虽然本文在 GPT 设置中使用了 LLM 生成的可信度分数,但真实世界中获取准确、全面的可信度分数仍然是一个挑战。如果可信度分数本身存在偏差或不准确,可能会影响 CrAM 的性能。

  • 对现有 LLM 架构的依赖: CrAM 是基于 Transformer 架构的注意力机制进行修改的。对于未来可能出现的新型 LLM 架构,CrAM 的方法可能需要重新设计或适应。

  • 生成的错误信息类型: 本文的低可信度文档是通过 prompting LLM 生成新闻风格的错误信息。不同类型或更复杂的错误信息(例如,半真半假、混淆视听)可能对模型产生不同影响,CrAM 的鲁棒性可能需要进一步测试。

  • 理论解释的进一步深入: 尽管通过 IE 密度分布图分析了注意力头的重要性,但对这些“有影响力”的注意力头具体学习了什么模式,以及它们为何对错误信息如此敏感,仍有待更深入的理论分析和解释。

    未来工作可以包括:

  • 集成更强大的可信度评估器: 探索将 CrAM 与更先进、更鲁棒的文档可信度评估器结合,以提高其在真实世界场景中的性能。

  • 动态阈值或自适应选择机制: 针对选择多少个有影响力的注意力头进行修改,可以开发更智能的动态选择机制,而非固定一个数量,以适应不同任务和模型。

  • 扩展到多模态 RAG: 将可信度感知机制扩展到处理多模态信息(如图像、视频)的 RAG 系统中。

  • 评估不同类型错误信息的影响: 深入研究 CrAM 对不同类型、复杂度的错误信息的抵抗能力,并进行相应优化。

7.3. 个人启发与批判

  • 非侵入式修改 LLM 行为的潜力: CrAM 最重要的启发在于它提供了一种“即插即用”的方式来修改 LLM 的行为,而无需进行昂贵的微调。这对于那些无法负担大规模 SFT 成本,但又希望定制 LLM 行为的开发者和研究者来说,具有巨大的实用价值。它证明了通过巧妙地利用 LLM 内部的注意力机制,可以在不改变模型参数的情况下实现复杂的功能调整。
  • LLM 内部机制的可解释性与可控性: 本文对注意力头进行因果追踪和选择,不仅提升了模型性能,也为我们理解 LLM 内部决策过程提供了一个切入点。这暗示了 LLM 可能存在一些“薄弱环节”或“关键神经元”,通过识别和干预这些点,可以实现对模型行为更精准的控制和调整。这种对“有影响力注意力头”的识别,为 LLM 的可解释性研究开辟了新的路径。
  • 批判性思考:对可信度分数的依赖
    • 外部依赖的风险: 尽管 CrAM 很好地解决了如何利用可信度分数的问题,但其性能的上限和稳定性仍受限于外部可信度评估器的质量。如果可信度评估器本身容易被攻击或产生错误,CrAM 的效果将大打折扣。未来的研究可能需要探索如何使 LLM 具备一定程度的“自我可信度评估”能力,减少对完全外部输入的依赖。
    • “真假”的模糊性: 在现实世界中,信息的“真假”往往不是简单的二元判断,可能存在灰色地带、观点差异或时间敏感性。如何为这类复杂信息分配可信度分数本身就是一个难题。CrAM 假设可信度分数是明确的,但实际应用中需要更复杂的机制来处理这种模糊性。
  • 信息损失与抑制的权衡: CrAM 选择抑制低可信度文档的影响,而不是完全排除。这是一种更精细的策略,因为它可能保留了低可信度文档中包含的少量有用信息。然而,如何确定最佳的抑制程度,以及在何种情况下完全排除更优,仍然是一个值得深入研究的权衡问题。例如,如果一个低可信度文档中包含关键但被错误信息掩盖的事实,过于强烈的抑制可能会导致信息丢失。

相似论文推荐

基于向量语义检索推荐的相关论文。

暂时没有找到相似论文。