跳转至

DeDe: Detecting Backdoor Samples for SSL Encoders via Decoders

作者: Yuwen Pu, Yue Zheng, Shiji Zhao 等
机构: HKUST / Southeast University
会议: CVPR 2025
arXiv: 2411.16154
代码: https://github.com/tardisblue9/DeDe

研究背景与动机

自监督学习(Self-Supervised Learning, SSL)预训练编码器已成为现代计算机视觉的基础设施。然而,SSL 编码器面临严重的后门攻击威胁:

SSL 后门攻击的隐蔽性:与监督学习不同,SSL 后门攻击会在编码器的特征空间中植入后门映射。攻击者将特定触发模式(trigger)与目标类别的特征空间绑定,当下游用户使用该编码器时,含有触发模式的输入会被映射到攻击者指定的特征区域

检测难度大: - SSL 编码器没有分类头,传统基于分类输出的后门检测方法(如 Neural Cleanse)不适用 - 编码器通常作为黑盒提供,用户无法访问编码器内部参数 - 触发模式可能极其微小或隐蔽(如几个像素变化或不可见扰动)

现有防御的局限: - 数据清洗方法难以在无标签场景下工作 - 模型修剪方法需要直接修改编码器参数 - 基于激活分析的方法计算开销大且误报率高

供应链安全风险:随着预训练模型共享平台(如 HuggingFace)的普及,用户越来越多地下载和使用第三方预训练编码器,后门攻击的供应链风险日益严重

DeDe 提出了一种新思路:通过训练解码器来反转编码器的映射,利用后门样本在解码重建中的不一致性来检测后门。

方法详解

核心直觉

后门编码器对干净样本和触发样本的行为差异:

输入类型 编码器行为 解码器重建
干净样本 正常特征编码 忠实重建原图
触发样本 特征被扭曲到目标区域 重建图像与原图不一致

这种不一致性成为检测后门样本的信号。

解码器训练

训练策略: - 使用干净数据(无触发模式)训练解码器 \(D\) - 解码器学习反转编码器 \(E\) 的映射:\(\hat{x} = D(E(x))\) - 训练损失:\(\mathcal{L}_{recon} = \| x - D(E(x)) \|_2^2\)

关键设计——高遮蔽率训练: - 训练时使用 masking ratio = 0.9(遮蔽90%的图像 patch) - 这迫使解码器严重依赖编码器提供的特征信息来重建被遮蔽的区域 - 如果编码器的特征被后门扭曲,解码器的重建质量将急剧下降

后门检测

推理时遮蔽率: - 测试时使用更高的 masking ratio = 0.99(仅保留1%的 patch) - 极端遮蔽放大了后门样本的重建不一致性

检测指标——重建不一致性分数:

\[s(x) = \| x - D(E(M(x))) \|_2^2\]

其中 \(M(\cdot)\) 为随机遮蔽操作。

检测阈值: - 使用小规模干净验证集估计正常重建误差的分布 - 设阈值 \(\tau = \mu + k\sigma\),其中 \(\mu\)\(\sigma\) 为干净样本重建误差的均值和标准差 - \(s(x) > \tau\) 则判定为后门样本

检测流程

输入图像 x → 随机遮蔽 M(x) → 编码器 E(M(x)) → 解码器 D(·) → 重建 x̂
                                           计算 ||x - x̂||² → 与阈值 τ 比较 → 干净/后门

实验结果

后门攻击检测率

攻击方法 攻击成功率 (ASR) DeDe TPR ↑ DeDe FPR ↓
BadEncoder 99.9% 93.1% 3.2%
CTRL 97.8% 89.5% 4.1%
CLIP Backdoor 98.5% 100.0% 2.7%
PoisonedEncoder 96.3% 87.8% 5.3%

后门缓解效果

攻击方法 原始 ASR DeDe 过滤后 ASR ↓ 干净准确率变化
BadEncoder 99.9% 1.3% -0.8%
CTRL 97.8% 3.7% -1.2%
CLIP Backdoor 98.5% 0.5% -0.5%
PoisonedEncoder 96.3% 4.2% -1.5%

与现有方法对比

方法 BadEncoder TPR CLIP Backdoor TPR 需要编码器参数
Neural Cleanse 不适用 不适用
Activation Clustering 52.3% 61.7%
STRIP 67.8% 73.2%
SentiNet 71.5% 78.4%
DeDe (ours) 93.1% 100.0%

消融实验

配置 BadEncoder TPR FPR
Masking 0.5 train / 0.75 test 72.3% 8.1%
Masking 0.75 train / 0.9 test 84.6% 5.7%
Masking 0.9 train / 0.95 test 89.2% 4.3%
Masking 0.9 train / 0.99 test 93.1% 3.2%

核心创新点

  1. 解码器检测范式:首次提出通过训练解码器来检测 SSL 编码器的后门——利用后门样本在编码-解码过程中的不一致性作为检测信号
  2. 极端遮蔽策略:训练时 0.9、推理时 0.99 的遮蔽率设计,最大化放大后门特征扭曲对重建质量的影响
  3. 黑盒检测:无需访问编码器内部参数,仅需使用其输出特征即可检测后门
  4. 显著的缓解效果:BadEncoder ASR 从 99.9% 降至 1.3%,同时干净准确率仅下降 0.8%

理论分析

作者从信息论角度解释了 DeDe 的工作原理:

  • 后门编码器对触发样本执行信息压缩:丢弃原始内容信息,注入目标类别信息
  • 解码器依赖编码器提供的信息进行重建,当原始内容信息被后门替换时,重建必然失败
  • 高遮蔽率进一步增加解码器对编码器特征的依赖,放大检测信号

局限性

  • 需要一定量的干净数据来训练解码器和估计检测阈值
  • 对自适应攻击(攻击者知道 DeDe 的存在)的鲁棒性有待进一步验证
  • 在多触发模式攻击场景下,单一阈值可能不够灵活
  • 解码器训练需要额外的计算成本

相关工作

  • BadEncoder: 首个针对 SSL 编码器的后门攻击
  • CTRL: 基于对比学习的后门攻击
  • Neural Cleanse: 经典后门检测方法(需要分类头)
  • MAE: 掩码自编码器,启发了 DeDe 的高遮蔽率设计