VLM Unlearning 有关论文阅读总结与梳理

VLM Unlearning 有关论文阅读总结与梳理

文章目录

目录

前言

一、什么是 Unlearning

二、AUVIC

三、Neuron Pruning

四、 Neuron Path Editing

五、 MLLM Eraser


前言

本文整理了当前多模态大模型(VLM)中常见的 Unlearning 技术路线,主要包括:

  • AUVIC
  • Neuron Pruning
  • Neuron Path Editing
  • MLLM Eraser

这些方法的核心目标都是:

让模型“遗忘”指定知识,同时尽量不影响其它知识。

一、什么是 Unlearning

在多模态大模型(Vision-Language Model / VLA)中,我们经常需要:

  • 删除隐私数据
  • 移除不安全知识
  • 删除特定人物或敏感概念
  • 符合法规(GDPR)

但重新训练模型成本非常高,因此提出:Machine Unlearning

即:让模型有选择地忘记某些知识,而不影响其他能力。

在多模态模型中,这件事更困难,因为:

  • 知识分布在视觉 + 文本两个模态
  • 多模态特征高度耦合
  • 单纯 finetune 容易破坏模型能力

因此出现了多种 Unlearning 方法。

二、AUVIC

原文链接:[2511.11299] AUVIC: Adversarial Unlearning of Visual Concepts for Multi-modal Large Language Models

1.核心思想

AUVIC 的目标是:

强迫模型在最困难情况下学会只抑制目标,而不影响相邻概念

具体来说:在 target identity 上答错或 回答模糊;在非目标样本上保持正常回答

2.方法结构

AUVIC 采用 min-max 对抗优化

\min_{\theta}\ \max_{\phi}\ \mathbb{E}_{x\sim\mathcal{D}}\Big[ \mathcal{L}_{f} + \lambda \mathcal{L}_{p} + \beta \mathcal{L}_{c} \Big]

θ (Vision Tower)

通过 LoRA 微调 来最小化 loss:

目标:降低 target identity 的识别能力


ϕ (Generator)

对输入图像添加扰动

目标:max loss,即生成最困难的样本。


Loss

1️⃣ Forget Loss
\mathcal{L}_{f} = \log p_{\theta}(y^{*}\mid x_{t})
增加 target identity 的预测 loss:logits ↑ → loss ↑
2️⃣ Prediction Consistency Loss
\mathcal{L}_{p} = \left\| \mathrm{logits}_{\mathrm{before}}(x_{t}) - \mathrm{logits}_{\mathrm{after}}(x_{t}) \right\|_{2}^{2}
保证非目标样本的回答准确度
3️⃣ Representation Consistency
\mathcal{L}_{c} = \mathrm{KL}\Big(p_{\theta}(\cdot\mid G(x;\phi ))\ \Big\|\ p_{\theta}(\cdot\mid x)\Big)
保证同一个人的视觉表示在扰动前后要一致

3.方法优势

  • 不破坏相邻概念
  • 对抗训练鲁棒
  • 可用于人脸隐私删除

三、Neuron Pruning

原文链接:[2502.15910] Modality-Aware Neuron Pruning for Unlearning in Multimodal Large Language Models

1.核心思想

不同模态输入会激活 不同的神经元子集

因此可以 剪枝负责 Forget 数据的神经元

2.方法步骤

Step1:检测模态偏置神经元

计算不同模态下的神经元指标:

激活强度差

1️⃣

I_{\mathrm{abs}}(D,n)
差异越大 → 越可能是模态专属神经元
激活频率差

2️⃣ 

I_{\mathrm{freq}}(D,n)
差异越大 → 模态专属
激活方差

3️⃣ 

I_{\mathrm{var}}(D,n)
方差越大 → 信息承载能力越强
RMS 指标

4️⃣ 

I_{\mathrm{rms}}(D,n)
用于惩罚无脑常亮的神经元

Step2:计算 Forget Score

S_{n}=\frac{I(D_{f},n)}{I(D_{r},n)+\epsilon}

其中:

\mathcal{I}(\mathcal{D}, n) := \sum_{k \in \mathcal{K}} I_k(\mathcal{D}, n)
\mathcal{K} = \{I_{\text{abs}}, I_{\text{freq}}, I_{\text{var}}, I_{\text{rms}}\}
D_r

 = Retain dataset

D_f

 = Forget dataset

通过计算选取最大的神经元作为selected neurons

Step3:部署 Mask

selected neurons 上:

mask = 0

后续推理中永久生效。


3.方法优势

  • 无需重新训练
  • 计算效率高
  • 可解释性强

   

四、 Neuron Path Editing

原文链接:[2511.06793] Cross-Modal Unlearning via Influential Neuron Path Editing in Multimodal Large Language Models

1.核心思想

模型中的知识通常沿着 神经元路径(neuron path)传播

因此 找到关键路径并进行编辑


2.方法步骤

Step1:路径定位

通过 Integrated Gradient 找到关键神经元:

\text{IGI}(\mathbf{w}) = \sum_{j=1}^N \tilde{w}_{i_j}^n \sum_{k=1}^m \sum_{l=1}^N \frac{\partial F_T\left(\frac{k}{m}\alpha_{i_1}^1, \dots, \frac{k}{m}\alpha_{i_N}^N\right)}{\partial w_{i_l}^l}
IGI(w) 表示各层的选取神经元对文本输出的影响。
\text{IFI}(\mathbf{z}) = \sum_{n=1}^N \tilde{z}_{i_n}^n \sum_{k=1}^m \sum_{l=1}^N \left(\frac{\partial \mathbf{G}\left(\frac{k}{m}\beta_{i_1}^1, \dots, \frac{k}{m}\beta_{i_N}^N\right)}{\partial z_{i_l}^l}\right)^2
IFI(z) 表示各层的选取神经元对视觉输出的影响。

Q:为什么要累积梯度?

因为:

神经元对任务的影响可能是非线性的

在某一点梯度可能为0或负值,但在此之前的梯度都很大,都能展现出强相关性

因此需要从

\frac{1}{m}\alpha

到 

\alpha

逐步累积梯度才能真实反映神经元影响。


Step2:构建关键路径

逐层寻找:

可以满足 

max(IGI / IFI)

 的神经元加入现有路径。


Step3:RMisU Path Editing

编辑关键路径对应参数

Loss 设计:

\mathcal{L} = \mathcal{L}_{\text{retain}} + \mathcal{L}^{f}_{\text{RMisU}} + \gamma \mathcal{L}^{r}_{\text{RMisU}}
以这个Loss为损失,只解冻(更新)“关键路径所在的目标层中,与该路径神经元通道直接相关的极少量参数,基本就是一个参数矩阵的一行,和另一个参数矩阵的一列

其中:

1️⃣  

\mathcal{L}_{\text{retain}} = \mathbb{E}_{(x^r, y^r) \in D^r} \left[ -\sum_{i=1}^{|y^r|} \log P_{M_{\theta^*}}(y_i^r \mid x^r, y_{<i}^r) \right]
在“保留数据”上,新模型的输出行为仍然是一个正常的语言模型

2️⃣  

\mathcal{L}^{f}_{\text{RMisU}} = \mathbb{E}_{x^f \in D^f} \left\| \mathbf{h}^{(l)}_{M_{\theta^*}}(x^f) - \mathbf{v}^f \right\|_2^2
在中间层形成的隐藏层表示,必须长得像一个随机噪声向量

3️⃣  

\mathcal{L}^{r}_{\text{RMisU}} = \mathbb{E}_{x^r \in D^r} \left\| \mathbf{h}^{(l)}_{M_{\theta^*}}(x^r) - \mathbf{h}^{(l)}_{M_\theta}(x^r) \right\|_2^2
在保留集上:新模型在中间层的表示,必须和原模型几乎一模一样

Forget目标

中间隐藏层表示:像随机噪声

Retain目标

在保留数据上:新模型 ≈ 原模型


3.方法优势

  • 精确编辑知识
  • 参数修改极少
  • 保留模型能力

五、 MLLM Eraser

原文链接:[2510.04217] MLLMEraser: Achieving Test-Time Unlearning in Multimodal Large Language Models through Activation Steering

1.核心思想

通过 向隐藏层添加方向向量

将模型行为从 knowledge recall 转变为 knowledge erasure

2.方法步骤

Step1:构造两类输入

Recall 行为(模型还能被尝试着唤醒对问题的正确回答)

使用:

  • jailbreak prompt
  • adversarial image

构造能唤起 Recall 行为的输入,得到: 

h^{(i)}_{\text{recall}} = h(I'_i, Q'_i)

Refusal 行为(不管怎么样模型都无法正常回答问题)

使用:

  • clean image
  • blocked prompt

构造能唤起 Refusal 行为的输入,得到:

h^{(j)}_{\text{refusal}} = h(I_j, Q_j)

Step2:计算 Erasure Direction

d_{\text{erase}} = \mathbb{E}\!\left[h_{\text{refusal}}\right] - \mathbb{E}\!\left[h_{\text{recall}}\right]

表示:

从 recall 到 refusal 的方向。

Step3:学习线性门控函数

f(\mathbf{h}) = \mathbf{W} \mathbf{P} \mathbf{h}
\mathbf{W}^* := \arg\min_{\mathbf{W}} \left( \|\mathbf{W} \mathbf{P} \mathbf{H}_f - \mathbf{D}\| + \gamma \|\mathbf{W} \mathbf{P}\| \right)

其中:

P \in \mathbb{R}^{d \times d}, \quad W \in \mathbb{R}^{1 \times d}, \quad D \in \mathbb{R}^{1 \times N_f}
  • P:投影矩阵
  • W:映射矩阵

P 的作用

保留与遗忘任务相关的子空间

W 的作用

判断是否触发 erasure

Step4:输入感知 Steering

最终修改隐藏层:

\tilde{h}^{(\ell)} = h^{(\ell)} + \lambda W P h^{(\ell)}

如果 

h \approx h_{\text{recall}}
则添加 d_erase

如果:

h \approx h_{\text{refusal}}
则保持不变

方法优势

  • 不需要重新训练
  • 推理阶段可控
  • 支持输入感知

Read more

【OpenClaw企业级智能体实战】第01篇:从零搭建你的第一个AI员工(原理+算法+完整代码+避坑指南)

【OpenClaw企业级智能体实战】第01篇:从零搭建你的第一个AI员工(原理+算法+完整代码+避坑指南)

摘要:随着AI从“对话时代”迈入“执行时代”,OpenClaw作为开源智能体框架,正在重塑人机协作模式——它不再是被动响应的工具,而是能主动执行任务的“AI员工”。本文基于真实技术原理与实操场景,从背景概念切入,拆解OpenClaw“感知-决策-执行”的核心逻辑,详解算法组件构建思路,并提供从零到一的完整实操流程(含可直接运行的Python代码)。内容兼顾新手入门与进阶提升,强调安全隔离部署原则,避开技术术语堆砌,聚焦实用价值。读者可通过本文掌握OpenClaw基础部署、自定义技能开发、记忆模块集成等核心能力,快速落地自动化办公、信息整理等实际场景,真正体验“低成本、高效率”的AI生产力革命。全文严格遵循真实性原则,无捏造案例与夸大描述,所有代码均经过实测验证。 优质专栏欢迎订阅! 【OpenClaw从入门到精通】【DeepSeek深度应用】【Python高阶开发:AI自动化与数据工程实战】 【YOLOv11工业级实战】【机器视觉:C# + HALCON】【大模型微调实战:平民级微调技术全解】 【人工智能之深度学习】【AI 赋能:Python 人工智能应用实战】

Ubuntu_24.04 安装OpenClaw教程

认识OpenClaw 官网:https://openclaw.ai/ https://docs.openclaw.ai/start/getting-started 安装OpenClaw curl -fsSL https://openclaw.ai/install.sh | bash 安装完成 配置命令 在终端输入: openclaw onboard 选择Yes 选择QuickStart 因为前面配置过,所以提示是否用原来的配置信息,可以使用Reset进行重置 选择模型: 根据自己的需要进行选择, 这里要特别注意一个问题,openClaw对上下文有要求,默认最小是16000Token,要不然后面安装的时候会报下图的错误信息 选择Qwen一直在waiting 如果要使用其他的模型,选择Custom Provider 如果选择DeepSeek,baseURL输入:https://api.deepseek.com/v1 然后输入API-KEY:sk-******* model输入:

【AI Coding 系列】——什么是AI Coding,怎么合理使用AI Coding,大模型上下文限制解决方案,任务拆解策略

【AI Coding 系列】——什么是AI Coding,怎么合理使用AI Coding,大模型上下文限制解决方案,任务拆解策略

AI Coding 并非简单的"让 AI 写代码",而是一种使用大型语言模型(LLM)为核心驱动力的新型软件编程方式。要求开发者不仅要理解编程语言,更要掌握模型边界感知、上下文工程、认知负载管理等新兴技能。 随着 Claude、GPT-4、Kimi 等模型的能力跃升,我们正从"AI 辅助编码"(Copilot 模式)变成"AI 主导架构,开发人员主导决策"的代理编程(Agentic Coding)。这一转变要求建立全新的工作流、质量控制体系和知识管理方法。 第一部分:核心概念、认知框架——小白扫盲(可直接看第二部分) 1.1 模型边界感知 AI Coding 的首要原则是清醒认知模型的能力边界。就是我们蒸米饭加多少水类似,

Flutter 组件 globe_cli 的适配 鸿蒙Harmony 实战 - 驾驭全球化云原生部署、实现鸿蒙端 Serverless 一键发布与跨地域加速方案

Flutter 组件 globe_cli 的适配 鸿蒙Harmony 实战 - 驾驭全球化云原生部署、实现鸿蒙端 Serverless 一键发布与跨地域加速方案

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 组件 globe_cli 的适配 鸿蒙Harmony 实战 - 驾驭全球化云原生部署、实现鸿蒙端 Serverless 一键发布与跨地域加速方案 前言 在鸿蒙(OpenHarmony)生态走向国际化的新征程中,开发者面临的一个现实难题是:如何将原本适配国内环境的后端服务,以极低的成本、极高的速度部署到全球范围内的边缘节点?如何在没有专业运维团队支持的情况下,实现鸿蒙应用后端服务的“全球一键分发”? Serverless(无服务器架构)作为当代的开发范式,正逐渐成为解决这一问题的黄金利器。 globe_cli 是连接 Flutter/Dart 代码与 Globe 全球化 Serverless 平台的官方纽带。它能让你的 Dart 后端代码(如 API 服务、Mock 服务等)