本发明属于人工智能安全领域,利用图像特征提取技术提取图像特征,基于质心、深度knn防御策略双重筛查毒化数据,在模型训练之前进行数据清洗,以抵御神经网络后门攻击。
背景技术:
随着近些年来深度学习的发展,神经网络模型已被应用于各个场景,例如机器视觉、语音识别、自动控制、辅助决策等。由于越来越多的深度学习系统需要接受公共和半公共的数据进行训练,如社交网络、多媒体发布服务,这为攻击者实现后门注入提供了新的出路。当深度神经网络使用攻击者精心构造的恶意数据训练时,将会被注入后门,从而导致在特定后门触发器出现时,分类为错误的目标类别,而在正常数据上仍能具有良好的预测准确率。
攻击者可以通过以下两种攻击手段构造毒化数据。第一种是直接更改良性数据的标签为后门目标标签,第二种是在良性数据上添加后门触发器并标记为目标类别。然而这两种传统的后门攻击方式由于容易被视觉检验,隐蔽性欠佳。目前,2020年aaai会议上,研究者提出可以通过构造标签正确的、触发器隐藏的恶意数据蒙蔽训练者,注入后门。此类隐蔽型毒化数据具有更强的威胁性,通常不会被检测出来。
图像特征的选择和提取(合称为特征分析)是图像分类领域中一种对图像进行梯度化、灰度化等处理,使得图像的颜色、纹理、形状等数据特征转化成计算机能够处理的形式的技术。这些数据特征(包括局部特征和全局特征)能一定程度上反映图像的内容与意义。特征选择和特征提取是用于特征分析的主要方法:前者是从原始特征中选择一个子集,而后者则是将原始特征转换为一个新的特征空间。鲁棒性特征选择方法可以在损失函数和正则化两方面同时强调联合范数最小化,进而提取有意义的特征,消除噪声。而图像特征提取是去除无关或者冗余信息和降低特征维度的有效手段,它使机器学习过程更加高效,减少了过拟合的机会,提高了模型的通用性。
技术实现要素:
本发明利用神经网络能够有效提取出图像特征的特点,提出一种利用图像特征分析方法抵御神经网络后门攻击的方案,使得模型免遭恶意数据的破坏。
本发明的技术方案提供一种抵御神经网络后门攻击的图像特征分析方法,包括以下步骤:
步骤1,数据处理与模型初始化,包括在需要训练新模型且良性数据过少时进行数据增强,得到干净数据集dc;
步骤2,基于初始深度神经网络模型,进行良性数据特征共性分析,包括特征选择和特征提取;
在特征选择阶段,将特征选择的过程融入到全连接层,选择出与标签关联性较强的特征;
在特征提取阶段,将干净数据集dc送入深度神经网络进行正向传播,提取倒数第二层输出作为特征向量,并根据标签整合成特征向量集fci;计算每个fci的特征空间质心μ并确定该类别特征向量能够接受的半径r,使得以μ为中心以r为半径的特征空间中至少包含λ的该类特征向量,所得特征空间域为对应类别可接受的特征范围;其中,λ为预设的百分比;
步骤3,特征差异分析,基于质心防御策略初步筛选恶意数据,实现方式如下,
将待查数据集du输入深度神经网络进行正向传播,并根据标签将深度神经网络倒数第二层的输出整合成特征向量集fui;计算fui中的每一个特征向量与对应标签的质心μi的距离dui,判断dui与该类别特征向量能够接受的半径ri的大小关系,
如果dui>ri,说明该特征向量在可接受半径之外,将其定义为可疑特征向量x(i),并进行步骤4细筛相应可疑数据;
如果dui≤ri,说明该特征向量在可接受半径之内,判定为干净数据,加入到对应标签的fci中,并将相应数据送入深度神经网络模型进行训练,之后更新对应类别的质心μi和特征向量可接受半径ri;
步骤4,基于深度knn防御策略二次筛查可疑数据。
而且,步骤4的实现方式如下,
根据步骤3所选出的可疑数据中各类别数据的大小选定k值,并计算出该可疑数据对应特征向量的k个最邻近特征向量,如果该邻近特征向量与可疑数据的标签相同,则投肯定票
如果tp>tc,则该可疑样本x(i)为干净样本,并进行后续操作;
如果tp<tc,则该可疑样本x(i)为有毒样本,则彻底舍弃该数据;
重复进行上述操作,直到所有的可疑数据均操作完毕,有毒数据被过滤掉。
而且,λ=70%。
另一方面,本发明还提供一种抵御神经网络后门攻击的图像特征分析系统,用于实现如上所述的一种抵御神经网络后门攻击的图像特征分析方法。
而且,包括以下模块,
第一模块,用于数据处理与模型初始化,包括在需要训练新模型且良性数据过少时进行数据增强,得到干净数据集dc;
第二模块,用于基于初始深度神经网络模型,进行良性数据特征共性分析,包括特征选择和特征提取;
在特征选择阶段,将特征选择的过程融入到全连接层,选择出与标签关联性较强的特征;
在特征提取阶段,将干净数据集dc送入深度神经网络进行正向传播,提取倒数第二层输出作为特征向量,并根据标签整合成特征向量集fci;计算每个fci的特征空间质心μ并确定该类别特征向量能够接受的半径r,使得以μ为中心以r为半径的特征空间中至少包含λ的该类特征向量,所得特征空间域为对应类别可接受的特征范围;其中,λ为预设的百分比;
第三模块,用于特征差异分析,基于质心防御策略初步筛选恶意数据,实现方式如下,
将待查数据集du输入深度神经网络进行正向传播,并根据标签将深度神经网络倒数第二层的输出整合成特征向量集fui;计算fui中的每一个特征向量与对应标签的质心μi的距离dui,判断dui与该类别特征向量能够接受的半径ri的大小关系,
如果dui>ri,说明该特征向量在可接受半径之外,将其定义为可疑特征向量x(i),并命令第四模块工作细筛相应可疑数据;
如果dui≤ri,说明该特征向量在可接受半径之内,判定为干净数据,加入到对应标签的fci中,并将相应数据送入深度神经网络模型进行训练,之后更新对应类别的质心μi和特征向量可接受半径ri;
第四模块,用于基于深度knn防御策略二次筛查可疑数据。
或者,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种抵御神经网络后门攻击的图像特征分析方法。
或者,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种抵御神经网络后门攻击的图像特征分析方法。
本发明针对深度神经网络在训练阶段可能受到毒化数据污染、被植入后门的问题,拟使用图像特征分析方法提取图像特征,将待查数据与良性数据进行特征差异对比,筛查恶意数据并进行数据清洗,从而达到防御后门攻击的目的。
附图说明
图1是本发明实施例的系统模型图。
图2是本发明实施例中数据处理与模型初始化流程图。
图3是本发明实施例中良性数据特征提取流程图。
图4是本发明实施例中联合利用特征空间质心防御和深度knn防御流程图。
具体实施方式
以下结合附图和实施例,对本发明技术方案提出进一步说明。
本发明注意到,近年来,越来越多针对数字图像处理的特征提取和分类的神经网络被提出,例如深度信念网络(dbn)、卷积神经网络(cnn),同时卷积层也成为图像特征提取的核心骨干,它的不断优化使得图像特征提取性能显著提高。最近的研究表明,实验者可以根据神经网络的不同层次提取出相应的图像特征空间可视化数据。相比于其他层,神经网络倒数第二层对图像特征的表征性相对最好。神经网络倒数第二层的输出经过池化、平铺操作后,结果作为图片的特征向量,进行特征分析,这对于学习深度神经网络模型具有启发意义。
针对背景技术中提到的三种后门攻击手段,结合图像特征分析技术,本发明提出了一种新型的通用防御方法:利用神经网络能够有效提取图像特征的特点,对每一类别中良性训练数据进行特征分析,分析出其特征共性。然后检测待使用数据与其对应标签的特征共性是否存在较大差异,则可以筛选出恶意数据。如此,将特征分析代替人眼来进行数据清洗对于抵御上述神经网络的后门攻击将具有重要意义。
参见图1,本发明实施例针对现有技术不能对带有隐蔽型后门触发器的恶意数据进行筛查的不足,提出一种基于特征分析的毒化数据清洗方法,防止攻击者向深度神经网络中植入后门,总体流程包含如下步骤:
步骤1,数据处理与模型初始化阶段。
如果需要训练一个新的模型,首先用自己已有良性数据训练一个初始模型,如果良性数据过少,可以利用数据增强方法,扩大良性数据的数量,其中包括图像仿射变换、添加高斯噪声、放大缩小等方法;如果已有模型只是需要重训更新,则忽略此步骤。
参见图2,实施例中,如果需要训练新模型而可靠数据集dc规模较小,则可以使用数据增强技术对其进行初步扩充。具体来说,对于数据集dc的每一张图片image,可以采用仿射变换、添加高斯噪声和调整图片规格的方法生成增强图片。
在进行仿射变换的过程中,利用了公式
其中,(a,b)为原图像中各像素点的坐标,(u,v)为仿射变换后各像素点的坐标,改变相应的仿射变换w的值(其中w1·、w2、w3、w1’、w2’、w3’为变换矩阵的相关参数,可调整,以达到不同的仿射变换约束效果),可以实现训练图片的平移,旋转。在添加高斯噪声的过程中,噪声的分布符合概率密度函数
具体实施时,可以将上述数据增强方法组合到一个管道seq中,协同生成增强数据,并将生成的增强数据加入到训练数据即可。将干净数据集dc(如果数据经历了增强操作,则dc为增强后的数据集)送入模型(如resnet,densenet)进行预训练,使得深度神经网络内部各个层次具有相应的权值。
步骤2,基于初始深度神经网络模型,进行良性数据特征共性分析。
此过程包含特征选择和特征提取两个阶段;在特征选择阶段,将特征选择的过程融入到全连接层,选择出与标签关联性较强的特征;在特征提取阶段,将干净数据集dc送入深度神经网络进行正向传播,提取其倒数第二层输出作为特征向量,并根据标签整合成特征向量集fci;接下来,计算每个fci的特征空间质心μ并确定该类别特征向量可接受的半径r,使得以μ为中心,以r为半径的特征空间中至少包含70%(实验所得,λ=70%时效果最佳)的该类特征向量;该特征空间域即为对应类别可接受的特征范围。
为了进行良性数据特征共性分析,本发明需要执行两个操作:特征选择和特征提取。原始图像进入神经网络,通过多层卷积、池化和非线性变换的前向传播,图像信息也不断抽象,最终输出特征逐渐从局部细节抽象为高级语义信息。因此,神经网络越接近完全连接层,它包含的高级语义信息就越多;神经网络越接近输入卷积层,它包含的低级细节就越多。同时由于神经网络最后一个全连接层的输出维度受到数据集类别数目的影响,输出维度直接等于类别数目,因此无法良好地表示图像特征信息。所以本发明可以提取神经网络倒数第二层(对于不同的模型具有普适性)的输出信息作为图像的语义信息,用于特征分析。
在特征选择过程中,优选建议是找出与标签关联性较强的特征,并尽可能地增大它,而对于与标签关联性弱的特征则是尽可能地削弱它。如此,使得整个特征向量与标签的关联性大大增强,从而达到更好的聚类,分类效果,这为后面进行数据筛选做好铺垫。
在特征提取过程中,如图3,实施例的具体实现包括以下步骤:
1)将干净数据集dc送入神经网络进行前向传播,在前向传播阶段将神经网络倒数第二层输出out先进行以四维向量为输入的平均池化操作,然后将out向量平铺成一维向量作为特征向量。特征向量的意义在于,它是一组足以区分其类别的特征值集合。
2)将特征向量根据标签整合成特征向量集fci,对每一种类别计算该类别特征向量质心,即对于每一个特征向量集fci,计算该标签对应的特征向量在特征向量空间中的质心μi,计算过程用到以下公式:
其中m为fci中的特征向量个数,acj为fci中的第j个特征向量。将fci中的所有特征向量相加并且除以fci中的特征向量个数,得到的一维向量即为质心μi。
3)对于每一种类别,定义可接受半径ri使得至少包含70%该类特征向量:
实施例中,为了确定该类别特征向量可接受半径r,训练者定义字典di,将fci中的每一个特征向量xi作为di的key值,并且通过以下公式计算该特征向量距离质心的距离,赋给相应的value值,
其中,式中n为fci中的特征向量个数。
将di按value值进行非降序排列后,保留di前70%个键值对,取di最后一个键值对中的value值作为该类别特征向量可接受半径r,至此,提取出各类别可接受的特征范围。
步骤3,特征差异分析,基于质心防御策略初步筛选恶意数据。
将待查数据集du送入神经网络进行前向传播,在前向传播阶段将神经网络倒数第二层输出out’先进行以四维向量为输入的平均池化操作,然后将out’向量平铺成一维向量,作为特征向量。根据标签将out’整合成特征向量集fui,并通过公式
循环计算特征向量集fui中的特征向量与对应标签的质心μi的距离dui,判断dui与该类别特征向量可接受半径ri的大小关系:
如果dui>ri,说明该特征向量在可接受半径之外,将其定义为可疑特征向量x(i),并进行步骤4细筛相应可疑数据。
如果dui≤ri,说明该特征向量在可接受半径之内,可判定为干净数据,加入到对应标签的fci中,并将相应数据送入深度神经网络模型进行训练,之后更新对应类别的质心μi和特征向量可接受半径ri。
质心的更新如下式所示:
μ′i为更新之后的质心,μi为原来的质心,m为fci中特征向量的个数,此数据的特征向量为
为了更新特征向量可接受半径ri,首先定义一个空字典d′i,将特征向量集fci中的每一个特征向量xi作为字典d′i的key值,并且通过公式
计算特征向量距离更新后的质心μ′i的距离,赋给相应的value值。将字典d′i按value值进行非降序排列,保留d′i前70%个键值对,取d′i最后一个键值对中的value值更新该类别特征向量可接受半径r′i。
步骤4,基于深度knn防御策略二次筛查可疑数据。
由于步骤3的质心防御方法容易筛除边界附近上的干净数据,因此本发明引入深度knn防御策略进行可疑样本二次筛查。为执行深度knn防御策略,需要首先选定一个合适的k值。实施例优选根据上一步所选出的可疑数据中各类别数据的大小选定合适的k值,即根据每个类的样本数量对k进行规范化:
其中normalized-k为规范化k值,n是对应标签样本数量,k是深度knn算法中距离最近的邻居数目,初始化为n,即normalized-k初始化为1。为了最小化假阳性,本发明建议训练者使用1到2之间的normalized-k的值来确定k值。
接下来,定义集合sk(x(i)),计算特征向量间欧氏距离确定可疑特征向量x(i)的k个最邻近特征向量:
|x(l)-x(i)|2≥|x(j)-x(i)|2
上式中j∈[1,k],特征向量x(j)与x(i)的距离均小于等于特征空间中其余特征向量x(l)与x(i)的距离,x(j)即为k个最邻近特征向量。
最后依次遍历k个最邻近特征向量并采取多数投票制进行可疑样本的二次筛选,具体投票模式为,如果邻居与特征向量的标签相同,则投肯定票
如果tp≥tc,则说明可疑样本x(i)与k个临近样本关联大,特征相似度高,为干净样本,并进行后续操作;
如果tp<tc,则判定可疑样本x(i)与k个临近样本关联小,特征相似度低,为有毒样本,舍弃该数据并处理下一个特征向量。
重复进行上述操作,直到所有的可疑数据均操作完毕,有毒数据被过滤掉。
步骤3和步骤4的具体实现参见图4。
具体实施时,本发明技术方案提出的方法可由本领域技术人员采用计算机软件技术实现自动运行流程,实现方法的系统装置例如存储本发明技术方案相应计算机程序的计算机可读存储介质以及包括运行相应计算机程序的计算机设备,也应当在本发明的保护范围内。
在一些可能的实施例中,提供一种抵御神经网络后门攻击的图像特征分析系统,包括以下模块,
第一模块,用于数据处理与模型初始化,包括在需要训练新模型且良性数据过少时进行数据增强,得到干净数据集dc;
第二模块,用于基于初始深度神经网络模型,进行良性数据特征共性分析,包括特征选择和特征提取;
在特征选择阶段,将特征选择的过程融入到全连接层,选择出与标签关联性较强的特征;
在特征提取阶段,将干净数据集dc送入深度神经网络进行正向传播,提取倒数第二层输出作为特征向量,并根据标签整合成特征向量集fci;计算每个fci的特征空间质心μ并确定该类别特征向量能够接受的半径r,使得以μ为中心以r为半径的特征空间中至少包含λ的该类特征向量,所得特征空间域为对应类别可接受的特征范围;其中,λ为预设的百分比;
第三模块,用于特征差异分析,基于质心防御策略初步筛选恶意数据,实现方式如下,
将待查数据集du输入深度神经网络进行正向传播,并根据标签将深度神经网络倒数第二层的输出整合成特征向量集fui;计算fui中的每一个特征向量与对应标签的质心μi的距离dui,判断dui与该类别特征向量能够接受的半径ri的大小关系,
如果dui>ri,说明该特征向量在可接受半径之外,将其定义为可疑特征向量x(i),并命令第四模块工作细筛相应可疑数据;
如果dui≤ri,说明该特征向量在可接受半径之内,判定为干净数据,加入到对应标签的fci中,并将相应数据送入深度神经网络模型进行训练,之后更新对应类别的质心μi和特征向量可接受半径ri;
第四模块,用于基于深度knn防御策略二次筛查可疑数据。
在一些可能的实施例中,提供一种抵御神经网络后门攻击的图像特征分析系统,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种抵御神经网络后门攻击的图像特征分析方法。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
1.一种抵御神经网络后门攻击的图像特征分析方法,其特征在于,包括以下步骤:
步骤1,数据处理与模型初始化,包括在需要训练新模型且良性数据过少时进行数据增强,得到干净数据集dc;
步骤2,基于初始深度神经网络模型,进行良性数据特征共性分析,包括特征选择和特征提取;
在特征选择阶段,将特征选择的过程融入到全连接层,选择出与标签关联性较强的特征;
在特征提取阶段,将干净数据集dc送入深度神经网络进行正向传播,提取倒数第二层输出作为特征向量,并根据标签整合成特征向量集fci;计算每个fci的特征空间质心μ并确定该类别特征向量能够接受的半径r,使得以μ为中心以r为半径的特征空间中至少包含λ的该类特征向量,所得特征空间域为对应类别可接受的特征范围;其中,λ为预设的百分比;
步骤3,特征差异分析,基于质心防御策略初步筛选恶意数据,实现方式如下,
将待查数据集du输入深度神经网络进行正向传播,并根据标签将深度神经网络倒数第二层的输出整合成特征向量集fui;计算fui中的每一个特征向量与对应标签的质心μi的距离dui,判断dui与该类别特征向量能够接受的半径ri的大小关系,
如果dui>ri,说明该特征向量在可接受半径之外,将其定义为可疑特征向量x(i),并进行步骤4细筛相应可疑数据;
如果dui≤ri,说明该特征向量在可接受半径之内,判定为干净数据,加入到对应标签的fci中,并将相应数据送入深度神经网络模型进行训练,之后更新对应类别的质心μi和特征向量可接受半径ri;
步骤4,基于深度knn防御策略二次筛查可疑数据。
2.根据权利要求1所述抵御神经网络后门攻击的图像特征分析方法,其特征在于:步骤4的实现方式如下,
根据步骤3所选出的可疑数据中各类别数据的大小选定k值,并计算出该可疑数据对应特征向量的k个最邻近特征向量,如果该邻近特征向量与可疑数据的标签相同,则投肯定票
如果tp>tc,则该可疑样本x(i)为干净样本,并进行后续操作;
如果tp<tc,则该可疑样本x(i)为有毒样本,则彻底舍弃该数据;
重复进行上述操作,直到所有的可疑数据均操作完毕,有毒数据被过滤掉。
3.根据权利要求1或2所述抵御神经网络后门攻击的图像特征分析方法,其特征在于:λ=70%。
4.一种抵御神经网络后门攻击的图像特征分析系统,其特征在于:用于实现如权利要求1-3任一项所述的一种抵御神经网络后门攻击的图像特征分析方法。
5.根据权利要求4所述抵御神经网络后门攻击的图像特征分析系统,其特征在于:包括以下模块,
第一模块,用于数据处理与模型初始化,包括在需要训练新模型且良性数据过少时进行数据增强,得到干净数据集dc;
第二模块,用于基于初始深度神经网络模型,进行良性数据特征共性分析,包括特征选择和特征提取;
在特征选择阶段,将特征选择的过程融入到全连接层,选择出与标签关联性较强的特征;
在特征提取阶段,将干净数据集dc送入深度神经网络进行正向传播,提取倒数第二层输出作为特征向量,并根据标签整合成特征向量集fci;计算每个fci的特征空间质心μ并确定该类别特征向量能够接受的半径r,使得以μ为中心以r为半径的特征空间中至少包含λ的该类特征向量,所得特征空间域为对应类别可接受的特征范围;其中,λ为预设的百分比;
第三模块,用于特征差异分析,基于质心防御策略初步筛选恶意数据,实现方式如下,
将待查数据集du输入深度神经网络进行正向传播,并根据标签将深度神经网络倒数第二层的输出整合成特征向量集fui;计算fui中的每一个特征向量与对应标签的质心μi的距离dui,判断dui与该类别特征向量能够接受的半径ri的大小关系,
如果dui>ri,说明该特征向量在可接受半径之外,将其定义为可疑特征向量x(i),并命令第四模块工作细筛相应可疑数据;
如果dui≤ri,说明该特征向量在可接受半径之内,判定为干净数据,加入到对应标签的fci中,并将相应数据送入深度神经网络模型进行训练,之后更新对应类别的质心μi和特征向量可接受半径ri;
第四模块,用于基于深度knn防御策略二次筛查可疑数据。
6.根据权利要求4所述抵御神经网络后门攻击的图像特征分析系统,其特征在于:包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如权利要求1-3任一项所述的一种抵御神经网络后门攻击的图像特征分析方法。
7.根据权利要求4所述抵御神经网络后门攻击的图像特征分析系统,其特征在于:包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如权利要求1-3任一项所述的一种抵御神经网络后门攻击的图像特征分析方法。
技术总结