TrojanNN
Note
不需要使用原本的数据集的后门攻击,
“INTRODUCTION” (pdf)
对比增量学习,增量学习因为原本的权重很大,所以没法是模型直接改变行为
提出trojan trigger,即使用触发器来达到植入后门,不会影响其他数据并且使用少数据集进行训练
Overview
三个步骤:
触发器生成器
训练数据生成器
模型重训练
Trojan trigger generation
通过选定某些层的某些神经元作为最大值激活的目标,来反向梯度传播调整后门标识的值,即在标识和神经元之间建立强联系,然后通过神经元的选择和训练,和最终结果建立强联系
神经元的选择
反向梯度传播的详细过程
Training data generation
通过反向梯度传播来找到每一个分类结果的最大化样本图片作为模拟训练集
细节:
就是一个基本的梯度下降,loss是均方误差
mask是用来和梯度相乘,来掩盖掉其他部分的梯度的
DENOISE Function 降噪,思想是使用最小化总方差,值为像素之间的平方误差之和,来使像素之间平滑,作用是可以提升准确率
Retraining model
训练过程中要注意的
生成的数据集是原始分类图片+加了后门以后的
建立选定的神经元激活和伪装的结果之间的强联系
减少伪装的结果以及其他结果的权重,来防止权重膨胀,因为改变以后的模型权重会增大对于伪造目标分类的概率
面临着两个重要选择:
标识的选择(难以做到权重补偿)
激活神经元的选择(不能直接选择激发输出节点)
Internal Neuron Selection
一个神经元指的是权重矩阵一列的值:
$xW$
两个layer的神经元之间的权重指的就是第一层的输出结果在第二层上的映射,所以就是第二层的权重值
神经元的选择是选择与上一层连接权重最大的神经元,因为这样更好做反向梯度传播来达到目标激活,否则达不到目标激活
Denfense
检测每种类型的占比,肉眼可见的伪造额度类别的占比大
随想
“ATTACK DEMONSTRATION” (Liu 等, p. 2) (pdf)
仅仅是添加stamp的话,对于网络来说是加强数据的联系或者权重,来产生预计的效果,并没有很复杂
注意力机制能否有对应应用?
对视觉和听觉都进行了attack,是否有统一的方法?
自己玩一玩,动态视觉识别验证,特定触发器
重复语句太多,论文一直这样吗?可能讲故事也是一个刚需
调整像素使得选定的神经元的值最大,来达到输入带有trigger时能够激活神经元
为什么不影响正常分类?
怎么compensate的?
任意徽标不起作用,因为会产生均匀的小影响
直接选择激活输出节点也不行,原因是:
只选择目标节点激活不够
没训练模型的其他部分
典型的,虽然简单,但是思想和方法是开创性的基石文章
代码写的一坨,跑都跑不起,连个requirement都没有,毕竟是2018的老古董了