跳转至

Representation Bending for Large Language Model Safety

会议: ACL 2025
arXiv: 2504.01550
代码: https://github.com/AIM-Intelligence/RepBend
领域: LLM/NLP
关键词: 表示工程, 激活转向, LLM安全, 越狱防御, 表示空间分离

一句话总结

提出 RepBend,将 activation steering 的核心思想(安全/不安全表示的向量差异)引入 LoRA 微调的损失函数设计,通过"弯曲"模型的表示空间使安全和不安全状态在潜在空间中远离彼此,在多种越狱攻击基准上实现高达 95% 的攻击成功率降低,且对模型通用能力影响极小。

研究背景与动机

领域现状:LLM 安全训练(SFT、DPO、RLHF)已被证明是"浅层对齐",容易被越狱攻击绕过。对抗训练只能防御特定攻击类型,不泛化到未见攻击。系统级防御(输入/输出过滤器)难以扩展且不改善模型本身的安全性。

现有痛点: - Activation steering 在推理时通过向量加减改变行为,但分布外泛化差且损害通用推理能力 - Circuit Breaker (CB) 和 RMU 通过表示工程改进安全性,但仍有提升空间 - 现有方法在白盒攻击(GCG、Prefilling、Input Embed)下仍较脆弱

核心矛盾:如何在不损害模型通用能力的前提下,从根本上改变模型看待安全/不安全输入的内部表示。

切入角度:将 activation steering(推理时的表示操控)的思想转化为训练时的损失函数——直接用安全/不安全激活的向量差异构建损失项。

核心 idea:用四项损失函数"弯曲"表示空间——保持安全表示不变、推远不安全表示、统一不安全响应方向、保留通用能力。

方法详解

整体框架

基于 LoRA 微调,模型 \(M'\) 从原始模型 \(M\) 初始化。在训练中同时前向传播 \(M\) 和 \(M'\),比较两者在安全/不安全输入上的激活差异,优化四项损失。

关键设计

  1. 四项损失函数:

    • Retain loss:\(\frac{1}{2}\|v_s\|_2\),其中 \(v_s = M'(p_s) - M(p_s)\) — 保持安全表示不变
    • Forget loss:\(-\alpha \|v_u\|_2\),其中 \(v_u = M'(p_{uu}) - M(p_{uu})\) — 推远不安全表示
    • Cosine similarity loss:\(-\beta \cdot \text{cos\_sim}(A_u)\) — 统一不安全输入的响应方向(趋向拒绝)
    • KL divergence:\(\gamma \cdot \text{KL}_{x \sim p_s}(M \| M')\) — 保留通用能力
  2. 层选择:中后层(第 20 层及之后)效果最佳,与先前研究一致——行为聚类和情感表示在约1/3到1/2层深度处涌现

  3. 表示位置:在 residual stream 输出处(\(h_{i4}\))读取激活

损失函数

\[L = \frac{1}{2}\|v_s\|_2 - \alpha\|v_u\|_2 - \beta \cdot \text{cos\_sim}(A_u) + \gamma \cdot \text{KL}(M \| M')\]

实验关键数据

主实验(平均攻击成功率 ASR ↓,越低越好)

方法 Mistral 7B 黑盒 Mistral 7B 白盒 Llama3 8B 黑盒 Llama3 8B 白盒
Task Arithmetic 10.15 57.60 5.75 69.59
NPO 1.16 13.61 1.08 —
RMU 11.93 23.30 7.87 —
Circuit Breaker 13.87 28.61 2.90 —
RepBend 3.53 2.78 3.00 ~3

RepBend 在白盒攻击上远超所有 baseline(2.78% vs CB 的 28.61%),黑盒攻击上也保持竞争力。

通用能力保持

方法 MT-Bench ↑ MMLU ↑ TruthfulQA ↑
原始模型 7.41 60.37 54.32
Circuit Breaker 7.18 59.92 53.10
RepBend 7.40 59.89 52.18

通用能力几乎无损。

关键发现

  • 白盒攻击是关键差异化场景:RepBend 在 GCG (5.0%)、Prefilling (0.83%)、Input Embed (2.50%) 上的 ASR 大幅低于所有对比方法
  • Cosine similarity loss 的"统一拒绝方向"设计对稳定性至关重要——确保模型对所有不安全输入有一致的拒绝模式
  • 中后层干预效果最佳(与表示空间中安全/不安全状态的分布规律一致)
  • Logit lens 分析显示 RepBend 不仅改变了模型"说什么",还改变了模型"想什么"

亮点与洞察

  • 从推理时操控到训练时优化的范式转换:将 activation steering 的直觉(向量差异)转化为可优化的损失函数,兼具直觉性和泛化性
  • 四项损失的设计 retain/forget/align/preserve 分别处理安全保持、不安全推远、拒绝一致性、能力保留,逻辑清晰
  • 用 LoRA 微调避免了全参数训练的开销,使方法实用可扩展

局限与展望

  • 需要预定义的安全/不安全文本数据集,数据质量影响效果
  • \(\alpha, \beta, \gamma\) 三个超参数需要调优
  • 仅在 7B-8B 模型验证,更大模型的效果未知
  • 未探索对 fine-tuning attack(微调攻击)的鲁棒性

相关工作与启发

  • vs Circuit Breaker:CB 的"短路"方法在白盒攻击下 ASR 仍达 28.61%,RepBend 降至 2.78%
  • vs Activation Steering:推理时 steering 泛化差且损害推理能力;RepBend 通过训练时优化解决了这两个问题
  • vs NPO:NPO 在黑盒上最强但白盒仍较弱;RepBend 黑盒略逊 NPO 但白盒大幅领先

评分

  • 新颖性: ⭐⭐⭐⭐ 将 activation steering 引入损失函数设计的思路有原创性
  • 实验充分度: ⭐⭐⭐⭐⭐ 5种黑盒+3种白盒攻击、2个模型、通用能力评估、logit lens分析
  • 写作质量: ⭐⭐⭐⭐ 算法描述清晰,实验组织系统化
  • 价值: ⭐⭐⭐⭐⭐ 白盒攻击防御的突破性进展,实用价值高