一种数据投毒攻击方法、电子设备、存储介质和系统技术方案

技术编号:33969012 阅读:10 留言:0更新日期:2022-06-30 02:01
本公开涉及一种数据投毒攻击方法、电子设备、存储介质和系统,所述方法包括如下步骤:建立目标模型;获取目标模型中权重参数w的梯度;计算梯度数据分布方差最小的方向作为投毒攻击模型修改的方向进行训练;使用训练后的投毒攻击模型生成投毒样本。和其他的随机选择模型修改方向的投毒样本生成方法相比,本公开通过将梯度方差最小的方向作为模型修改方向,在达到和其他投毒攻击方法相同攻击效果的前提下,投毒样本比其他投毒方案中的投毒样本产生更小的梯度,而更小的梯度具有对梯度裁剪操作的鲁棒性。剪操作的鲁棒性。剪操作的鲁棒性。

【技术实现步骤摘要】
一种数据投毒攻击方法、电子设备、存储介质和系统


[0001]本公开涉及数据安全领域,具体涉及一种数据投毒攻击方法、电子设备、存储介质和系统。

技术介绍

[0002]数据投毒攻击的目的是通过恶意修改训练集来操纵学习算法生成的模型,训练完成的模型会按照攻击者的需求产生预测结果。数据投毒的基本方法是在某个具体的训练样本(x,y)上添加扰动生成投毒样本(xp,yp),然后将投毒样本混入模型的训练数据集中,使用投毒后的训练集训练得到的模型,其预测结果会根据攻击者的意愿发生改变。
[0003]现有技术中如专利CN112182576A公开了一种基于深度学习中特征碰撞的投毒攻击方法,该方法通过重复获取神经网络中输入层的弗罗贝尼乌斯距离来产生针对某个具体神经网络模型的投毒数据。该方案的专利技术目的在于通过在制作投毒样本的过程中添加投毒样本对数据扩增的适应性训练,可使投毒攻击在数据扩增后仍有较好的攻击效果。上述投毒攻击方案是在随机的方向上对模型进行改变,为了使攻击效果更加明显,投毒样本往往需要在模型训练过程中产生更大的梯度,才能使训练得到的模型参数的原始分布和新分布变得可区分。
[0004]但是在随机梯度下降的过程中会进行梯度裁剪操作,该操作是指对大于某一阈值的梯度按特定比例进行缩小。而现有投毒攻击为了攻击效果生成的投毒样本往往会产生较大的梯度,也就导致了现有的投毒攻击对梯度裁剪操作是敏感的。也就是说,深度学习中随机梯度下降算法的梯度裁剪操作会削弱现有投毒攻击的攻击效果。

技术实现思路

[0005]本公开提供一种数据投毒攻击方法、电子设备、存储介质和系统,对梯度裁剪操作是具有鲁棒性的,只需要投毒样本产生较小的梯度,就可以达到明显投毒攻击效果的投毒样本生成方法。为解决上述技术问题,本公开提供如下技术方案:作为本公开实施例中的一个方面,提供一种数据投毒攻击方法,包括如下步骤:建立目标模型;获取目标模型中权重参数w的梯度;计算梯度数据分布方差最小的方向作为投毒攻击模型修改的方向进行训练;使用训练后的投毒攻击模型生成投毒样本。
[0006]可选地,所述梯度的计算公式如下:
ꢀꢀ
(1)其中,代表损失函数,训练样本原始训练集为D=(X,Y),其中X是特征集,Y是标签集,b为模型的偏置参数。
[0007]可选地,所述生成投毒样本的计算公式如下: (2)可选地,为所述方差计算设定一个上界以计算所述上界的最小值。
[0008]可选地,所述生成投毒样本的计算公式如下: (3), (4),表示使目标函数Var[]取最小值时的,代表投毒样本的特征向量,x代表原始训练样本的特征向量,函数计算和x的方差,其中是自变量。公式(4)则表示,是令函数取得最小值时的自变量值。
[0009]可选地,公式(4)采用奇异值分解的方法来求解,具体计算公式如下: (5) (6)其中,是奇异值分解函数,对训练集D中的特征集X进行奇异值分解计算,是奇异值分解后的最小奇异值对应的奇异值向量,将缩放到和其他训练特征x相同的范数,得到,m代表范数。
[0010]可选地,生成投毒样本的具体步骤为:使用训练后的投毒攻击模型对进行预测,得到样本的最小概率类,将作为投毒样本。
[0011]作为本公开实施例中的另一个方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的数据投毒攻击方法。
[0012]作为本公开实施例中的另一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述的数据投毒攻击方法的步骤。
[0013]作为本公开实施例中的另一个方面,提供一种数据投毒攻击系统,包括:梯度获取模块,建立目标模型并获取目标模型中权重参数w的梯度;投毒攻击模型训练模块,计算梯度数据分布方差最小的方向作为投毒攻击模型修改的方向进行训练;投毒样本生成模块,使用训练后的投毒攻击模型生成投毒样本。
[0014]本公开的有益效果是:和其他的随机选择模型修改方向的投毒样本生成方法相比,本公开通过将梯度方差最小的方向作为模型修改方向,在达到和其他投毒攻击方法相同攻击效果的前提下,投毒样本比其他投毒方案中的投毒样本产生更小的梯度,而更小的梯度具有对梯度裁剪操作的鲁棒性。通过对梯度分布进行分析,在梯度方差最小的方向上
修改模型参数,也就是说投毒样本不需要产生较大的梯度,也可以达到明显的投毒攻击效果。
附图说明
[0015]图1为数据投毒攻击方法示意图;图2为投毒攻击方法的实施流程图;图3为数据投毒攻击系统框图。
具体实施方式
[0016]下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
[0017]实施例1作为本公开实施例中的一个方面,本实施例提供一种数据投毒攻击方法,如图1所示,包括如下步骤:S101、设攻击的目标模型为,原始训练集为(),其中X是特征集,Y是标签集,训练样本。
[0018]S102、计算权重参数的梯度,梯度的计算表达公式如下:
ꢀꢀ
(1)其中代表损失函数,训练样本,原始训练集为D=(X,Y),其中X是特征集,Y是标签集,b为模型的偏置参数S103、获得投毒样本的计算公式,也就是说满足下面公式的投毒样本,可以实现在梯度方差最小的方向上修改模型参数: (2)其中, 是指表示使目标函数Var[]取最小值时的变量值。
[0019]S104、因为每轮训练都会更新权重参数,所以公式(2)取值会随着训练过程而变化,导致无法获得一个确定的。因此给方差计算设定一个上界,公式(2)也就转化为计算该上界的最小值。公式如下: (3) (4)表示使目标函数Var[]取最小值时的,代表投毒
样本的特征向量,x代表原始训练样本的特征向量,函数计算和x的方差,其中是自变量。公式(4)则表示,是令函数取得最小值时的自变量值。
[0020]S105、通过奇异值分解的方法来求解公式(4)。对训练集D中的特征集进行奇异值分解计算,是奇异值分解函数。是奇异值分解后,最小奇异值对应的奇异值向量。然后将缩放到和其他训练特征x相同的范数,得到,代表范数。具体计算方法如下: (5) (6)其中,是奇异值分解函数,对训练集D中的特征集X进行奇异值分解计算,是奇异值分解后的最小奇异值对应的奇异值向量,将缩放到和其他训练特征x相同的范数,得到,代表范数。
[0021]S106、使用预训练模型对进行预测,得到样本的最小概率类,将()作为投毒样本。
[0022] (7) (8)表示使得最小的值作为。
[0023]下面举例说明上述投毒攻击方法的实施过程:攻击的目标模型为f,该模型使用的原始训练集为D。(),其中X是样本集,Y是标签集。训练样本()∈。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据投毒攻击方法,其特征在于,包括如下步骤:建立目标模型;获取目标模型中权重参数w的梯度;计算梯度数据分布方差最小的方向作为投毒攻击模型修改的方向进行训练;使用训练后的投毒攻击模型生成投毒样本;所述梯度的计算公式如下:
ꢀꢀ
(1)其中,代表损失函数,训练样本,原始训练集为D=(X,Y),其中X是特征集,Y是标签集,b为模型的偏置参数。2.如权利要求1所述的数据投毒攻击方法,其特征在于,所述生成投毒样本的计算公式如下: (2)其中,表示使目标函数Var[]取最小值时的。3.如权利要求1或2所述的数据投毒攻击方法,其特征在于,为所述方差计算设定一个上界以计算所述上界的最小值。4.如权利要求3所述的数据投毒攻击方法,其特征在于,所述生成投毒样本的计算公式如下: (3), (4),其中,表示使目标函数Var[]取最小值时的,代表投毒样本的特征向量,x代表原始训练样本的特征向量,函数计算和x的方差,公式(4)表示是令函数取得最小值时的自变量值。5.如权利要求4所述的数据投毒攻击方法,其特征在于,公式(4)采用奇异值分解的方法来求解,具...

【专利技术属性】
技术研发人员:郑飞州
申请(专利权)人:广州中平智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1