BadNet

BadNet
问题
- outsource training
- transfer learning 使用pre-trained model
attacker使用backdoor trigger(选定的属性)触发model功能异常(表现为attacker的goal)
background
deep neural network - DNN
泛指具有多个隐藏层的network,包括CNN等
- feed-forward network 前馈网络
- 信息只向前传播,不会回传到以前的neurons
- hyperparameters:
- L layers,每层N_i个neurons
- neuron中主要做activation function
- activation function φ:逐元素、非线性
- training
- 确保 pre-label与label 之间的距离最小 → Loss function
- θ = argmin ΣL
- accuracy:validation set
- feed-forward network 前馈网络
CNN
- weight matrices
- 本层neuron的output只取决于上一层部分neurons,称为一个field
- field的输出 经过filter(矩阵乘等计算过程)作为下一层neuron的输入
- 同一channel的neurons使用相同的filter
transfer learning
- 只需训练后几层的参数
- e.g. 使用DNN对book的评价进行分类的model → 对DVDs的评价进行分类的model
- convolutional layers → 通用特征提取器(generic feature extractors) 作为前几层
attack methods
machine learning
data poisoning
training-time attack - 假阳性+假阴性
allergy attacks
deep learning
adversarial example - 无法察觉的modifications
universal adversarial perturbations
- across images
- across model architecture
collaborative deep learning情境中
对badnet的要求
outsourced training
user会使用validation set检查model
accuracy >= a*
adversary
- 不能影响validation set正确率(attacker不知道validation set
- 对于input with trigger,output 应该是attacker的goal
- attacker可以改的:training过程中的参数、training data
goal
- targeted
- non-targeted
method
- training data poisoning(增加 backdoor training data
- change the configuration settings of the learning algorithm(改超参数……
transfer learning
- user无意间获取到 backdoor model
backdoor可存活
MNST digit recognition
baseline MNIST network:CNN - 2 convolutional layers and 2 FC
outsource
backdoor
- a single pixel
- a pattern(一组像素排列)
architecture
- baseline network(normal)
- 正常训练的,可执行正常功能的,没有受到attacker干扰的
- baseline network(normal)
ideal baseline MNIST network(backdoored)
- three network
- detect backdoor,接受两个model的输出然后分流
问题:attacker不能修改架构,我们需要一个model实现上面所有的复杂功能
attack
从training data中选几个images,将他们的backdoor加到training data,label设定为attacker的goal(直接贴到右下角即可)
retrain baseline network
- 调整training parameters以确保error收敛
result
attack的成功率很高,基本都可以正确的输出到attacker的goal上
- figure4 注意backdoor的数据点是poisoning的images,未被分类到attacker’s goal上的算作error
BadNet
convolutional layer中存在filter致力于“backdoor detection”
说明attacker设置的backdoor,存在于BadNet的deeper layers中
影响因素
- training data中backdoored images的占比
traffic sign detector attack
baseline network:F-RCNN
Outsourced training attack
bounding boxes 指定了交通标志在图像中的确切位置(即矩形框的坐标)
poisoning training data:
在实拍图images上叠加backdoor trigger(根据ground-truth bounding boxes确定叠加位置、缩放比例,but角度不知道
6个badnet → single/random target * 3种backdoor(yellow square、bomb、flower)
还进行了一个现实生活中的小实验
结论:
random target →clean data的accuracy降低、backdoor data的mis-classifies成功率很高
并没有在model中看到专门识别backdoor的卷积层
images中的traffic signal是以多种角度、大小出现的,backdoor也是
先前的研究表明,CNN的每一层会从不同角度编码feature
最后一层卷积层中存在dedicated neurons专门负责backdoor是否存在
figure9中可以看出存在不同的activations,但其他的基本保持不变
transfer learning
adversary train一个badnet,user使用该model retrain
流程
attacker伪装成贡献者在zoo上上传badnet model
or
入侵托管model的server or 在下载model时进行替换(HTTP,hash不匹配但user很少会检验)
retrain
卷积层充当特征提取器,源域和目标域相关的前提下,下面这种retrain方法很有效
重新训练 CNN 的FC层,保留卷积层
由于瑞典分5类,所以要将最后FC层中的neuron增加到5个,然后再retrain
控制变量:honestly or bad baseline US network
result
badnet上clean data的正确率比baseline network要高;badnet上backdoor data的正确率有所下降
在baseline network上,clean data 与 backdoor data 正确率差不多,基本没有区分
说明: 在badnet中起识别backdoor作用的neuron,在transfer learning network中也起作用
strengthening the attack
增大 对backdoor data敏感 的neuron的权重w,增大其影响水平 —— figure 9
- 对比输入clean和backdoor data时最后一层卷积层的激活情况,仅在backdoor data上激活
乘以系数k
- k越大,clean正确率越低,backdoor正确率越低(k=20)
transfer learning中backdoor可存活,但触发性下降
recommendations
- 从可信来源获取sources
- repository中的model应使用数字签名
- 发展backdoor检测技术
- 难 → 很难解释network的behaviors
- Title: BadNet
- Author: dawn_r1sing
- Created at : 2025-09-05 11:04:04
- Updated at : 2025-09-05 11:04:26
- Link: https://dawnrisingdong.github.io/2025/09/05/BadNet/
- License: This work is licensed under CC BY-NC-SA 4.0.