ARC-JSD: Attributing Response to Context via Jensen-Shannon Divergence Driven Mechanistic Study¶
会议: NeurIPS 2025
arXiv: 2505.16415
代码: https://github.com/ruizheliUOA/ARC_JSD
领域: RAG / 可解释性
关键词: 上下文归因, Jensen-Shannon散度, 机制可解释性, RAG幻觉, Logit Lens
一句话总结¶
ARC-JSD 提出基于 Jensen-Shannon 散度的 RAG 上下文归因方法——通过比较有/无特定上下文句子时模型输出分布的 JSD 差异,无需微调/梯度计算即可定位回答所依赖的上下文,计算效率比 baseline 快 3 倍,Top-1 归因准确率平均提升 10.7%,并通过 Logit Lens 揭示归因相关的注意力头集中在高层。
研究背景与动机¶
- 领域现状:RAG 系统将检索到的上下文注入 LLM 以减少幻觉,但生成的回答具体依赖上下文的哪一部分缺乏可靠的归因方法。
- 现有痛点:ContextCite 需要多次扰动采样,ALTI-Logit 需要逐层梯度计算,MIRAGE 需要代理模型——都计算昂贵。更重要的是,缺乏对 RAG 模型内部"如何使用上下文"的机制理解。
- 核心矛盾:归因需要对每个上下文句子评估其影响,但逐句完全重推理太慢;需要一种免训练、免梯度、高效的归因方法。
- 本文要解决什么? (a) 提供计算高效且准确的上下文归因方法;(b) 揭示模型内部哪些组件(注意力头/MLP 层)负责上下文归因。
- 切入角度:JSD 是有界、对称、可直接从 logits 计算的分布距离度量。通过比较完整上下文和去除某句后的输出分布来衡量该句的贡献。
- 核心 idea 一句话:逐句消融上下文 → 计算输出分布的 JSD 变化 → JSD 最大的句子就是回答最依赖的上下文 + Logit Lens 揭示归因机制。
方法详解¶
整体框架¶
输入:查询 \(Q\) + 上下文 \(C = \{c_1, ..., c_n\}\) + 模型回答 \(R\) → 对每个 \(c_i\),构建消融上下文 \(C_{\text{ABLATE}}(c_i) = C \setminus \{c_i\}\) → 计算 \(\text{JSD}(c_i) = \sum_{j=1}^{|R|} \text{JSD}(P_{LM}(r_j|C,Q) \| P_{LM}(r_j|C_{\text{ABLATE}}(c_i),Q))\) → JSD 最高的 \(c_i\) 即归因结果。
关键设计¶
- JSD 归因计算:
- 做什么:量化每个上下文句子对回答的贡献
- 核心思路:对每个生成 token \(r_j\),比较完整上下文和消融上下文下的输出概率分布。JSD 有界 \([0, \log 2]\)、对称、可直接从 softmax logits 计算。累积所有 token 的 JSD 作为该句子的贡献分数
-
设计动机:相比 KL 散度(无界、不对称)、TV 距离(太粗糙)、Wasserstein(\(O(V^3)\) 复杂度),JSD 是最平衡的选择
-
Logit Lens 机制分析:
- 做什么:定位负责上下文归因的内部组件
- 核心思路:对每个注意力头和 MLP 层单独计算 JSD(消融最高贡献句子后的变化)。\(\text{JSD}_{\text{Attn}}^{\ell,h}\) 和 \(\text{JSD}_{\text{MLP}}^{\ell}\) 分别量化各组件的归因敏感度。语义增益指标交叉验证(余弦相似度变化 vs JSD 排名的 Spearman 相关)
-
设计动机:发现归因相关的注意力头集中在中高层(非最底层也非最顶层),与"信息检索→决策"的处理流程一致
-
幻觉缓解应用:
- 做什么:用 JSD 分数作为置信度门控减少幻觉
- 核心思路:当最高 JSD 分数低于阈值时(回答对任何上下文依赖都弱),判定为幻觉高风险并拒绝回答
- 设计动机:幻觉率从 13.4%→8.2%(降 39%),同时 Factual F1 几乎不变(76.1→75.9)
损失函数 / 训练策略¶
- 无训练方法,纯推理时计算
- 计算复杂度 \(O(2PT|C|^2)\),比 ContextCite-32 在长上下文时快 3 倍
实验关键数据¶
主实验(Top-1 归因准确率)¶
| 方法 | TyDi QA | Hotpot QA | MuSiQue | 平均提升 |
|---|---|---|---|---|
| ContextCite | baseline | baseline | baseline | — |
| ALTI-Logit | — | — | — | — |
| ARC-JSD | — | — | — | +10.7% |
在 Qwen2-1.5B/7B-IT, Gemma2-2B/9B-IT 上评测。
幻觉缓解¶
| 设置 | 幻觉率 | Factual F1 |
|---|---|---|
| 无门控 | 13.4% | 76.1% |
| JSD 门控 | 8.2% | 75.9% |
| 随机门控 | 12.7% | 69.4% |
消融实验¶
| 实验 | 发现 |
|---|---|
| 消融 Top-10 JSD 注意力头 | 准确率显著下降(平均 JSD 变化 2.23±0.12) |
| 消融随机 10 个头 | 变化小(1.53±0.76) |
| JSD vs 语义增益 Spearman 相关 | 0.67-0.79(p<0.01),验证两种指标一致 |
| 扩展到 LLaMA-3.1-8B / Qwen3-80B | 保持优势 |
关键发现¶
- 归因相关注意力头集中在中高层,而非底层或顶层——符合"先检索后决策"的信息处理直觉
- MLP 层在中间层也有显著的归因贡献——说明上下文信息不仅通过注意力传播
- Token 级 JSD 分析揭示关键实体 token(如人名、数字)的 JSD 最高——验证了方法的合理性
- JSD 门控比随机门控有效得多(8.2% vs 12.7% 幻觉率),说明 JSD 确实捕获了归因质量
亮点与洞察¶
- JSD 选择非常理想:有界+对称+高效+可微,是分布比较度量中极少数同时满足这些性质的
- 机制分析 + 实用方法的结合:既有对模型内部工作原理的深入理解,又直接产出可用的归因方法和幻觉缓解策略
- Token 级 JSD 可视化非常直观:直接看到"哪个 token 最依赖上下文",对调试 RAG 系统很有价值
局限性 / 可改进方向¶
- 层级分析不到神经元粒度——用 SAE 探针可能更细
- 未探索 RAG 之外的应用(如成员推理攻击)
- 主要在中小模型上实验,超大模型的 scaling 行为未知
相关工作与启发¶
- vs ContextCite: 需要多次扰动采样且有 \(O(|C|^2/32)\) 的额外开销,ARC-JSD 更直接
- vs ALTI-Logit: 需逐层梯度,慢 \(|R| \cdot L / |C|\) 倍
- vs 注意力权重归因: 注意力权重不等于因果贡献,JSD 更可靠
评分¶
- 新颖性: ⭐⭐⭐⭐ JSD 归因 + Logit Lens 机制分析的结合新颖且自然
- 实验充分度: ⭐⭐⭐⭐⭐ 3 基准 + 4 模型 + 机制分析 + 幻觉缓解 + 因果消融 + Token 级分析
- 写作质量: ⭐⭐⭐⭐⭐ 方法动机清晰,度量选择论证充分
- 价值: ⭐⭐⭐⭐⭐ 为 RAG 可解释性和幻觉缓解提供了高效实用的工具