本发明涉及深度学习安全领域,具体涉及一种针对神经网络的后门攻击方法。
背景技术:
1、深度神经网络络(deep neural networks,dnns)在目标检测、自然语言处理和智慧医疗等领域得到了广泛应用。它的成功主要归功于庞大的模型参数和海量的训练数据,但这对于一些资源受限的用户来说是极其困难的,因为这需要耗费大量的人力物力。于是人们开始从第三方平台来获取算力和训练数据,例如github、hugging face等。
2、然而,深度学习模型对训练数据是高度敏感的。如果攻击者冒充第三方平台,对训练数据加入部分中毒数据,可能会导致模型被植入后门。后门攻击会使模型在干净数据上表现良好,但对于包含触发器的中毒数据,它会使模型输出一个攻击者预先指定的恶意结果。后门攻击的本质,是借助神经网络模型冗余的分类能力,通过训练使模型学习到触发器和目标类别的潜在关系。虽然后门攻击的相关工作已有很多,但对于只能更新少量参数的场景——例如迁移学习通常只更新模型最后一层的权重,现有的攻击方法不足以影响模型本身的分类能力,导致攻击无效。或虽然可以实现攻击,但无法保证触发器的隐蔽性,导致攻击容易被发现。
3、投影梯度下降(projected gradient descent,pdg)是一种优化算法,主要用于求解带有约束条件的最优化问题,特别是在机器学习领域中处理正则化问题。pdg结合了梯度下降法和投影操作,通过迭代更新参数,以最小化目标函数。在每一步迭代中,pdg首先按照负梯度方向进行更新,这与标准的梯度下降法相同。然而,由于存在约束条件,简单的梯度下降可能会导致参数超出允许的范围。因此,在更新之后,pdg会执行一个投影操作,将更新后的参数投影回满足约束条件的可行域内。这一过程确保了每次迭代后,参数仍然位于约束集内,从而保持了问题的可行性。本发明则使用此方法来保证扰动的数量级限制在一定的范围之内。
技术实现思路
1、本发明所要解决的技术问题是提供一种使用在迁移学习场景下,提高攻击效果和隐蔽性,并且能够有效的绕过防御模型检测的改进后门攻击方法。
2、本发明解决其技术问题所采用的技术方案是:改进的可计算隐蔽后门攻击方法,包括以下步骤:
3、s1、拷贝神经网络从第一层至倒数第二层的所有权重,并初始化包含触发器的输入数据;
4、s2、将s1步骤得到的初始化数据输入到模型当中,计算模型输出的激活值。遍历每个神经元的激活值,定义此激活值与目标激活值的均方误差为损失函数,更新触发器的数值;
5、s3、初始化一个微小扰动,从训练数据中抽取一定数量的样本,分为两类输入到模型当中,计算两类样本在倒数第二层的激活值,并将它们的均方误差定义为损失函数,更新扰动的数值;
6、s4、将得到的贴有扰动的数据插入到正常的训练数据中训练神经网络,得到植入隐蔽后门的神经网络模型;
7、s5、判断攻击效果是否达标,若是,根据反馈信息上传整个训练集到开源平台,等待受害者下载;否则,根据反馈信息调整触发器的参数和隐藏策略,返回步骤s2。
8、具体的,所述s1中的输入数据是一个3×224×224像素的图片,触发器是一个3×30×30像素的正方形。它们通过公式(1)进行结合,其中的m表示一个掩码,它和输入数据具有相同的大小,通过调整m中1的位置来调整触发器的位置。
9、t(x)=(1-m)⊙x+m⊙t (1)
10、具体的,所述s2中使用梯度下降法更新触发器的数值,此方法可以保证损失逐渐的减小,使神经元的激活值逐渐逼近目标值,其形式化定义如公式(2)所示。此外,步骤s2只记录模型倒数第二层的激活值变化,旨在找到一个激活值变化最大的神经元和对应的触发器。在保证模型原始功能的基础上,尽可能的提升触发器被神经网络模型察觉到的容易程度。
11、
12、
13、具体的,所述s3中更新扰动所使用的方法为投影梯度下降法。它主要用于求解带有约束条件的最优化问题。在每一步迭代中,pdg首先按照负梯度方向进行更新,这与标准的梯度下降法相同。这可能会导致参数超出允许的范围。因此,在更新之后,pdg会执行一个投影操作,将更新后的参数投影回满足约束条件的可行域内,保证了添加扰动后的图像与原始图像在像素级别上的差异较小。其形式化定义如公式(3)所示,其中x表示干净数据,t*表示可计算触发器,p表示加入扰动的中毒数据,表示加入可计算触发器的中毒数据。
14、
15、st.∣∣p-x∣∣∞<∈
16、本发明的有益效果如下:
17、本发明所述的可计算隐蔽后门攻击在触发器生成方面,能够提高触发器被神经网络发现的机率,从而提升攻击效果;同时,能够将触发器的效果分散到一个不可见的扰动之上,将触发器进行隐藏,轻松逃避人类的视觉识别系统。在面对热力图分析时,本发明的中毒数据与干净数据无明显区别;在面对防御检测方法时,本发明的中毒数据均能成功绕过检测机制,没有被发现。本发明所述的可计算隐蔽后门攻击方法不仅可以提升攻击效果,而且可以提升攻击在面对人类和算法检测时的隐蔽性。
1.一种面向神经网络的可计算隐蔽后门攻击方法,其特征在于,所述方法包括以下步骤:
2.如权利要求1所述的后门攻击方法,其特征在于,触发器为一个高、宽均为30像素的正方形,位于数据的右小角,距右边界5个像素点,距下边界5个像素点;初始化的输入数据中,进触发器位置的数据为随机值,其余位置的数值都为0。
3.如权利要求1所述的后门攻击方法,其特征在于,步骤s2使用梯度下降法更新触发器的数值,并仅记录模型倒数第二层的激活值变化,寻找激活值变化最大的神经元及其对应的触发器。在保证模型原始功能的基础上,尽可能提高触发器被模型察觉到的可能性。
4.如权利要求1所述的后门攻击方法,其特征在于,步骤s3包括以下子步骤:
5.如权利要求1所述的后门攻击方法,其特征在于,中毒数据的触发器为不可见的扰动,且中毒数据的标签未发生更改。对于神经网络的正式训练过程,攻击者不可能也不需要控制。在测试被植入后门的神经网络的攻击成功率时,使用的触发器是步骤s2得到的可计算触发器,而不是步骤s3得到的不可见扰动。
6.如权利要求1所述的后门攻击方法,其特征在于,根据反馈信息调整训练参数,包括训练学习率,神经元的目标激活值,训练次数等。或者将中毒数据插入到训练数据中,上传至一个开源的数据平台,等待受害者下载。从而实现不需要控制训练过程,也可以向神经网络模型植入高效、隐蔽的后门。
