跳转至

ActiShade: Activating Overshadowed Knowledge to Guide Multi-Hop Reasoning in Large Language Models

会议: AAAI 2026
arXiv: 2601.07260
代码: 暂无
领域: LLM推理 / 检索增强生成
关键词: 知识遮蔽、多跳推理、检索增强生成、高斯扰动检测、对比学习检索器

一句话总结

提出ActiShade框架,通过高斯噪声扰动检测LLM在多跳推理中被"遮蔽"的关键短语,结合定制对比学习检索器获取补充文档,迭代重构查询以减少知识遮蔽导致的错误累积,在HotpotQA/2WikiMQA/MuSiQue上显著超越DRAGIN等SOTA。

背景与动机

多跳推理需要LLM整合多个条件才能正确回答问题。现有多轮RAG方法(如IRCoT、Iter-RetGen、DRAGIN)依赖LLM生成的内容作为下一轮检索查询,但LLM在生成时会出现知识遮蔽(Knowledge Overshadowing)——查询中的某些关键条件被其他主导条件所遮蔽,导致生成内容不完整或不准确。例如,查询中同时出现"Te Deum in D Major"和"Gloria in D Major"时,前者作为主导条件可能遮蔽后者,LLM只关注了Te Deum而忽略Gloria,导致检索到无关文档,后续迭代中错误不断累积。

这个问题在多跳场景中尤为严重,因为推理链的每一步都依赖上一步的输出——一旦某一步的关键信息被遮蔽,后续所有步骤都会偏离正轨。现有方法要么简单地用LLM输出做查询(Iter-RetGen),要么分解问题为子问题(SelfASK),但都没有直接解决LLM在生成过程中对条件的选择性忽视。

核心问题

如何检测并激活LLM在多跳推理中被遮蔽的知识,使得多轮检索能够补充被忽视的关键信息,从而减少错误累积?

这个问题重要在于:(1) 知识遮蔽是LLM的固有缺陷,不是简单的幻觉问题——它是LLM对输入中多个条件的注意力分配不均导致的;(2) 在多轮迭代中这种偏差会指数级放大;(3) 现有方法缺少对这一现象的针对性处理机制。

方法详解

整体框架

ActiShade是一个迭代式多轮检索框架,每轮包含三个模块: 1. 知识遮蔽检测(GaP):给定当前查询,检测哪个关键短语被LLM忽视 2. 基于遮蔽短语的检索:将查询+遮蔽短语拼接送入训练过的检索器,找到补充文档 3. 查询重构:基于检索到的文档让LLM生成新查询,用于下轮迭代

迭代终止条件:LLM判断当前查询已是单跳问题(再做一轮检索即可),或达到最大迭代次数。最后将初始问题和所有迭代中检索到的相关文档一起送入LLM得到最终答案。

关键设计

  1. GaP(Gaussian Perturbation-based Detection)
  2. Step 1 关键短语提取:用SpaCy提取命名实体和有意义的token(NOUN/ADJ/VERB/PROPN/NUM/ADV),去掉停用词,得到候选关键短语集合 \(P=\{p_1,...,p_n\}\)
  3. Step 2 高斯扰动:对每个候选短语 \(p_i\),在其embedding上注入高斯噪声 \(\tilde{H}_{p_i} = H + m_{p_i} \odot \epsilon, \quad \epsilon \sim \mathcal{N}(0, \sigma^2)\),其中 \(m_{p_i}\) 是仅在 \(p_i\) token位置为1的二值掩码
  4. Step 3 遮蔽度量:比较扰动前后LLM输出分布的余弦相似度,相似度最高的关键短语被认为是被遮蔽的——因为加了噪声还没变化,说明LLM本来就没在用它

与之前CoDA方法(直接删除token)的区别:GaP保留了查询的完整结构,只是在embedding空间中加噪,不会破坏推理链。实验证明CoDA在多跳场景中反而会降低效果。

  1. 细粒度对比学习检索器
  2. 将文档分为三类:(与查询和遮蔽短语都相关)、半正(与查询相关但与遮蔽短语无直接关系)、(无关)
  3. 设计两个损失项:\(\mathcal{L}_1\) 让正文档得分高于半正和负文档;\(\mathcal{L}_2\) 让半正文档合起来得分高于负文档
  4. 综合损失 \(\mathcal{L} = \alpha \mathcal{L}_1 + (1-\alpha) \mathcal{L}_2\)\(\alpha=0.7\)),确保排序 \(D^+ > D^* > D^-\)
  5. 基于contriever-msmarco微调,训练数据从MuSiQue构造(5000样本,3500训/750验/750测)
  6. 输入为查询与遮蔽短语的拼接

  7. 查询重构(Query Formulation)

  8. 文档选择:让LLM对每个检索到的文档判断相关性(输出Yes/No的概率),选概率最高的
  9. 查询生成:基于选定文档,让LLM生成新查询,将隐式推理结果显式化。例如,"Gloria in D Major的作曲家出生地的著名桥叫什么?" → 获取到Vivaldi文档后 → "Antonio Vivaldi出生地的著名桥叫什么?"
  10. 终止判断:让LLM判断新查询是否为单跳问题,若是则再检索一轮后终止

实验关键数据

数据集 指标 ActiShade DRAGIN (prev SOTA) 提升
MuSiQue (Llama-3-8B) F1 26.94 22.61 +4.33
2WikiMQA (Llama-3-8B) F1 56.33 52.52 +3.81
HotpotQA (Llama-3-8B) F1 46.02 42.31 +3.71
MuSiQue (Qwen2.5-7B) F1 26.11 22.01 +4.10
HotpotQA (Qwen2.5-7B) F1 50.47 45.87 +4.60
MuSiQue (Qwen2.5-14B) F1 27.47 24.11 +3.36
HotpotQA (Qwen2.5-14B) F1 53.29 49.87 +3.42

消融实验要点

  • GaP vs CoDA:在多轮检索设置下,GaP(F1=26.94)显著优于CoDA(F1=21.23);CoDA在MuSiQue和2WikiMQA上反而低于不用检测的版本,说明token移除会破坏多跳推理链
  • 细粒度对比学习(FCL)vs 标准对比学习(SCL):FCL在正文档Recall@1上大幅领先(75.33 vs 57.84),下游QA的F1也更高(26.94 vs 24.10)
  • 文档选择步骤:去掉LLM选择直接用检索分最高的文档,F1从26.94降至25.10(MuSiQue)
  • 噪声标准差σ:最优值0.1,在[0.05, 0.5]范围内性能相对稳定,说明方法对超参不太敏感
  • 模型规模:性能随模型增大而提升(7B→14B),说明方法可扩展
  • 跨数据集泛化:检索器仅在MuSiQue上训练,但在HotpotQA和2WikiMQA上也一致超越所有baseline

亮点

  • 知识遮蔽检测的巧妙设计:用高斯扰动代替token删除来检测被忽视的信息,核心洞察是"如果加了噪声输出还不变,说明模型本来就没用这个信息"——简单直觉但非常有效
  • 三级文档分类:正/半正/负的区分比简单的正/负对比更精细,半正文档是"对问题有用但对当前步骤无关的文档",这种设计与多跳推理的逐步分解本质高度契合
  • 隐式推理显式化:查询重构不仅仅是换一种问法,而是将推理中间结果写进新查询(如"Gloria作曲家" → "Vivaldi"),让后续检索更精准
  • 泛化性好:检索器只在MuSiQue训练,但能泛化到其他数据集,说明学到的是一般性的"关注被忽视短语"的能力

局限性 / 可改进方向

  • 嵌入空间访问限制:GaP需要访问LLM的token embedding层和输出分布,对闭源API模型不适用
  • 计算开销:每个候选短语都需要一次前向传播来计算扰动后的输出分布,候选短语多时开销不小
  • 只用了最大的7B~14B模型:受硬件限制没测更大模型(如70B),不清楚更大模型是否知识遮蔽问题更轻
  • SpaCy依赖:关键短语提取依赖SpaCy的NER和POS,对非英语语言或领域特定文本可能不够准确
  • 单一遮蔽短语:每轮只选一个最被遮蔽的短语,实际上可能有多个短语同时被遮蔽
  • 潜在方向:(1) 参数高效的遮蔽检测,避免对每个候选都做完整前向传播;(2) 将GaP思想迁移到VLM中的视觉信息遮蔽检测;(3) 多个遮蔽短语的联合处理

与相关工作的对比

  • vs DRAGIN:DRAGIN通过自注意力检测信息需求,在生成过程中动态触发检索。ActiShade更进一步,不仅判断"什么时候需要检索",还识别"什么信息被忽视了",并为此定制检索策略。本质区别是DRAGIN是被动触发,ActiShade是主动检测+补偿
  • vs SelfASK:SelfASK将复杂问题分解为子问题序列。ActiShade不做显式分解,而是通过遮蔽检测+查询重构自然地逐步解析问题,避免了分解质量不稳定的问题
  • vs CoDA:CoDA也检测知识遮蔽,但用token删除的方法。ActiShade的GaP用高斯扰动替代,保留了查询结构的完整性。实验证明CoDA在多跳场景中可能产生负面效果

启发与关联

  • GaP的"扰动不变性→被忽视"的思想可以迁移到多模态场景——在VLM中,某些视觉区域可能也存在被遮蔽的问题,可以用类似的扰动方法检测 → idea: 扰动探测法检测VLM视觉遮蔽
  • 三级对比学习损失(正/半正/负)的设计思路适用于任何需要细粒度相关性排序的检索任务
  • 查询重构中"隐式推理显式化"的策略与CoT精炼有相似之处,可以考虑结合

评分

  • 新颖性: ⭐⭐⭐⭐ 知识遮蔽检测是新颖视角,GaP方法设计巧妙,但整体框架仍是多轮RAG的变体
  • 实验充分度: ⭐⭐⭐⭐⭐ 三个数据集、三个LLM、多维度消融(检测方法/检索器训练/查询重构),还做了可解释性可视化和跨数据集泛化分析
  • 写作质量: ⭐⭐⭐⭐ 结构清晰、方法描述详尽,Case Study很直观,但符号略多
  • 价值: ⭐⭐⭐⭐ 知识遮蔽是多跳RAG中的真实痛点,解决方案实用,但需要embedding-level访问限制了适用范围