1. 论文信息

论文名称 BadEncoder: Backdoor Attacks to Pre-trained Encoders in Self-Supervised Learning
作者 Jinyuan Jia∗ Duke University
出版社 In IEEE Symposium on Security and Privacy, 2022. (信息安全顶会)
pdf 在线pdf
代码 pytorch
简介 首个针对 self-supervised learning 的 backdoor attack.
BadEncoder 对预训练模型进行攻击, 通过优化的方法生成带有后门的 image encoder
在两个大型的公开的预训练模型上验证了 BadEncoder 的有效性

2. 正文介绍

介绍:

这篇文章是首个针对与训练模型的后门攻击文章。BadEncoder 通过攻击自监督的预训练模型,将后门注入预训练编码器 encoder 中,同时导致下游的模型也继承后门属性。

因此 BadEncoder 需要实现以下两个目标:

  • effectiveness goal: 基于 backdoor image encoder 训练的下游分类器,都应该继承了预训练模型的后门。即下游分类器遇上带有 trigger 的样本,也应该将其预测为 target 类。
  • utility goal: 后门应该是隐蔽的,具有后门的下游分类器和干净的分类器在干净的数据上测试,应该拥有相同的准确率。

并且还希望,攻击者可以同时攻击多个目标下游任务和每个目标下游任务(target downstream tasks)的多个目标类(target class)。生成带有后门的下游分类器(backdoored downstream classifiers)

威胁模型:

威胁模型(攻击者可以使用的资源),本文的威胁模型如下:

  • 攻击者可以访问 reference inputs:

    reference inputs: the attacker has access to one or more images (called reference inputs) in the target class for each (target downstream task, target class) pair

    目标下游任务中,目标类的一个或多个图像

  • 攻击者可以访问 shadow dataset:

    对于 shadow dataset,文章中讨论了两种方式:

    1. 攻击者是预训练模型的发布者,可以访问预训练数据集
    2. 攻击者是恶意第三方,不能访问训练数据集。攻击者可以从网络中收集一些下类似游任务的数据(不在下游数据集中)。

    攻击者无法访问下游分类器的数据,并且无法修改下游分类器的训练过程。

预训练模型

本文主要对两种预训练模型进行攻击 SimCLR 和 CLIP。

  • SimCLR:

    ℓi,j=−log⁡(exp⁡(sim⁡(zi,zj)/τ)∑k=12NI(k≠i)⋅exp⁡(sim⁡(zi,zk)/τ))\ell_{i, j}=-\log \left(\frac{\exp \left(\operatorname{sim}\left(\boldsymbol{z}_{i}, \boldsymbol{z}_{j}\right) / \tau\right)}{\sum_{k=1}^{2 N} \mathbb{I}(k \neq i) \cdot \exp \left(\operatorname{sim}\left(\boldsymbol{z}_{i}, \boldsymbol{z}_{k}\right) / \tau\right)}\right)ℓi,j​=−log(∑k=12N​I(k​=i)⋅exp(sim(zi​,zk​)/τ)exp(sim(zi​,zj​)/τ)​)

  • CLIP:

    来自论文 《Learning Transferable Visual Models From Natural Language Supervision》

攻击的两种任务分别是:

  • Multi-shot classifier: 分类任务,使用预训练编码器生成特征,再使用有监督的方法训练分类器
  • Zero-shot classifier: CLIP 因为是图文预训练模型,可以通过构造文本的方式定义标签。通过计算标签(构造的句子)特征和图片特征的相似度进行分类。

3. method

3.1 模型结构图

由模型结构图,可以大致看出模型的攻击方式

3.2 损失函数

损失函数一共由三部分组成:

  1. Effectiveness loss:

    • shadow dataset 加上 trigger 后经过 backdoored image encoder 生成的特征要和 reference inputs 经过backdoored image encoder 生成的特征相近。

      目的:使得带有 trigger 的特征和下游任务中 target 类的特征相近,学习到 backdoor 信息

    • reference inputs 经过 backdoored image encoder 生成的特征要和 reference inputs 经过 clean image encoder 生成的特征相近。

      目的:保证下游任务能将 reference inputs 和带有 trigger image 正确分到 target 类。保持 reference inputs 的空间结构

    loss function

    L0=−∑i=1t∑j=1ri∑x∈Dss(f′(x⊕ei),f′(xij))∣Ds∣⋅∑i=1tri,L1=−∑i=1t∑j=1ris(f′(xij),f(xij))∑i=1tri,\begin{aligned} L_{0} &=-\frac{\sum_{i=1}^{t} \sum_{j=1}^{r_{i}} \sum_{\boldsymbol{x} \in \mathcal{D}_{s}} s\left(f^{\prime}\left(\boldsymbol{x} \oplus \boldsymbol{e}_{i}\right), f^{\prime}\left(\boldsymbol{x}_{i j}\right)\right)}{\left|\mathcal{D}_{s}\right| \cdot \sum_{i=1}^{t} r_{i}}, \\ L_{1} &=-\frac{\sum_{i=1}^{t} \sum_{j=1}^{r_{i}} s\left(f^{\prime}\left(\boldsymbol{x}_{i j}\right), f\left(\boldsymbol{x}_{i j}\right)\right)}{\sum_{i=1}^{t} r_{i}}, \end{aligned}L0​L1​​=−∣Ds​∣⋅∑i=1t​ri​∑i=1t​∑j=1ri​​∑x∈Ds​​s(f′(x⊕ei​),f′(xij​))​,=−∑i=1t​ri​∑i=1t​∑j=1ri​​s(f′(xij​),f(xij​))​,​

    • fff: clean pre-trained image encoder
    • f′f^{\prime}f′: backdoored pre-trained image encoder
    • reference inputs Ri={xi1,xi2,⋯,xiri}\mathcal{R}_{i}=\left\{\boldsymbol{x}_{i 1}, \boldsymbol{x}_{i 2}, \cdots, \boldsymbol{x}_{i r_{i}}\right\}Ri​={xi1​,xi2​,⋯,xiri​​}
    • (target downstream task, target class) pair (Ti,yi)\left(T_{i}, y_{i}\right)(Ti​,yi​)
    • backdoored input x⊕ei\boldsymbol{x} \oplus \boldsymbol{e}_{i}x⊕ei​
  2. Utility loss:

    loss的作用:使得没有加入 trigger 的 shadow dataset,通过 backdoored image encoder 和 clean image encoder 生成的特征要相近

    目的:1. 保证下游任务在干净数据上的分类准确率。2. 对于跨模态预训练模型(CLIP)在 backdoored image encoder 中要保持图像特征和文本特征的关系

    loss function

    L2=−1∣Ds∣⋅∑x∈Dss(f′(x),f(x))L_{2}=-\frac{1}{\left|\mathcal{D}_{s}\right|} \cdot \sum_{\boldsymbol{x} \in \mathcal{D}_{s}} s\left(f^{\prime}(\boldsymbol{x}), f(\boldsymbol{x})\right)L2​=−∣Ds​∣1​⋅∑x∈Ds​​s(f′(x),f(x))

  3. Optimization problem:

    min⁡f′L=L0+λ1⋅L1+λ2⋅L2\min _{f^{\prime}} L=L_{0}+\lambda_{1} \cdot L_{1}+\lambda_{2} \cdot L_{2}minf′​L=L0​+λ1​⋅L1​+λ2​⋅L2​,

    • 三个 loss 通过超参数平衡
    • 参数的选择具体见实验部分

4. experiments

4.1 数据集

CIFAR10,STL10,GTSRB,SVHN,Food101

4.2 评价指标

  • Clean Accuracy (CA): 正常的准确率

  • Backdoored Accuracy (BA): 加入 trigger 后的分类准确率

  • Attack Success Rate (ASR):

    ASR:攻击成功率

    ASR-B: 正常模型下分错的概率

4.3 实验结果

  • BadEncoder achieves high ASRs:​

    该实验证明了方法攻击的成功率很高

  • BadEncoder preserves accuracy of the downstream classifiers:

    该实验证明了加入后门后,对正确样本的分类准确率并未下降

  • Impact of loss terms:

    该实验证明了损失的每一项都是有作用的

  • Impact of shadow dataset:

    该实验测试了 shadow dataset 大小对于实验结果的影响,在 shadow dataset 大小为预训练数据集 20% 的时候就能取得不错的结果

  • Impact of trigger size:​

    不同大小的 trigger 都能取得不错的攻击效果,并且 trigger size 不会对 正常分类造成影响

  • Multiple reference inputs:​

    对于一个 target 类选不同类型的 reference inputs 进行测试,只要至少有一类 reference inputs 是正确的模型就能取得效果

    不同类型例如:

  • Impact of other parameters:

    验证其他参数,学习率等对结果的影响

BadEncoder: Backdoor Attacks to Pre-trained Encoders in Self-Supervised Learning 论文笔记相关推荐

  1. DBA: Distributed Backdoor Attacks against Federated Learning论文笔记

      作者:Chulin Xie  Keli Huang  Pin-Yu Chen  Bo Li 来源:ICLR 2020 发表时间:May 26,2020   背景: 联邦学习能够聚合各方提供的信息, ...

  2. (翻译)DBA: DISTRIBUTED BACKDOOR ATTACKS AGAINST FEDERATED LEARNING

    摘要 后门攻击旨在通过注入对抗性触发器来操纵训练数据的子集,从而使在受篡改数据集上训练的机器学习模型将在嵌入了相同触发器的测试集上进行任意(目标)错误预测.尽管联邦学习(FL)能够汇总由不同方面提供的 ...

  3. 基于激活聚类的后门检测:Detecting Backdoor Attacks on Deep Neural Networks by Activation Clustering

    Detecting Backdoor Attacks on Deep Neural Networks by Activation Clustering 网址:https://arxiv.org/abs ...

  4. 后门触发器之频域角度——Rethinking the Backdoor Attacks’ Triggers A Frequency Perspective

    Rethinking the Backdoor Attacks' Triggers A Frequency Perspective 尚未发布,收录于arxiv-- 论文链接 本文指出,现有的后门攻击在 ...

  5. 反知识蒸馏后门攻击:Anti-Distillation Backdoor Attacks: Backdoors Can Really Survive in Knowledge Distillation

    Ge, Yunjie, et al. "Anti-Distillation Backdoor Attacks: Backdoors Can Really Survive in Knowled ...

  6. 《DBA: DISTRIBUTED BACKDOOR ATTACKS AGAINST FEDERATED LEARNING》阅读笔记

    DBA: DISTRIBUTED BACKDOOR ATTACKS AGAINST FEDERATED LEARNING ** 本文发在ICLR 2020,针对联邦学习进行的后门攻击.其提出的方案针对 ...

  7. LIRA: Learnable, Imperceptible and Robust Backdoor Attacks 论文笔记

    论文信息 论文名称 LIRA: Learnable, Imperceptible and Robust Backdoor Attacks 作者 Khoa Doan(Baidu Research) 会议 ...

  8. [论文阅读] (02) SP2019-Neural Cleanse: Identifying and Mitigating Backdoor Attacks in Neural Networks

    神经清洁:神经网络中的后门攻击识别与缓解 Neural Cleanse: Identifying and Mitigating Backdoor Attacks in Neural Networks ...

  9. 神经清洗——识别与去除后门:Neural Cleanse: Identifying and Mitigating Backdoor Attacks in Neural Networks

    Neural Cleanse: Identifying and Mitigating Backdoor Attacks in Neural Networks 2019 IEEE Symposium o ...

  10. Stetman读peper小记:Defense-Resistant Backdoor Attacks Against DeepNeural Networks in Outsourced Cloud

    注: 本周阅读的peper是龚雪鸾和陈艳娇的作品.文章是对一种更为强健的后门攻击--RobNet,其关键原理是使触发器多样化,并加强模型结构使后门难以被发现或消除.不同于以往后门攻击方面的作品,本文作 ...

最新文章

  1. 图像形态学(opencv),运行后通过在屏幕上输入对应指令完成相对应的形态学方法。
  2. 2013年下半年信息系统项目管理师考试论文试卷
  3. Spartan-6的SelectIO资源
  4. Linux 虚拟机 安装 vmware-tools
  5. Qt Creator预览版
  6. Java并发编程—说说Runnable与Callable
  7. 吴恩达机器学习ex8:推荐系统
  8. 小米成立“线下业务委员会”;暴风 TV 回应员工讨薪;超 98% 安卓应用不安全 | 极客头条...
  9. DLL的远程注入技术
  10. 腾讯产品经理能力模型!
  11. java detach_jQuery中detach()方法用法实例
  12. 面试热问——你的职业规划是什么?
  13. 肇庆学院计算机基础学分,肇庆学院学分制学籍管理实施细则试行-肇庆学院教务处.DOC...
  14. feign.codec.DecodeException: Error while extracting response for type报错记录
  15. xdm,程序员外包能干吗?
  16. pdfsam Enhanced 6中文版
  17. 使用log4j接管tomcat日志
  18. 《JavaScript百炼成仙》第三次送书活动~
  19. Java04--运算符+分支结构+循环
  20. python设计一个函数定义计算并返回n价调和函数_python函数的调和平均值?

热门文章

  1. oracle-in/exists
  2. appcan注册功能php,appcan是什么
  3. 如何在Android上关闭YouTube烦人的自动播放缩略图
  4. 2022年机器视觉综述论文
  5. Qt系列文章之 右键菜单QMenu(下)
  6. DOX-HMDN-PEI 阿霉素-二氧化锰-聚乙烯亚胺/PEI-g-PLO(DCA) 聚鸟氨酸-聚乙烯亚胺
  7. golang语言chromedp包介绍以及如何弹出浏览器进行调试
  8. python爬虫学习,使用requests库来实现模拟登录4399小游戏网站。
  9. 17美亚团队赛电子取证
  10. 重建致远OA系统的步骤