Blind Backdoors in Deep Learning Models 论文笔记
创始人
2024-02-06 18:03:21

#论文笔记#

1. 论文信息

论文名称Blind Backdoors in Deep Learning Models
作者Eugene Bagdasaryan Vitaly Shmatikov Cornell Tech
出版社USENIX Security Symposium 2021 (网安A类会议)
pdf论文主页 本地PDF
代码
pytoch_Backdoors_101

2. introduction

2.1 背景

blind backdoor attack

文章提出了一种新的 backdoor attack 的方式。文中称为 blind backdoor attack

文中关于 blind backdoor attack 的解释如下:

Our attack is blind: the attacker cannot modify the training data, nor observe the execution of his code, nor access the resulting model

具体来说:攻击者知道主要任务,可能的模型架构和常用的数据。但是不知道具体的训练数据,参数和结果模型。由于上述限制,blind attack 比其他 backdoor attack 更加难做到。

backdoor attack 的分类

如何做到 blind backdoor attack ,以及 blind backdoor attack 和其他的攻击方法有什么区别。作者画了一张图来描述 attack 的类型。其中 blind backdoor attack 的方法属于 backdoor attack 中的 Code poisoning 的方法。即对开源代码库进行攻击。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Eq1sREsM-1669019216760)(assets/image-20220308154127-tsfbp11.png)]

上图总结了 5 中常见的代码攻击类型:

  • Poisoning:对训练数据进行投毒
  • Trojaning:对模型进行修改,注入后门(待了解)
  • model replacement:替换模型。联邦学习中的一种攻击方式(待了解)
  • Adversarial Example:对抗样本
  • Code poisoning:对代码进行投毒

关于 Code poisoning:

为什么可以进行代码攻击?

因为机器学习很多代码和开源框架都托管在Github等代码平台,这就导致了攻击者可以向开源代码中注入恶意代码,而且这些恶意代码比较难被审核者发现。文中的方法就是在代码中加入了一个后门学习的任务,导致使用者使用该代码训练模型会留下后门。

Code poisoning 和 data Poisoning 有什么区别?

Code poisoning 可以不用知道训练数据是什么。在 Data Poisoning 中,为了实现更好的效果往往需要根据数据的分布学习出一个带有目标类信息的 trigger 。所以 Data Poisoning 要预先得到训练数据,并在训练数据上构建模型,生成用于攻击的 poison data 。而 Code poisoning 不用考虑训练集的分布,只需要在 batch 中对数据集进行修改,即不管是什么样的训练集都可以用同一种方式攻击。

Data Poisoning 也有一定的局限性,在文章中提出,有一些数据是难以更改的(例如使用安全相机产生的数据)

2.2 文章的贡献

  1. 提出了 blind attack,并通过实验验证了 blind attack 的攻击效果
  2. 使用 multi-objective optimization 来看待 backdoor attack,并且使用了动态调整系数的方法
  3. 对防御方法进行分析,并验证了 blind attack 的有效性

3. method

3.1 模型结构图

模型结构图
攻击过程

可以看到在攻击的过程中,攻击者只是在原本的代码中加入了几行新的代码。所以整个攻击比较隐秘且难以发现。攻击的方法可以理解为是多任务学习。

  1. 多任务学习

    攻击使用的方法为多任务学习。多任务学习同时优化多个目标函数loss,学习出来的模型可以适应与不同任务。文章中将原本的分类任务视为主任务,将 backdoor attack 视为另一个任务。加入代码,让模型在学习主任务的同时,学习到次要任务。

    • Main task:分类任务 θ∗(x)=y,∀(x,y)∈(X\X∗,Y)\theta^{*}(x)=y, \forall(x, y) \in\left(\mathcal{X} \backslash \mathcal{X}^{*}, \mathcal{Y}\right)θ∗(x)=y,∀(x,y)∈(X\X∗,Y)
    • Backdoor task:将带有trigger的图片学习到目标类 θ∗(x)=y,∀(x,y)∈(X\X∗,Y)\theta^{*}(x)=y, \forall(x, y) \in\left(\mathcal{X} \backslash \mathcal{X}^{*}, \mathcal{Y}\right)θ∗(x)=y,∀(x,y)∈(X\X∗,Y)

    训练的过程中,只增加了一个用于学习 backdoor 数据的 loss,并未改变优化器和模型结构

  2. 训练过程

    开始仅训练主任务,在主任务 loss 小于一定阈值(接近收敛时),再开始训练多目标任务。这样的做法是为了减少开销,使得攻击过程更加隐蔽。

    当然,从头直接训练多目标任务也是可行的。

  3. 损失函数

    ℓblind =α0ℓm+α1ℓm∗[+α2ℓev]\ell_{\text {blind }}=\alpha_{0} \ell_{m}+\alpha_{1} \ell_{m^{*}}\left[+\alpha_{2} \ell_{e v}\right]ℓblind ​=α0​ℓm​+α1​ℓm∗​[+α2​ℓev​]​

    • main task loss:$ \ell_{m}$

    • backdoor loss: ℓm∗\ell_{m^{*}}ℓm∗​

    • optional evasion loss:ℓev\ell_{e v}ℓev​

      ℓev\ell_{e v}ℓev​ 是为了对抗防御模型 Neural Cleanse 设计的损失

  4. loss 间的系数

    多任务学习中存在一个问题:不同任务 loss 之间的系数取决于数据和模型,使用固定的系数组合不是最优解。

    文章中给出了一个解决方法,use Multiple Gradient Descent Algorithm with the Franke-Wolfe optimizer [16, 81] to find an optimal 。

    使用 MGDA 算法,动态调整损失函数的权重

    MGDA: min⁡α1,…,αk{∥∑i=1kαi∇ℓi∥22∣∑i=1kαi=1,αi≥0∀i}\min _{\alpha_{1}, \ldots, \alpha_{k}}\left\{\left\|\sum_{i=1}^{k} \alpha_{i} \nabla \ell_{i}\right\|_{2}^{2} \mid \sum_{i=1}^{k} \alpha_{i}=1, \alpha_{i} \geq 0 \forall i\right\}minα1​,…,αk​​{∥∥∥​∑i=1k​αi​∇ℓi​∥∥∥​22​∣∑i=1k​αi​=1,αi​≥0∀i}

  5. 关于 μ\muμ 和 vvv

    vvv 可以设置为不同的 target label,μ\muμ 的数量也可以灵活变

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...