图像识别模型的训练方法、识别方法、电子设备及介质
未命名
08-02
阅读:157
评论:0
1.本公开涉及人工智能领域,尤其涉及一种图像识别模型的训练方法、识别方法、电子设备及介质。
背景技术:
2.目前,深度学习模型与图像识别领域结合紧密,在细分的图像分类、目标检测、人脸识别和自动驾驶等领域应用广泛。深度学习模型在安全性方面的问题也日益受到关注,例如,深度学习模型的对抗性攻击问题。
3.在对抗性攻击问题中,攻击者通过在深度学习模型输入的原始图像上添加微小的特殊扰动得到攻击图像,可以实现基于攻击图像欺骗深度学习模型,使深度学习模型的分类错误。
4.人眼可能无法快速识别攻击图像的微小的特殊扰动,甚至可能无法察觉原始图像与攻击图像之间的区别。对抗性攻击问题在特殊情形下可能产生负面影响,例如,对道路指示牌做特殊处理可能误导自动驾驶做出错误决策。因此,为了解决深度学习模型面临的对抗性攻击问题,需要一种防御方法来提高深度学习模型对对抗性攻击问题的防御性能,从而提高深度学习模型的安全性。
技术实现要素:
5.有鉴于此,本公开提供了一种图像识别模型的训练方法、识别方法、电子设备及介质,以期部分地解决上述提及的技术问题中的至少之一。
6.本公开的一个方面,提供了一种图像识别模型的训练方法,包括:
7.根据与第一样本图像中的至少一个像素各自对应的重要度,对上述至少一个像素的梯度值进行调整,得到第二样本图像;
8.将上述第二样本图像输入深度学习模型,得到样本识别类;以及
9.根据上述样本识别类,调整上述深度学习模型的模型参数,得到经训练的图像识别模型。
10.根据本公开实施例,上述根据上述样本识别类调整上述深度学习模型的模型参数,得到上述图像识别模型,包括:
11.根据预设质心和上述样本识别类,确定样本识别类向量,其中,上述样本识别类向量表征预设质心和与上述样本识别类之间的有向关系;以及
12.根据上述样本识别类向量调整上述深度学习模型的模型参数,得到上述图像识别模型。
13.根据本公开实施例,上述根据与第一样本图像中的至少一个像素各自对应的重要度,对上述至少一个像素的梯度值进行调整,得到第二样本图像,包括:
14.根据与上述第一样本图像中的至少一个像素各自对应的重要度,确定第一像素集合和第二像素集合,其中,上述第一像素集合包括至少一个第一像素,上述第二像素集合包
分别为所述损失函数中各项的占比系数。
37.本公开的另一个方面,提供了一种图像识别方法,包括:
38.获取目标图像;以及
39.将上述目标图像输入图像识别模型,得到目标识别类;
40.其中,上述图像识别模型是利用上述任一项的方法训练得到的。
41.本公开的另一个方面,提供了一种电子设备,包括:
42.一个或多个处理器;
43.存储器,用于存储一个或多个指令,
44.其中,当上述一个或多个指令被上述一个或多个处理器执行时,使得上述一个或多个处理器实现上述任一项的方法。
45.本公开的另一个方面,提供了一种计算机可读存储介质,其特征在于,其上存储有可执行指令,上述可执行指令被处理器执行时使处理器实现上述任一项的方法。
46.基于上述技术方案可以看出,本公开的实施例相对于现有技术具有如下有益效果:
47.通过在训练过程中,基于像素各自对应的重要度,对第一样本图像进行重要性采样,并根据重要度,对至少一个像素的梯度值进行调整,得到第二样本图像。第二样本图像由于像素的梯度值的调整,对应影响了深度学习模型的特征提取过程,即像素梯度值调整的第二样本图像的特征向量在进行深度学习模型的分类的情况下可以产生错误分类。通过利用深度学习模型对第二样本图像进行处理,得到样本识别类,根据样本识别类,调整深度学习模型的模型参数,得到经训练的图像识别模型。经训练的图像识别模型可以针对对图像像素梯度值进行调整的图像进行识别分类,可以实现在存在像素梯度值调整的情况下仍可以得到正确的识别类。
附图说明
48.图1示意性示出了本公开实施例所要解决的深度学习模型应对对抗性攻击问题的流程示意图。
49.图2示意性示出了根据本公开实施例的图像识别模型的训练方法的流程示意图。
50.图3示意性示出了根据本公开实施例的根据样本识别类调整深度学习模型的模型参数,得到图像识别模型的流程示意图。
51.图4示意性示出了根据本公开实施例的根据与第一样本图像中的至少一个像素各自对应的重要度,对至少一个像素的梯度值进行调整,得到第二样本图像的流程示意图。
52.图5示意性示出了根据本公开实施例的判定图像像素的重要性的示意图。
53.图6示意性示出了根据本公开实施例的训练损失函数示意图。
54.图7示意性示出了根据本公开另一实施例的图像识别模型的训练方法的流程示意图。
55.图8示出了根据本公开实施例的示意性示出了根据本公开实施例的应用于对抗性干扰图像的识别方法的流程示意图。
56.图9示出了根据本公开实施例的应用于对抗性干扰图像的识别方法和图像识别模型的训练方法的电子设备的框图。
具体实施方式
57.以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
58.在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
59.在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
60.在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。
61.在实现本公开构思的过程中,发现至少存在如下问题:
62.在对抗性攻击问题中,攻击者通过在深度学习模型输入的原始图像上添加微小的特殊扰动得到攻击图像,就可以实现基于攻击图像欺骗深度学习模型,使深度学习模型的分类错误。
63.图1示意性示出了本公开实施例所要解决的深度学习模型应对对抗性攻击问题的流程示意图。
64.如图1所示,以手写体识别数据集中一手写体识别图像“7”(原始图像)为例,攻击者在原始图像上添加小的扰动后,生成的攻击图像以人眼观测仍能识别出数字“7”,并不影响人类的识别行为。在将原始图像分别输入有防御深度学习模型和无防御深度学习模型的情况下,两者都可以准确识别原始图像上的信息(数字“7”),而在将攻击图像分别输入有防御深度学习模型和无防御深度学习模型络的情况下,有防御深度学习模型可以得到正确的分类结果,而无防御深度学习模型会产生分类错误,因此,在实际应用中,需要对深度学习模型进行对抗性防御训练,以便保障和提升深度学习模型的安全性。
65.相关技术中,对抗性攻击方法可以包括白盒攻击和黑盒攻击。
66.白盒攻击可以是攻击者完全了解被攻击的深度学习模型的所有信息的攻击方法,例如,可以包括神经网络结构、权值信息等。
67.黑盒攻击可以是攻击者不了解被攻击的目标深度学习模型的攻击方法。
68.为了至少部分地解决存在的技术问题,本公开提供了一种图像识别模型的训练方法、识别方法、电子设备及介质,可以应用于人工智能领域。
69.如图2所示,图像识别模型的训练方法可以包括操作s210~操作s230。
70.在操作s210,根据与第一样本图像中的至少一个像素各自对应的重要度,对至少一个像素的梯度值进行调整,得到第二样本图像。
71.在操作s220,将第二样本图像输入深度学习模型,得到样本识别类。
72.在操作s230,根据样本识别类,调整深度学习模型的模型参数,得到经训练的图像识别模型。
73.根据本公开实施例,像素各自对应的重要度可以对应表征第一样本图像中的至少一个像素对应在第一样本图像中与像素梯度的平均值的差异程度,通过像素各自对应的重要度可以获得至少一个像素对应在第一样本图像中影响第一样本图像识别分类的程度,根据重要度,对至少一个像素的梯度值进行调整,可以得到第二样本图像。根据本公开实施例,深度学习模型可以通过使用的第二样本图像(即攻击图片)得到训练集的特征,得到样本训练集中图像的某部分像素组成的像素块对不同预测结果的贡献程度,从而依据贡献程度,学习到像素的梯度对图像识别分类的影响,,通过这样的攻击图像对基于同样的样本训练集训练得到的深度学习模型,利用样本训练集的共通性来完成迁移攻击,例如,攻击者可以使用一个另外替代深度学习模型来生成攻击图像,然后使用攻击图像去攻击深度学习模型。由此,可以通过训练深度学习模型学习黑盒攻击对应的攻击图像的特征,在存在黑盒攻击的情况下,仍可以完成识别分类。
74.根据本公开实施例,第一样本图像可以为现有的图像识别数据集,本领域技术人员可以根据实际需求选择图像识别数据集,在此不再赘述。
75.根据本公开实施例,可以根据第一样本图像进行处理,得到第二样本图像,将其作为设置的样本攻击图片。在实际应用中,攻击者可以使用与得到图像识别模型相同的样本训练集,通过其他的深度学习模型来生成样本攻击图片,在此不再赘述。
76.根据本公开实施例,由于像素块对应的梯度可以影响预测结果,由此可以通过重要度判断,筛选出第一样本图像中对预测结果较为重要的点和较为不重要的点,再根据重要度,对至少一个像素的梯度值进行调整,得到第二样本图像。第二样本图像由于像素的梯度值的调整,对应影响了深度学习模型的特征提取过程,即可以使深度学习模型的分类产生错误。
77.根据本公开实施例,利用第二样本图像训练深度学习模型,训练可以包括前向传播、计算损失函数值、基于反向传播计算权重梯度、根据损失函数值更新神经网络权重等,可以得到经训练的图像识别模型,该经训练的图像识别模型可以针对对图像像素梯度值进行调整的图像进行识别分类,具有识别黑盒攻击样本的能力。
78.根据本公开实施例,将第二样本图像作为样本攻击图像输入深度学习模型,使深度学习模型学习到样本攻击图像的攻击性的特征,从而使经训练的图像识别模型学习和识别到基于样本训练集的共通性得到的实际的攻击图像的特征,从而实现完成正确的分类操作。
79.根据本公开实施例,通过在训练过程中,基于像素各自对应的重要度,对第一样本图像进行重要性采样,并根据重要度,对至少一个像素的梯度值进行调整,得到第二样本图像。第二样本图像由于像素的梯度值的调整,对应影响了深度学习模型的特征提取过程,即像素梯度值调整的第二样本图像的特征向量在进行深度学习模型的分类的情况下可以产生错误分类。通过利用深度学习模型对第二样本图像进行处理,得到样本识别类,根据样本识别类,调整深度学习模型的模型参数,得到经训练的图像识别模型。经训练的图像识别模型可以针对对图像像素梯度值进行调整的图像进行识别分类,可以实现在存在像素梯度值调整的情况下仍可以得到正确的识别类。
80.下面参考图3~图7,结合具体实施例对图2所示的根据本公开实施例的图像识别模型的训练方法做进一步说明。
81.图3示意性示出了根据本公开实施例的根据样本识别类调整深度学习模型的模型参数,得到图像识别模型的流程示意图。
82.如图3所示,在操作s230中,可以可以包括操作s331~操作s332。
83.在操作s331,根据预设质心和样本识别类,确定样本识别类向量,其中,样本识别类向量表征预设质心和与样本识别类之间的有向关系。
84.在操作s332,根据样本识别类向量调整深度学习模型的模型参数,得到图像识别模型。
85.根据本公开实施例,在进行图像识别模型的训练方法过程中,希望使得样本识别类向量的范围控制在一个预设区域内,以便在损失函数计算过程中,针对样本识别类进行损失函数计算时,由于攻击图像导致的特征函数的改变会影响样本识别类,导致识别类错误。由此,可以针对样本识别类所在位置,预先确定一预设质心,以便经训练的图像识别模型得到的样本识别类尽可能在预设质心对应的正确的样本识别类范围附近。
86.根据本公开实施例,根据预设质心和样本识别类之间的有向关系,可以确定样本识别类向量,基于样本识别类向量的范围构建改进的损失函数,使得样本识别类向量的范围控制在一个预设区域内,基于改进的损失函数训练得到的图像识别模型可以保持一定的训练精度,进而在对攻击图像进行图像识别的情况下,对应得到的识别类仍可以落在较为准确的分类范围内。在调整深度学习模型的模型参数过程中对损失函数进行改进,以便实现在被攻击的深度学习模型在得到样本识别类之后,对应得到的损失函数的改变较小,尽可能消除攻击图像对深度学习模型的判断的影响实现提高经训练的图像识别模型的安全性和可靠性。
87.图4示意性示出了根据本公开实施例的根据与第一样本图像中的至少一个像素各自对应的重要度,对至少一个像素的梯度值进行调整,得到第二样本图像的流程示意图。
88.如图4所示,在操作s210中,根据与第一样本图像中的至少一个像素各自对应的重要度,对至少一个像素的梯度值进行调整,得到第二样本图像的方法,可以包括操作s411~操作s414。
89.在操作s411,根据与第一样本图像中的至少一个像素各自对应的重要度,确定第一像素集合和第二像素集合,其中,第一像素集合包括至少一个第一像素,第二像素集合包括至少一个第二像素,与至少一个第一像素各自对应第一梯度值,与至少一个第二像素各自对应第二梯度值。
90.在操作s412,从第一像素集合中确定至少一个目标像素。
91.在操作s413,对至少一个目标像素各自对应的第一梯度值进行调整,得到与至少一个目标像素各自对应的第三梯度值。
92.在操作s414,根据与至少一个第二像素各自对应的第二梯度值、与至少一个目标像素各自对应的第三梯度值和与至少一个其他像素各自对应的第一梯度值,得到第二样本图像,其中,其他像素是第一像素集合中除至少一个目标像素以外的任意一个像素。
93.根据本公开实施例,在进行操作s411之前还可以包括:根据与第一样本图像中的至少一个像素各自对应的梯度值,确定与第一样本图像对应的平均值和标准差;根据预设
超参数和标准差,确定重要度阈值;针对至少一个样本图像中的至少一个像素中的每个像素,确定平均值和与像素的梯度值之间的差值的绝对值,得到与像素对应的参考值;可以设置,在确定像素对应的参考值小于或等于重要度阈值的情况下,确定与像素对应的重要度满足预设重要度条件;在确定与像素对应的参考值大于重要度阈值的情况下,确定与像素对应的重要度不满足预设重要度条件。
94.根据本公开实施例,通过深度学习模型计算,可以得到与第一样本图像中的至少一个像素各自对应的具体梯度值。根据与第一样本图像中的至少一个像素各自对应的梯度值,可以根据对应得到与第一样本图像中的至少一个像素各自对应的重要度,进而对第一样本图像中的像素进行分类,可以得到第一像素集合和第二像素集合。
95.根据本公开实施例,在操作s411还可以包括:针对第一样本图像中的至少一个像素中的每个像素,在确定与像素对应的重要度满足预设重要度条件的情况下,将像素确定为第一像素;在确定与像素对应的重要度不满足预设重要度条件的情况下,将像素确定为第二像素。
96.图5示意性示出了根据本公开实施例的判定图像像素的重要性的示意图。
97.如图5所示,图中的r、g、b可以分别表示,在第一样本图像为彩色图像的情况下,第一样本图像的三个颜色通道。可以根据第一样本图像的像素对应的的梯度值计算第一样本图像像素的梯度的均值μg,以及第一样本图像像素的梯度的标准差σg。可以根据梯度值数值离梯度均值的远近来作为判定像素重要性的依据,即可以将梯度值标准差σg的σs倍作为重要度阈值。在梯度值g
x
满足|g
x-μg|》σs·
σg的情况下,确定与像素对应的重要度不满足预设重要度条件,即可以认为像素作为“重要点”,将对应的像素确定为第二像素。在梯度值g
x
满足|g
x-μg|≤σs·
σg的情况下,确定与像素对应的重要度满足预设重要度条件,的像素作为“不重要点”,将对应的像素确定为第一像素。其中,σs为预设的训练参数,可以基于实际训练过程进行调节,在此不做限定。
98.根据本公开实施例,在根据第一样本图像像素的梯度得到第一像素和第二像素后,分别对第一像素和第二像素的像素值第一像素和第二像素的像素值对应的像素梯度,再对进行像素梯度处理,得到像素梯度转换,以得到像素对应的梯度方向。
99.根据本公开实施例,利用预先设置的深度学习模型产生的图像像素的梯度来决定图像像素的重要性,得到重要点的位置和不重要点的位置,基于重要点的位置、不重要点的位置以及第一样本图像得到重要点矩阵m1和不重要点矩阵m2。可以设置m1中重要点的位置对应的值为1、其余位置对应的值为0;可以设置m2中不重要点的的位置对应的值为1、其余位置对应的值为0。并将图像像素的梯度值输入符号函数sign(),得到第一样本图像像素对应的梯度方向g
t
,g
t
的值包括1和-1。还可以设置一个随机的由1和-1组成的随机矩阵ms,ms与m2的大小相同,ms中每个元素位置位1和-1的概率都为0.5。根据第一样本图像x0、重要点矩阵m1、不重要点矩阵m2和随机矩阵ms,按公式x
′0=x0+(m1⊙gt
+m2⊙ms
)
·
ε0,得到第二样本图像x
′0,其中,ε0为预设的攻击边界。将第一样本图像x0和第二样本图像x
′0输入深度学习模型进行后续的训练,训练可以包括前向传播、计算损失函数值、反向传播计算权重梯度、更新神经网络权重。
100.根据本公开实施例,在操作s320中,可以设置将第一像素集合中与随机矩阵ms中与值
“‑
1”位置对应像素确定为目标像素,通过与随机矩阵ms中的值
“‑
1”的叠加操作,该目
标像素对应的梯度方向实现了增加反向扰动,即实现增加了对深度学习模型的分类产生干扰的干扰项。
101.根据本公开实施例,利用深度学习模型对增加干扰项的第二样本图像进行处理,以及利用根据第二样本图像得到的样本识别类调整深度学习模型的模型参数,可以使深度学习模型学习到黑盒攻击的特征,从而提升深度学习模型对黑盒攻击的防御性能。
102.根据本公开实施例,交叉熵损失函数经常用于分类问题中,可以表现出较好的精度效果,但交叉熵损失函数并不能较明显的增大不同类在分类空间中的距离,这可能导致使用交叉熵作为损失函数的深度学习模型容易受到攻击者的攻击,并且攻击成功率比较高。此外,基于梯度的白盒攻击方式的核心在于,沿梯度的方向在图像上添加扰动,使深度学习模型的损失函数值增大,最终使攻击图像越过深度学习模型的决策边界,导致深度学习模型分类错误,从而达到攻击的效果。因此,可以在利用交叉熵损失函数的同时,基于样本识别类向量的范围构建改进的损失函数,来实现训练深度学习模型。
103.根据本公开实施例,在根据样本识别类向量调整深度学习模型的模型参数,得到图像识别模型的过程中,可以包括:确定样本识别类向量的模长值;确定样本识别类向量与预设决策边界的法向量之间的角度值;基于损失函数,根据模长值、角度值和样本识别类向量,得到损失函数值;根据损失函数值调整深度学习模型的模型参数,得到图像识别模型。
104.根据本公开实施例,在深度学习模型的推理行为中,深度学习模型的预测输出是经过softmax层计算置信度之后,得到的置信度最高的神经元对应的类作为深度学习模型的预测结果。softmax函数是一个单调递增的函数,即输入softmax层时最大的值对应的输出结果一定是最大的,即只需要根据softmax层的上一层,即logits层的输出神经元的数值就可以判断神经网络最终的预测结果,即logits层中最大值所在的那个神经元对应的类就是神经网络的预测结果,也是使用“独热码”输出的深度学习模型的共通性。由此,基于样本识别类向量的范围构建改进的损失函数,使得样本识别类向量的范围控制在一个预设区域内,可以通过构建“扇区聚类”方法,来实现保证输入深度学习模型的第二样本图像对应的类在logits层的神经元的输出值是最大的。
105.图6示意性示出了根据本公开实施例的训练损失函数示意图。
106.如图6所示,示意性展示了深度学习模型进行二分类时的决策条件。由于深度学习模型的最终决策方式为,输出层的神经元中值最大的那个神经元对应的类即为样本识别类,因此,深度学习模型只需保证聚类后的数样本识别类是在决策边界x
1-x2=0的一侧即可。则新的损失函数的目的是将图像聚类到一个扇形区域中。
107.根据本公开实施例,可以通过使用了余弦项与模长项来限制分类空间中不同类的聚类范围,从而增大聚类空间与决策边界之间的距离,最终增大攻击者的攻击难度,可以较好的增强神经网络的白盒防御性能。
108.根据本公开实施例,构建的损失函数可以通过如下公式(1)表示。
[0109][0110]
其中,lc为在深度学习模型进行二分类时的损失函数,即一具体条件下的l
cl
;为角度值;为样本识别类向量;为模长值;为预设决策边
界的法向量;crossentropy为标签与样本识别类的交叉熵损失函数;c1,c2,c3分别表示损失函数中各项的占比系数。
[0111]
根据本公开实施例,还可以将在二维空间中的“扇区聚类”方法推广到m维空间中,即在分类任务中种类的的数量为m时,对于m个识别类的图像识别模型,其中的softmax层的上一层,即logits层可以输出一个m维向量设置基于m维向量可以确定对应被分类结果为xi,对应的基于决策边界的分类可以通过如下公式(2)表示。
[0112][0113]
其中,x
i-xj=0为不同m维向量元素xj对应的预设m维决策边界,在x
i-xj>0情况下的xj可以对应得到目标识别类。
[0114]
根据本公开实施例,基于m维向量以及公式(2),可以得到m-1个决策边界,对应可以得到m-1个单位法向量,单位法向量可以表示为其中,单位法向量对应的值可以通过如下公式(3)表示。
[0115][0116]
其中,k≤m。
[0117]
根据本公开实施例,对于xi对应的扇形区域(二维空间中的定义的扇形区域对应的在m维空间中的区域不再是扇形,但为了理解上的便捷,延续使用二维空间中的“扇形区域”定义,即仍称指定的聚类空间称为扇形区域),m维预设质心可以表示为其中,m维预设质心对应的值可以通过如下公式(4)表示。
[0118][0119]
其中,hi为预设质心参数;q≤n;n为正整数。
[0120]
根据本公开实施例,基于上述公式(2)到公式(4),可以得到m维空间对应的样本识别类向量为别类向量为
[0121]
则m维空间相关的角度值,即对应的余弦正则化项通过如下公式(5)表示。
[0122]
[0123][0124]
其中,l
cos
为余弦正则化项,即与所述角度值相关的损失函数项。
[0125]
则m维空间相关的模长值,即对应的二阶范数正则化项通过如下公式(6)表示。
[0126][0127]
其中,ld为二阶范数正则化项,即与所述样本识别类向量相关的损失函数项。
[0128]
因此,构建的损失函数还可以通过如下公式(7)表示。
[0129]
l
cl
=c1·
l
cos
+c2ld+c3·
l
ce
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0130]
其中,c1,c2,c3分别表示损失函数中各项的占比系数,通常可以c1,c2,c3设置为正数。
[0131]
图7示意性示出了根据本公开另一实施例的图像识别模型的训练方法的流程示意图。
[0132]
如图7所示,图像识别模型的训练方法还可以包括操作s710~操作s780。
[0133]
在操作s710,获取深度学习模型、第一样本样本图像和攻击边界。
[0134]
在操作s720,计算第一样本图像的像素的梯度值。
[0135]
在操作s730,根据第一样本图像的像素的梯度值得到第二样本图像。
[0136]
在操作s740,判断是否完成训练,在完成训练的情况下,执行操作s780;在没有完成训练的情况下,执行操作s750。
[0137]
在操作s750,将第二样本图像输入深度学习模型,得到样本识别类。
[0138]
在操作s760,根据样本识别类,利用构建的损失函数得到损失函数值。
[0139]
在操作s770,根据损失函数值,调整深度学习模型的模型参数。
[0140]
在操作s780,得到经训练的图像识别模型。
[0141]
根据本公开实施例,攻击边界可以表征图像识别模型对应可以接受的第一样本样本图像的被改变程度,即可以表征攻击的程度。可以根据实际需要解决的问题,对应改变攻击边界,以得到适用于不同攻击问题的经训练的图像识别模型。
[0142]
根据本公开实施例,基于样本识别类向量的范围以及使用交叉熵损失函数构建改进的损失函数训练深度学习模型。以及,用深度学习模型计算第一样本图像对应像素的梯度,根据第一样本图像对应像素的梯度进行重要性采样,固定第一样本图像的重要点的像素对应的梯度值,对第一样本图像的不重要点的像素增加干扰项,得到可用于训练的第二样本图像且该得到第二样本图像的过程在每一次训练迭代中都会进行;利用得到的第二样本图像对深度学习模型进行后续的训练,得到图像识别模型。图像识别模型可以同时应对解决对抗性攻击问题。且该图像识别模型的训练方法是一种通用的训练方法,可以适用不同结构的深度学习模型模型,实现提高不同结构的深度学习模型模型的可靠性。
[0143]
根据本公开实施例,操作s710~操作s780的具体内容可以参照操作s210~操作s230的具体内容,在此不再赘述。
[0144]
图8示出了根据本公开实施例的示意性示出了根据本公开实施例的应用于对抗性干扰图像的识别方法的流程示意图。
[0145]
如图8所示,应用于对抗性干扰图像的识别方法可以包括操作s810~操作s820。
[0146]
在操作s810,获取目标图像。
[0147]
在操作s810,将目标图像输入图像识别模型,得到目标识别类;其中,图像识别模型是利用上述的图像识别模型的训练方法训练得到的。
[0148]
根据本公开实施例,通过图像识别模型的对输入的目标图像进行分析并提取图像的特征,得到与目标图像对应的特征向量,根据特征向量进行分类识别,得到识别结果,可以实现对目标图像的分类或目标图像包括的目标的检测。
[0149]
根据本公开实施例,目标图像可以是获取得到的待识别分类的图像。可以是对图像包括的物体进行以下至少一种识别分类:二分类、多分类、多标签分类和细粒度分类。
[0150]
根据本公开实施例,通过对目标图像进行特征提取,可以得到对应的目标识别类。将目标图像从图像识别模型的输入层输入后,可以通过图像识别模型的隐藏层实现对目标图像进行特征提取,还可以基于实际需求,在输出层设置一个或多个神经元,以便得到一个或多个目标识别类。
[0151]
根据本公开实施例,通过上述的图像识别模型的训练方法训练得到的图像识别模型,其中的网络参数经过调整,可以实现针对基于白盒攻击和黑盒攻击的至少一种攻击方法得到的攻击图像的图像识别。
[0152]
图9示意性示出了根据本公开实施例的应用于对抗性干扰图像的识别方法和图像识别模型的训练方法的电子设备的框图。图9示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0153]
如图9所示,根据本技术实施例的电子设备900包括处理器901,其可以根据存储在只读存储器(rom)902中的程序或者从存储部分908加载到随机访问存储器(ram)903中的程序而执行各种适当的动作和处理。处理器901例如可以包括通用微处理器(例如cpu)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic))等等。处理器901还可以包括用于缓存用途的板载存储器。处理器901可以包括用于执行根据本技术实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
[0154]
在ram903中,存储有电子设备900操作所需的各种程序和数据。处理器901、rom902以及ram903通过总线904彼此相连。处理器901通过执行rom902和/或ram903中的程序来执行根据本技术实施例的方法流程的各种操作。需要注意,程序也可以存储在除rom902和ram903以外的一个或多个存储器中。处理器901也可以通过执行存储在一个或多个存储器中的程序来执行根据本技术实施例的方法流程的各种操作。
[0155]
根据本技术的实施例,电子设备900还可以包括输入/输出(i/o)接口905,输入/输出(i/o)接口905也连接至总线904。电子设备900还可以包括连接至i/o接口905的以下部件中的一项或多项:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至i/o接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
[0156]
本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实
施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本技术实施例的方法。
[0157]
根据本技术的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本技术的实施例,计算机可读存储介质可以包括上文描述的rom902和/或ram903和/或rom902和ram903以外的一个或多个存储器。
[0158]
本技术的实施例中还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本技术实施例中所提供的方法。
[0159]
在该计算机程序被处理器901执行时执行本技术实施例的系统/装置中限定的上述功能。根据本技术的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
[0160]
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分909被下载和安装,和/或从可拆卸介质911被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0161]
在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被处理器901执行时,执行本技术实施例的系统中限定的上述功能。根据本技术的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
[0162]
根据本技术的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本技术实施例中提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如java,c++,python,“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0163]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要
注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0164]
可以理解,本技术的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本技术中。特别地,在不脱离本技术精神和教导的情况下,本技术的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本技术的范围。
[0165]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“实例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0166]
以上对本技术的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本技术的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本技术的范围由所附权利要求及其等同物限定。不脱离本技术的范围,可以做出多种替代和修改,这些替代和修改都应落在本技术的范围之内。
技术特征:
1.一种图像识别模型的训练方法,包括:根据与第一样本图像中的至少一个像素各自对应的重要度,对所述至少一个像素的梯度值进行调整,得到第二样本图像;将所述第二样本图像输入深度学习模型,得到样本识别类;以及根据所述样本识别类,调整所述深度学习模型的模型参数,得到经训练的图像识别模型。2.根据权利要求1所述的方法,其中,所述根据所述样本识别类调整所述深度学习模型的模型参数,得到所述图像识别模型,包括:根据预设质心和所述样本识别类,确定样本识别类向量,其中,所述样本识别类向量表征预设质心和与所述样本识别类之间的有向关系;以及根据所述样本识别类向量调整所述深度学习模型的模型参数,得到所述图像识别模型。3.根据权利要求1~2中任一项所述的方法,其中,所述根据与第一样本图像中的至少一个像素各自对应的重要度,对所述至少一个像素的梯度值进行调整,得到第二样本图像,包括:根据与所述第一样本图像中的至少一个像素各自对应的重要度,确定第一像素集合和第二像素集合,其中,所述第一像素集合包括至少一个第一像素,所述第二像素集合包括至少一个第二像素,与所述至少一个第一像素各自对应第一梯度值,与所述至少一个第二像素各自对应第二梯度值;从所述第一像素集合中确定至少一个目标像素;对所述至少一个目标像素各自对应的第一梯度值进行调整,得到与所述至少一个目标像素各自对应的第三梯度值;以及根据与所述至少一个第二像素各自对应的第二梯度值、与所述至少一个目标像素各自对应的第三梯度值和与至少一个其他像素各自对应的第一梯度值,得到所述第二样本图像,其中,所述其他像素是所述第一像素集合中除所述至少一个目标像素以外的任意一个像素。4.根据权利要求3所述的方法,其中,所述根据与所述第一样本图像中的至少一个像素各自对应的重要度,确定第一像素集合和第二像素集合,包括:针对所述第一样本图像中的至少一个像素中的每个像素,在确定与所述像素对应的重要度满足预设重要度条件的情况下,将所述像素确定为所述第一像素;以及在确定与所述像素对应的重要度不满足所述预设重要度条件的情况下,将所述像素确定为所述第二像素。5.根据权利要求4所述的方法,还包括:根据与所述第一样本图像中的至少一个像素各自对应的梯度值,确定与所述第一样本图像对应的平均值和标准差;根据预设超参数和所述标准差,确定重要度阈值;针对所述至少一个样本图像中的至少一个像素中的每个像素,确定所述平均值和与所述像素的梯度值之间的差值的绝对值,得到与所述像素对应的
参考值;在确定所述像素对应的参考值小于或等于所述重要度阈值的情况下,确定与所述像素对应的重要度满足所述预设重要度条件;以及在确定与所述像素对应的参考值大于所述重要度阈值的情况下,确定与所述像素对应的重要度不满足所述预设重要度条件。6.根据权利要求2所述的方法,其中,所述根据所述样本识别类向量调整所述深度学习模型的模型参数,得到所述图像识别模型,包括:确定所述样本识别类向量的模长值;确定所述样本识别类向量与预设决策边界的法向量之间的角度值;基于损失函数,根据所述模长值、所述角度值和所述样本识别类向量,得到损失函数值;以及根据所述损失函数值调整所述深度学习模型的模型参数,得到所述图像识别模型。7.根据权利要求6所述的方法,其中,所述损失函数为:l
cl
=c1·
l
cos
+c2l
d
+c3·
l
ce
其中,l
cl
为所述损失函数;l
cos
为与所述角度值相关的损失函数项;l
d
为与所述样本识别类向量相关的损失函数项;l
ce
为标签与所述样本识别类的交叉熵损失函数;c1,c2,c3分别为所述损失函数中各项的占比系数。8.一种图像识别方法,包括:获取目标图像;以及将所述目标图像输入图像识别模型,得到目标识别类;其中,所述图像识别模型是利用根据权利要求1~7中任一项所述的方法训练得到的。9.一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个指令,其中,当所述一个或多个指令被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至8中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,其上存储有可执行指令,所述可执行指令被处理器执行时使处理器实现权利要求1至8中任一项所述的方法。
技术总结
本公开提供了一种图像识别模型的训练方法、识别方法、电子设备及介质。可以应用于人工智能领域。该训练方法包括:根据与第一样本图像中的至少一个像素各自对应的重要度,对至少一个像素的梯度值进行调整,得到第二样本图像;将第二样本图像输入深度学习模型,得到样本识别类;根据样本识别类调整深度学习模型的模型参数,得到图像识别模型。得到图像识别模型。得到图像识别模型。
技术研发人员:徐奇 毕永天 陈松 康一
受保护的技术使用者:中国科学技术大学
技术研发日:2023.05.09
技术公布日:2023/8/1
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
