Diagnosing and Repairing Unsafe Channels in Vision-Language Models via Causal Discovery and Dual-Modal Safety Subspace Projection¶
会议: CVPR 2026
arXiv: 2603.27240
代码: 无
领域: Multimodal / VLM
关键词: VLM安全, 因果中介分析, 安全子空间投影, 对抗攻击防御, 双模态修复
一句话总结¶
提出 CARE 框架,先用因果中介分析精确定位 VLM 中与不安全行为因果相关的神经元和层(诊断),再通过广义特征分解构建双模态安全子空间并在推理时投影激活值(修复),将攻击成功率降至 10% 以下且几乎不损失通用能力。
研究背景与动机¶
领域现状: 大型视觉语言模型 (LVLM) 在多模态理解上表现出色,但面临越狱攻击(jailbreak)——精心构造的多模态提示可绕过安全对齐机制。
现有痛点: (1) 输入预处理和对抗训练计算昂贵且可能降低通用性能;(2) 现有激活层面防御(ASTRA, SPO-VLM)缺乏对不安全组件的精确定位,仅使用单一模态,且启发式的线性转向会扭曲通用表征。
核心矛盾: 如何精确定位 VLM 内部与不安全行为相关的组件,并在不损害通用能力的前提下修复它们?
本文目标: 建立一个因果驱动的、非线性的、双模态的 VLM 安全诊断与修复框架。
切入角度: 先因果定位(哪些层/神经元导致不安全输出),再子空间投影(将激活投影到安全方向)。
核心 idea: 诊断——因果中介分析定位 FFN 中层 → 修复——广义特征分解找到恶意子空间 → 投影到其正交补空间。
方法详解¶
整体框架¶
CARE 想解决的问题是:VLM 被越狱攻击绕过安全对齐,但既有的激活层防御要么靠预处理/对抗训练(贵且伤通用能力),要么在所有层做粗粒度线性转向(不知道哪里真正出问题、还会扭曲正常表征)。CARE 的思路是"先诊断、后修复",全程不重训练、只在推理时介入:先用因果消融逐层定位到底是哪一层、哪个组件(FFN 还是注意力)在主导不安全输出;再在这些关键层上做双模态 token 归因,找出真正与越狱相关的视觉/文本 token;最后用良性与恶意激活的协方差对比解出一个"恶意方向"子空间,推理时把激活投影出这个子空间。三步串起来,就是"层 → token → 子空间"由粗到细地把不安全信号一层层剥出来再消掉。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400, 'subGraphTitleMargin': {'top': 8, 'bottom': 16}}}}%%
flowchart TD
A["VLM + 多模态越狱输入"] --> B["层级因果追踪与组件分析<br/>逐层消融定位中间层,再分离 FFN / MHSA"]
B -->|锁定中间层的 FFN| C["双模态 Token 归因<br/>RBF 核算相关性,选 top-k 视觉 / 文本 token"]
subgraph PROJ["安全子空间投影"]
direction TB
D["视觉路<br/>广义特征分解→恶意子空间→投影到正交补"]
E["文本路<br/>广义特征分解→恶意子空间→投影到正交补"]
F["自适应融合<br/>按干预强度加权两路结果"]
D --> F
E --> F
end
C --> D
C --> E
F --> G["安全激活回流 → 生成安全响应"]
关键设计¶
1. 层级因果追踪与组件分析:先找出安全到底藏在哪一层、哪个模块
既有防御的盲点是不知道在哪干预,CARE 先做因果消融来回答这个问题:系统性地逐层 block 激活、观察攻击成功率 (ASR) 的变化,ASR 掉得最多的层就是安全关键层。再把同一层里的 FFN 和多头注意力 (MHSA) 分开消融,结论是 FFN 对安全性的影响远大于 MHSA——这并非巧合:FFN 是逐 token 独立投影,激活在样本间相关性低,安全信号相对"干净可分";而 MHSA 把全局上下文混在一起,安全信号被摊薄、难以隔离。为佐证关键层的存在,作者用 Silhouette 系数、类分离度、Mahalanobis 距离三个指标度量"良性 vs 恶意激活"的可分性,三者都在第 16-17 层(LLaVA)附近同时达到峰值,说明中间层才是安全表征最集中的地方,后续修复就锁定在这里。
2. 双模态 Token 归因:在关键层里只挑出真正肇事的 token
并不是关键层里的每个 token 都和越狱等价相关,若不加区分地处理会把无关表征也搅进来,所以在投影前先做归因、聚焦高相关 token。视觉侧用 RBF 核刻画视觉-文本 token 的跨模态相关性,对居中后的跨模态核矩阵取每行的 L2 范数 \(s_i = \|\tilde{K}_{i,:}\|_2^2\),再归一化成归因分数
据此选出与攻击最相关的 top-k 视觉 token。文本侧则用自模态 RBF 核矩阵算每个文本 token 的语义独立性分数,挑出最有影响力的文本 token。两路归因都只保留高分 token 进入下一步,这样构建的恶意子空间更聚焦、对正常内容的误伤更小。
3. 安全子空间投影:把激活投出"恶意方向"再补回良性成分
定位到关键层和关键 token 后,剩下的问题是怎么"修"——CARE 用一个有原理的子空间投影代替启发式线性转向。先收集良性、恶意样本在目标层的激活 \(A_b, A_m\),中心化后求各自协方差矩阵 \(C_b, C_m\),再解广义特征分解
最大特征值对应的方向,正是恶意激活相对良性激活偏离最大的方向(和 LDA 找判别方向同理)。取 top-k 特征向量 \(U_k\) 张成"恶意子空间",构造投影到其正交补的安全算子,并在投影后按系数 \(\beta\) 补回一点良性参考激活以稳住正常表征:
由于视觉攻击与文本攻击的机制不同,CARE 对两种模态各自建一套安全子空间分别投影,再用自适应权重把两路结果融合:
相比直接在某个固定方向上做线性转向,这种"协方差对比 + 正交投影"能精确对准恶意成分、几乎不动与攻击无关的方向,这也是它能压低 ASR 又保住通用能力的关键。
损失函数 / 训练策略¶
全程无需训练,只在推理时介入。只需离线收集少量良性/恶意样本提取激活,用于解广义特征分解、构建各模态的投影矩阵;部署时每次推理只多做一次矩阵乘法,开销极低。
实验关键数据¶
主实验(攻击成功率 ASR % ↓)¶
| 方法 | JailBreakV | MMSafety | PGD-Toxic κ=64 | PGD-Jailbreak κ=64 |
|---|---|---|---|---|
| LLaVA 原始 | 45.71 | 36.48 | 60.38 | 65.15 |
| SPO-VLM | 10.37 | 16.26 | 17.90 | 17.38 |
| ASTRA | 11.98 | 15.37 | 16.37 | 14.85 |
| CARE (Ours) | 7.03 | 9.13 | 12.78 | 8.46 |
Qwen2.5-VL 上类似趋势:JailBreakV 6.55%, MMSafety 8.72%
消融实验¶
| 配置 | JailBreakV ASR↓ | PGD-Toxic-64 ASR↓ | 说明 |
|---|---|---|---|
| CARE (full) | 7.03 / 6.55 | 12.78 / 4.60 | 双模态完整版本 |
| CARE w/o text | 15.26 / 14.3 | — | 文本子空间对语言越狱关键 |
| CARE w/o visual | — | 45.71 / 46.13 | 视觉子空间对图像攻击关键 |
关键发现¶
- FFN > MHSA: block FFN 对 ASR 影响远大于 block MHSA,证实 FFN 是安全机制的主要载体
- 中间层最关键: 安全相关表征在第 16-17 层(LLaVA)或 12-14 层(Qwen)达到峰值聚类分离度
- 双模态缺一不可: 去掉文本子空间→语言越狱 ASR 翻倍;去掉视觉子空间→PGD 攻击 ASR 翻 10 倍
- 通用能力保持: MMBench、MM-Vet、SQA 上仅 2-8% 的性能下降
- 迁移防御: 对未见过的 PGD 攻击也有效
亮点与洞察¶
- 因果驱动的精确定位:不是盲目地在所有层做干预,而是先定位安全关键层和组件(FFN),减少对无关表征的干扰。
- 广义特征分解的理论优雅性:直接在"良性 vs 恶意"的协方差空间中找到最大偏离方向,比启发式的线性转向更有原理性。
- 无需训练:仅需离线提取少量激活,推理时做矩阵乘法,开销极低。
- FFN 的"判别投影器"角色:FFN 激活低样本间相关性意味着安全信号在其中更"纯净可分",这一发现对理解 VLM 内部安全机制具有理论价值。
局限与展望¶
- 安全子空间的构建依赖于离线收集的恶意样本,可能对全新类型的攻击覆盖不足
- 投影操作虽然轻量但在每次推理时增加了计算开销
- 良性正则化项 \(\beta\) 需要调节,不同模型可能需要不同超参数
- 仅在 7-8B 规模的模型上验证,更大规模模型是否有相同安全机制有待验证
- 安全子空间的维度 \(k\) 选择需要经验调参
- 对纯文本越狱(无图像输入)的防御效果未单独评估
- 安全机制在更深层被"特征纠缠"稀释的现象值得进一步研究
相关工作与启发¶
- 与 ASTRA、SPO-VLM 的区别:CARE 通过因果分析精确定位而非粗粒度干预,使用非线性 RBF 核和广义特征分解而非线性转向。
- 与 Refusal Pairs(微调方法)相比:CARE 无需重训练,且效果更好。
- 因果中介分析在 NLP 可解释性中已有应用,本文首次将其用于 VLM 安全定位。
- 广义特征分解也用于 LDA 等经典判别分析,本文将其创新性地用于安全/恶意方向的分离。
- FFN 的"判别投影器"角色与 Neural Collapse 现象的联系值得深入探索
技术细节补充¶
- RBF 核带宽: \(\sigma = \sqrt{0.5 \cdot \text{median}(D_{ij})}\),自适应于数据分布
- Kernel 居中: 视觉单侧 \(\tilde{K} = K_{cross}H_t\),文本双侧 \(\tilde{K} = HKH\)
- 安全投影: \(h' = P_{safe}h + \beta(1-P_{safe})h_{benign}\)
- 融合权重: \(w_{vis} = \frac{\|h'_{vis}-h_{txt}\|}{\|h'_{vis}-h\|+\|h'_{txt}-h\|}\)
- 定位验证: Silhouette/Class Sep./Mahalanobis 三指标在层 16-17 峰值
- 攻击数据: JailbreakVBench + AdvBench + FigStep
- 通用性能: MMBench 降 2-3%, MM-Vet 降 5-8%, SQA 降 2-4%
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 因果诊断+双模态安全子空间投影的组合是首创
- 实验充分度: ⭐⭐⭐⭐⭐ 2 个 VLM × 多 benchmark × PGD 攻击 × 消融全面
- 写作质量: ⭐⭐⭐⭐ 框架清晰,因果分析部分深入,但数学符号较密
- 价值: ⭐⭐⭐⭐⭐ 对 VLM 安全防御具有重要实践意义,无需重训练即可部署