HALLUCINATION-AWARE INTERMEDIATE REPRESENTATION EDIT IN LARGE VISION-LANGUAGE MODELS
(ICLR 2026)
方法
在 LVLM 中,给定图像 $v$ 和文本提示 $q$,模型会逐个生成词元(token)。在生成第 $t$ 个词元时,模型第 $l$ 层的注意力层(Attention-layer)的特征表示记为 $h _ {tl}$。HIRE 框架的目标就是对这个 $h _ {tl}$ 进行针对性的编辑,以消除幻觉成分。
编辑器(Editor, $G _ {\phi}$)
由于特征空间中“真实语义信息”和“幻觉信息”是纠缠在一起的,直接修改 $h _ {tl}$ 可能会破坏文本原本的语义。因此,作者采用了一个基于双编码器的自动编码器架构来实现两者的解耦:
特征解耦: 给定输入特征 $h _ {tl}$,编辑器利用语义编码器 $E _ {sem}$ 和幻觉编码器 $E _ {hal}$ 将其分解为语义特征 $h _ {tl,sem}$ 和幻觉特征 $h _ {tl,hal}$:
$$h _ {tl,sem} = E _ {sem}(h _ {tl})$$
$$h _ {tl,hal} = E _ {hal}(h _ {tl})$$
计算编辑方向: 为了消除幻觉,需要找到一个“减少幻觉”的全局方向 $\delta_l$。该方向是通过计算幻觉子空间中,真实表示与幻觉表示之间的词元级差异的平均值来获得的。 然后,利用多头注意力机制 $f _ {attn}$(以语义特征为 Query,以幻觉特征为 Key 和 Value)融合特征,并通过解码器 $D$ 重构回原始特征空间,从而得到针对特定词元的优化编辑方向 $\Delta _ {tl}$:
$$\Delta _ {tl} = D(h _ {tl,sem} + f _ {attn}(h _ {tl,sem}, h _ {tl,hal} + \delta_l)) - D(h _ {tl,sem} + f _ {attn}(h _ {tl,sem}, h _ {tl,hal} - \delta_l))$$
路由器(Router, $R _ {\theta}$)
并非所有的词元都会产生幻觉(例如 “in”, “on” 等常见词),对所有层和词元都进行编辑会带来极大的计算浪费。因此,作者引入了一个轻量级的路由器来动态决定是否进行编辑。
决策机制: 路由器是一个多层感知机(MLP),它仅读取模型第一层的特征表示 $h _ {t1}$ 作为输入,并输出一个二元决策信号 $c \in {0, 1}$。如果 $c=1$,则启动编辑器对该词元的后续层进行编辑;如果 $c=0$,则不进行任何操作。
特征编辑公式: 结合路由器决策 $c$ 和编辑强度超参数 $\alpha \in [-1, 1]$,最终编辑后的特征表示 $h _ {tl,aug}$ 计算如下:
$$h _ {tl,aug} = \begin{cases} h _ {tl} + \alpha \Delta _ {tl} & \text{if } c = 1 \ h _ {tl} & \text{if } c = 0 \end{cases}$$
在这里,正数的 $\alpha$ 用于抑制幻觉,而负数的 $\alpha$ 则可以放大幻觉,从而实现对幻觉程度的灵活控制。
模型的优化与训练
由于缺乏现成的带有标注的特征层级数据,作者设计了针对两个模块的独立优化策略。首先,通过向图像注入噪声来构建“易产生幻觉”的负样本特征(记为 $h^-$),原始图像对应的特征为正样本(记为 $h^+$)。
训练编辑器(对比学习)
编辑器的训练目标是让语义编码器保留语义、让幻觉编码器分离幻觉,并保证解码器能顺利重构特征。损失函数由以下几部分组成:
语义信息提取损失(InfoNCE):使得同一语义的正负样本靠近,不同语义的样本远离。
$$L _ {tl,sem}^+ = \mathcal{L} _ {InfoNCE}(h _ {tl,sem}^+, h _ {tl,sem}^-, H _ {l,sem}^+)$$
幻觉信息分离损失(InfoNCE):使得正样本(或负样本)在幻觉子空间内相互靠近,而不论其语义如何。
$$L _ {tl,hal}^+ = \mathcal{L} _ {InfoNCE}(h _ {tl,hal}^+, H _ {l,hal}^+, H _ {l,hal}^-)$$
重构与编辑损失(MSE):确保特征能够无损重构,且负样本经过编辑后能逼近正样本的特征。
$$L _ {tl,recon}^+ = MSE(h _ {tl}^+, D(h _ {tl,sem}^+ + f _ {attn}(h _ {tl,sem}^+, h _ {tl,hal}^+)))$$
$$L _ {tl,edit}^+ = MSE(h _ {tl}^+, D(h _ {tl,sem}^- + f _ {attn}(h _ {tl,sem}^-, h _ {tl,hal}^+)))$$
编辑器的最终总损失 $\mathcal{L}_e$ 是上述各项在所有词元和层上的平均值和。
训练路由器(直接偏好优化,DPO)
为了让路由器学会“该在什么时候编辑”,作者采用了无参考模型的直接偏好优化(DPO)。
偏好数据构建:对于同一输入,通过应用不同的编辑轨迹生成多个候选句子,并使用 CHAIR 幻觉指标对其进行评分。幻觉最少的轨迹作为偏好样本 $(h^+, c^+)$,幻觉最多的作为非偏好样本 $(h^-, c^-)$。
路由器损失函数 $\mathcal{L}_r$:最大化偏好编辑策略相对于非偏好策略的对数似然:
$$\mathcal{L}_r = -\mathbb{E} _ {(h,c)}[\log \sigma(\beta(\log \pi _ {\theta}(h^+, c^+) - \log \pi _ {\theta}(h^-, c^-)))]$$
其中 $\pi _ {\theta}$ 是路由器策略,$\sigma(\cdot)$ 是 Sigmoid 函数,$\beta$ 是缩放因子。
最终,整个 HIRE 框架的总训练损失为:
$$\mathcal{L} _ {total} = \mathcal{L}_e + \mathcal{L}_r$$
