对抗图像生成方法、装置及存储介质转让专利

申请号 : CN202111672727.0

文献号 : CN114297730B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 田天请求不公布姓名请求不公布姓名

申请人 : 北京瑞莱智慧科技有限公司

摘要 :

本申请涉及计算机视觉领域,提供了一种对抗图像生成方法、装置及存储介质。该方法包括:获取掩码概率分布、对抗扰动和原始图像;从所述掩码概率分布中采样得到多个第一掩码;分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;分别计算所述多个候选对抗图像与目标图像的相似度;根据多个所述相似度,计算相似度期望;若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩得到目标对抗图像。本申请的实施例使用概率分布来确定稀疏的掩码,能够高效地得到稀疏对抗图像。

权利要求 :

1.一种对抗图像生成方法,包括:

获取掩码概率分布、对抗扰动和原始图像;

从所述掩码概率分布中采样得到多个第一掩码,所述第一掩码用于确定所述对抗扰动在所述原始图像上的叠加位置;

分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;

分别计算所述多个候选对抗图像与目标图像的相似度;

根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;

若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。

2.如权利要求1所述的对抗图像生成方法,其中,所述掩码概率分布包括至少一个无界参数,所述无界参数通过下述步骤获取:根据掩码概率分布的类型获取至少一个初始参数,所述至少一个初始参数唯一确定所述掩码概率分布;

若所述至少一个初始参数中存在取值范围不符合预设数值范围的第一参数,则将映射入所述预设数值范围的第一参数作为所述掩码概率分布的无界参数;

若所述至少一个初始参数中存在取值范围符合所述预设数值范围的第二参数,则将所述第二参数作为所述掩码概率分布的无界参数。

3.如权利要求2所述的对抗图像生成方法,其中,若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像,包括:若所述相似度期望未达到预设阈值,则更新所述掩码概率分布和所述对抗扰动,直至基于更新后的掩码概率分布和对抗扰动,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将更新后的对抗扰动添加至所述原始图像,得到目标对抗图像。

4.如权利要求3所述的对抗图像生成方法,其中,所述更新所述掩码概率分布,包括:根据所述相似度期望分别估计所述掩码概率分布的各个无界参数的第一梯度;

基于各个第一梯度的方向,更新对应的无界参数;

所述更新所述对抗扰动,包括:

根据所述相似度期望计算所述对抗扰动的第二梯度;

基于第二梯度的方向,更新所述对抗扰动。

5.如权利要求4所述的对抗图像生成方法,其中,所述掩码概率分布为伯努利分布,从所述掩码概率分布中采样得到多个第一掩码,包括:从伯努利分布Bern(g(θm))中进行k次采样,得到k个第一掩码,其中,g(·)=1/2(tanh(·)+1)为归一化函数,0<g(θm)<1,g(θm)表示伯努利分布中的变量为0或1的概率,θm为所述无界参数;

根据所述相似度期望估计所述掩码概率分布的无界参数的第一梯度,包括:

采用以下方式估计所述伯努利分布的无界参数θm的梯度:

其中,mj表示当前迭代轮次从所述掩码概率分布中采样得到的第j个第一掩码,p为当前迭代轮次的对抗扰动,F(mj,p;c)表示按照所述第一掩码将所述对抗扰动叠加至原始图像后得到的候选对抗图像,与目标图像的相似度。

6.如权利要求1‑5中任一项所述的对抗图像生成方法,其中,所述对抗扰动通过预设的生成式模型获取,在更新所述对抗扰动时,通过更新所述生成式模型的隐变量来更新所述对抗扰动。

7.如权利要求1‑5中任一项所述的对抗图像生成方法,其中,所述第一掩码为掩码矩阵;

所述第一掩码与所述原始图像的尺寸相同,所述第一掩码中的每个元素与所述原始图像中的每个像素一一对应;或所述第一掩码的尺寸小于所述原始图像的尺寸,所述第一掩码中的每个元素与所述原始图像中的多个相邻像素对应。

8.一种对抗图像生成装置,包括:

输入输出模块,被配置为获取掩码概率分布、对抗扰动和原始图像;

处理模块,被配置为从所述掩码概率分布中采样得到多个第一掩码,所述第一掩码用于确定所述对抗扰动在所述原始图像上的叠加位置;以及分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;以及分别计算所述多个候选对抗图像与目标图像的相似度;以及根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;以及若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。

9.如权利要求8所述的对抗图像生成装置,其中,所述掩码概率分布包括至少一个无界参数,所述处理模块还被配置为通过以下方式获取所述无界参数:根据掩码概率分布的类型获取至少一个初始参数,所述至少一个初始参数唯一确定所述掩码概率分布;

若所述至少一个初始参数中存在取值范围不符合预设数值范围的第一参数,则将映射入所述预设数值范围的第一参数作为所述掩码概率分布的无界参数;

若所述至少一个初始参数中存在取值范围符合所述预设数值范围的第二参数,则将所述第二参数作为所述掩码概率分布的无界参数。

10.如权利要求9所述的对抗图像生成装置,其中,所述处理模块,还被配置为若所述相似度期望未达到预设阈值,则更新所述掩码概率分布和所述对抗扰动,直至基于更新后的掩码概率分布和对抗扰动,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将更新后的对抗扰动添加至所述原始图像,得到目标对抗图像。

11.如权利要求10所述的对抗图像生成装置,其中,所述处理模块,还被配置为根据所述相似度期望分别估计所述掩码概率分布的各个无界参数的第一梯度;以及基于各个第一梯度的方向,更新对应的无界参数;

所述处理模块,还被配置为根据所述相似度期望计算所述对抗扰动的第二梯度;以及基于第二梯度的方向,更新所述对抗扰动。

12.如权利要求11所述的对抗图像生成装置,其中,所述掩码概率分布为伯努利分布,所述处理模块,还被配置为从伯努利分布Bern(g(θm))中进行k次采样,得到k个第一掩码,其中,g(·)=1/2(tanh(·)+1)为归一化函数,0<g(θm)<1,g(θm)表示伯努利分布中的变量为0或1的概率,θm为所述无界参数;以及采用以下方式估计所述伯努利分布的无界参数θm的梯度:其中,mj表示当前迭代轮次从所述掩码概率分布中采样得到的第j个第一掩码,p为当前迭代轮次的对抗扰动,F(mj,p;c)表示按照所述第一掩码将所述对抗扰动叠加至原始图像后得到的候选对抗图像,与目标图像的相似度。

13.如权利要求8‑12中任一项所述的对抗图像生成装置,其中,所述输入输出模块,还被配置为通过预设的生成式模型获取对抗扰动,在更新所述对抗扰动时,通过更新所述生成式模型的隐变量来更新所述对抗扰动。

14.如权利要求8‑12中任一项所述的对抗图像生成装置,其中,所述第一掩码为掩码矩阵;

所述第一掩码与所述原始图像的尺寸相同,所述第一掩码中的每个元素与所述原始图像中的每个像素一一对应;或所述第一掩码的尺寸小于所述原始图像的尺寸,所述第一掩码中的每个元素与所述原始图像中的多个相邻像素对应。

15.一种计算机可读存储介质,其包括指令,当其在计算机上运行时,使得计算机执行如权利要求1‑7中任一项所述的方法。

16.一种计算设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如权利要求1‑7中任一项所述的方法。

说明书 :

对抗图像生成方法、装置及存储介质

技术领域

[0001] 本申请的实施例涉及计算机视觉领域,更具体地涉及一种对抗图像生成方法、装置及存储介质。

背景技术

[0002] 在实际分类任务中,待识别的图像不可避免地存在一些包含干扰的对象,如果需要通过图像识别模型对该包含干扰的对象准确进行分类,则需要图像识别模型具有较高的抗干扰能力。
[0003] 为了提高图像识别模型的抗干扰能力,相关技术中一般通过对抗攻击(即生成对抗图像)来对图像识别模型进行对抗训练。
[0004] 稀疏对抗攻击旨在生成带有稀疏扰动的对抗图像,即扰动尽可能少的特征(例如图像中的像素),使得图像识别模型对于输入图像误识别。相较于一般的全局对抗攻击,稀疏对抗攻击扰动的特征更少,难以被发现。相较于一般的局部对抗攻击,稀疏对抗攻击能够自动化地选择局部特征进行扰动,能用更少的扰动达到更优的攻击效果。而如何简单、准确地为图像识别模型地生成带有稀疏扰动的对抗图像是现有技术中亟待解决的问题。
[0005] 现有的稀疏对抗攻击方法包括:
[0006] 一、直接求解带有L0约束的优化问题。具体地,在迭代过程中,对于不同位置的攻击结果分别进行计算相似度损失并排序。在迭代优化时,通过投影梯度下降的方法,将每轮优化的结果投影到一定L0范数的球内,多轮梯度下降得到优化问题的解
[0007] 二、将L0约束的优化问题近似成L1约束的优化问题,将正常样本附近的分类边界线性近似,不断通过扰动在分类边界上的投影进行迭代,并将迭代的对抗样本映射回正常图片的值域内,得到最终的对抗样本。
[0008] 现有的稀疏对抗攻击方法,存在以下缺点:
[0009] 稀疏攻击的最优问题解决的是带有L0范数约束的离散优化问题,这个离散优化问题的求解是NP难的,计算复杂度太高。
[0010] 用L1约束的连续优化问题来近似L0范数约束的离散优化问题,由于近似问题的最优解可能并非原问题的最优解,生成的稀疏扰动并非最优的。

发明内容

[0011] 本申请的实施例提供一种对抗图像生成方法、装置及存储介质,使用概率分布来近似用于确定稀疏掩码的离散变量,即从概率分布中确定离散的掩码(稀疏掩码),相当于采用概率分布替代用于确定掩码的连续变量,解决L1约束优化这一相比于L0约束优化更易计算的约束优化问题,可以更加高效、简单的得到稀疏掩码,基于所述稀疏掩码在对抗图像上叠加对抗扰动,能够高效准确地得到扰动稀疏的对抗图像。
[0012] 在本申请的第一方面中,提供了一种对抗图像生成方法,包括:
[0013] 获取掩码概率分布、对抗扰动和原始图像;
[0014] 从所述掩码概率分布中采样得到多个第一掩码,所述第一掩码用于确定所述对抗扰动在所述原始图像上的叠加位置;
[0015] 分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;
[0016] 分别计算所述多个候选对抗图像与目标图像的相似度;
[0017] 根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;
[0018] 若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。
[0019] 在本申请的第二方面中,提供了一种对抗图像生成装置,包括:
[0020] 输入输出模块,被配置为获取掩码概率分布、对抗扰动和原始图像;
[0021] 处理模块,被配置为从所述掩码概率分布中采样得到多个第一掩码,所述第一掩码用于确定所述对抗扰动在所述原始图像上的叠加位置;以及分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;以及分别计算所述多个候选对抗图像与目标图像的相似度;以及根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;以及
[0022] 若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。
[0023] 在本申请的第三方面中,提供了计算机可读存储介质,其包括指令,当其在计算机上运行时,使得计算机执行如第一方面所述的方法。
[0024] 在本申请的第四方面中,提供了一种计算设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现第一方面所述的方法。
[0025] 本申请实施例的对抗图像生成方法、装置及存储介质,使用概率分布来确定稀疏的掩码,能够高效准确地得到稀疏对抗图像。相比于现有技术中,用L1约束的连续优化问题来近似L0范数约束的离散优化问题,可能得到不够好的稀疏对抗图像,本申请的实施例仍然通过优化L1范数来生成稀疏对抗图像,但是使用概率分布来近似离散变量,从概率分布中确定掩码,能够获得比用连续变量来近似离散变量更准确的计算效果,可以简单、高效地生成对抗攻击效果更佳地稀疏对抗图像,有利于在模型训练时提高模型的抗干扰能力。

附图说明

[0026] 通过参考附图阅读下文的详细描述,本申请示例性实施例的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施例,其中:
[0027] 图1为本申请一些实施例的对抗图像生成方法的实施场景示意图;
[0028] 图2为本申请一个实施例的对抗图像生成方法的流程示意图;
[0029] 图3为本申请又一个实施例的稀疏对抗扰动在预设区域内的对抗图像生成方法的流程示意图;
[0030] 图4为本申请一个实施例的掩码矩阵的示意图;
[0031] 图5为本申请再一个实施例的掩码矩阵的示意图;
[0032] 图6为本申请又一个实施例的稀疏语义对抗扰动在预设区域内的对抗图像生成方法的流程示意图;
[0033] 图7为本申请一个实施例的对抗图像生成装置的结构示意图;
[0034] 图8为本申请一个实施例的一种计算机可读存储介质的结构示意图;
[0035] 图9为本申请一个实施例中实施对抗图像生成方法的一种计算设备的结构示意图;
[0036] 图10为本申请一个实施例中实施对抗图像生成方法的一种终端设备的结构示意图;
[0037] 图11为本申请一个实施例中实施对抗图像生成方法的服务器的结构示意图。
[0038] 在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

[0039] 下面将参考若干示例性实施例来描述本申请的原理和精神。应当理解,给出这些实施例仅仅是为了使本领域技术人员能够更好地理解进而实现本申请,而并非以任何方式限制本申请的范围。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0040] 本领域技术人员知道,本申请的实施例可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
[0041] 需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0042] 此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
[0043] 本申请的实施例意图使用概率分布来确定稀疏的掩码,高效准确地得到稀疏的对抗扰动,解决现有技术无法高效得到最优的稀疏对抗扰动的问题,本申请实施例得到的稀疏对抗图像可以用于检测图像识别模型(例如手机或门禁的人脸识别模型、自动驾驶的目标检测等)的抗干扰能力,或者对图像识别模型进行对抗训练,提高其抗干扰能力。其中,对抗扰动是指生成对抗图像时生成的干扰噪声,对抗图像是指在数据集中通过故意添加细微的干扰所形成的输入图像,会导致基于人工智能中的神经网络、深度学习技术构建的图像识别模型以高置信度给出一个错误的输出。
[0044] 其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
[0045] 人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0046] 计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括对抗扰动生成、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
[0047] 机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
[0048] 随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
[0049] 特别是在人机交互这一环节,随着语音、图像作为新兴的人机输入手段,其便捷和实用性被大众所欢迎。同时随着移动设备的普及,以及移动设备对这些新兴的输入手段的集成,使得这项技术被大多数人所亲身体验。而语音、图像的识别的准确性对机器理解并执行用户指令的有效性至关重要。与此同时,这一环节也是最容易被攻击者利用,通过对数据源的细微修改,达到用户感知不到,而机器接受了该数据后做出错误的后续操作的目的。
[0050] 由此,为了衡量或提高图像识别模型/设备的抗干扰能力,往往需要生成对抗图像进行测试,然而现有技术中,在生成稀疏对抗图像时无法快速、高效地生成攻击效果好、不易被察觉的稀疏对抗扰动;所以需要一种能够快速、高效地生成更加不易被察觉、攻击效果更好地稀疏对抗图像的方法。
[0051] 下面,将结合几个实施例对本申请技术方案进行详细的介绍说明。
[0052] 实施场景总览
[0053] 请参考图2,其示出了本申请实施例提供的对抗图像生成方法所涉及的一种实施环境的结构示意图。该实施环境可以包括终端01和服务器02。该终端01可以为计算机、平板电脑、智能手机等。该服务器02可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。并且该终端01与服务器02之间可以通过有线或无线网络建立连接。
[0054] 该服务器02中可以部署有图像识别模型,所述图像识别模型为基于机器学习的方法训练得到的人工智能(Artificial Intelligence,AI)模型。
[0055] 终端01可以向该服务器02发送原始图像,服务器02可以采用图像识别模型对该原始图像进行识别,然后根据识别结果、采用本申请的对抗图像生成方法生成稀疏对抗图像、确定稀疏对抗扰动,并向终端01反馈生成的稀疏对抗图像或稀疏对抗扰动。或者服务器02可以采用图像识别模型对该原始图像进行识别,然后向终端01反馈识别结果,终端01进而可以基于目标图像以及该识别结果对原始图像进行更新,直至该图像识别模型对该更新后的原始图像的处理结果满足对抗攻击的约束条件,且更新后的原始图像与目标图像之间的相似度收敛时,可以将该更新后的原始图像确定为对抗图像,并由此确定目标对抗图像。其中,该对抗攻击的约束条件可以为:图像识别模型对更新后的原始图像的识别结果与对目标图像的识别结果的差值大于第一差值阈值或者对更新后的原始图像的识别结果与对原始图像的识别结果的差值小于第二差值阈值。因此图像识别模型对更新后的原始图像的识别结果满足对抗攻击的约束条件即相当于:更新后的原始图像对图像识别模型对抗攻击成功。
[0056] 对图像识别模型的对抗攻击可以分为有目标攻击和无目标攻击两种类型。其中,无目标攻击是指:图像识别模型对该对抗图像的识别结果与该图像识别模型对原始图像的识别结果不同,例如两个识别结果的差值大于第一差值阈值。有目标攻击是指:图像识别模型对该对抗图像的识别结果为特定的识别结果,该特定的识别结果大致相当于图像识别模型对目标图像的识别结果,例如两个处理结果的差值小于第二差值阈值。
[0057] 需要说明的是,该实施环境中也可以仅包括终端01,而不包括该服务器02,该图像识别模型可以直接部署于终端01中。在该实现方式中,终端01也可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
[0058] 本申请实施例提供的对抗图像生成方法可以应用于迁移攻击现实世界中图像识别系统或设备,其中部署的图像识别模型相当于黑盒模型,黑盒模型是指待攻击的图像识别模型为黑盒模型,即结构和参数未知,只能通过获取图像识别模型的处理结果来生成对抗图像。
[0059] 示例性方法
[0060] 下面结合图1的应用场景,参考图2来描述本申请示例性实施例的用于生成对抗图像的方法,该方法可以适用于计算设备,该计算设备可以是上文列举的实施场景中的终端01或服务器02,本申请对执行该对抗图像生成方法的计算设备的产品形式及结构不作限定。
[0061] 在本实施方式的一个实施例中,提出一种对抗图像生成方法,包括:
[0062] 步骤S110,获取掩码概率分布、对抗扰动和原始图像。
[0063] 在本实施例中,首先获取用于确定第一掩码的掩码概率分布,所述第一掩码用于定所述对抗扰动在所述原始图像上的叠加位置,在根据所述第一掩码将对抗扰动在原始图像上叠加之后,就可以生成候选对抗图像,或者也可以称之为迭代中的对抗图像。
[0064] 可以理解的是,若所述候选对抗图像满足预设条件,如能够成功攻击图像识别模型,则所述候选对抗图像即为目标对抗图像。
[0065] 另外,在本实施例中,为了针对一个图像识别模型生成稀疏对抗图像,还需要获取对抗扰动和原始图像,所述对抗扰动可以随机初始化得到。也可以通过生成式模型得到,即生成语义级别的对抗扰动,所述生成式模型可以是任何基于对抗生成网络训练得到的,本实施例对此不作限定,例如StarGAN。
[0066] 所述原始图像即为希望图像识别模型错误识别的对抗图像的初始图像。
[0067] 在介绍实施本实施例需要获取的一些掩码概率分布、对抗扰动和原始图像之后,接下来,执行步骤S120,从所述掩码概率分布中采样得到多个第一掩码。
[0068] 在本实施例中,对具体采样的方式和采样的个数不做限制;采样方式例如可以是随机采样,也可以是按照预设规则采样;采样的个数不能过少例如只有一个,也不需要特别多,不然计算量过大,本领域的技术人员可以根据实际需要进行合理设置。
[0069] 在得到多个第一掩码之后,接下来执行步骤S130,分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像。
[0070] 在本实施例中,所述第一掩码可以是与原始图像同样的尺寸大小,如图4所示,其中包括多个指示原始图像各个像素位置是否叠加对抗扰动的元素,例如所述第一掩码可以是与所述原始图像同样尺寸大小的二值化矩阵,矩阵中的每个元素值为0或1,1表示对应的像素点需要叠加对抗扰动,0表示对应的像素点不叠加对抗扰动。
[0071] 可以理解的是,图4中是以一个个方块指代图像中的一个个像素,并不代表实际应用中的掩码或图像是一个个方块。
[0072] 或者,在本申请的又一个实施例中,参照图5,所述第一掩码可以是尺寸大小小于所述原始图像的二值化掩码矩阵,所述二值化掩码矩阵中的一个元素可以表示原始图像中的多个连续像素是否叠加对抗扰动,例如可以将所述二值化掩码矩阵放缩到与所述原始图像相同的尺寸后,再确定对抗扰动在所述原始图像的叠加位置。
[0073] 在本实施例中,采用尺寸小于原始图像的第一掩码,可以减少优化计算时的计算量,例如原始图像的维度为1024×768,那么第一掩码可以设置为512×768。在本实施例中,所述第一掩码中的元素可以指示原始图像中的每个图像块或者超像素是否叠加对抗扰动,由此,在迭代优化时,可以获得更快的收敛速度、更准确的梯度估计值。
[0074] 可以理解的是,所述第一掩码的尺寸和形状可以人为设置,参照图3,如希望生成的对抗图像中的对抗扰动约束在眼睛区域,以便实体化为眼镜形状的对抗扰动,方便在实际应用中进行对抗攻击测试。
[0075] 在根据多个第一掩码,分别在原始图像上叠加对抗扰动生成对应的多个候选对抗图像之后,接下来,执行步骤S140,分别计算所述多个候选对抗图像与目标图像的相似度。
[0076] 在本实施例中,所述多个候选对抗图像与目标图像的相似度,可以是图像识别模型计算的,例如,将所述多个候选对抗图像与目标图像输入图像识别模型,由所述图像识别模型输出相似度结果。
[0077] 所述图像识别模型在基于所述多个候选对抗图像与目标图像计算相似度时,可以是基于各个图像的特征进行的相似度计算,即首先提取各个图像的特征,然后计算各个图像的特征之间的相似度,具体的相似度计算方式可以是欧氏距离、余弦相似度、曼哈顿距离或切比雪夫距离等等,本实施例对相似度计算方式不作限定。
[0078] 接下来,执行步骤S150,根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望。
[0079] 在本实施例中,由于第一掩码从掩码概率分布中采样得到,所以多次采样时,可能采样得到不同的第一掩码,即不同的第一掩码指示不同的对抗扰动叠加位置,由此,生成的不同的候选对抗图像的攻击效果可能不同,即与目标图像的相似度不同;然而,本申请实施例希望从所述掩码概率分中采样得到的掩码总是能够指示合适的对抗扰动叠加位置,即总是生成成功的对抗图像。所以可以认为是希望多次采样得到的对抗图像与目标图像的相似度期望达到预设阈值,由此,可以通过多次采样,估计基于所述掩码概率分布采样得到的第一掩码,对生成的对抗图像的期望影响,即估计多次采样生成的对抗图像与目标图像的相似度期望。
[0080] 在明确本申请实施例希望解决的约束优化问题后,执行步骤S160,若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。
[0081] 在本实施例中,由于待解决的约束优化问题中具有采样操作,由此,可以采用梯度估计法解决,具体来说可以采用梯度估计法估计每个迭代轮次的相似度损失关于掩码概率分布的梯度,然后通过梯度优化法调整所述掩码概率分布,以使所述掩码概率分布收敛,即多次采样总是能够从所述掩码概率分布中采样得到指示叠加稀疏对抗扰动的第二掩码。
[0082] 考虑到,在采用梯度优化法对掩码概率分布进行优化时,大多是根据梯度的方向以及预设步长调大或调小所述掩码概率分布的参数。而不同类型的掩码概率分布的参数不同,即取值范围不同。例如伯努利分布的参数为p,表示伯努利分布中的变量为0或1的概率,那么伯努利分布的参数的取值范围是[0,1]。根据上述梯度优化的内容可知,如果掩码概率分布的参数是有界的,即取值范围不是(—∞,+∞),那么在进行优化调整时,是很难收敛的。
[0083] 为了更加快速方便地使掩码概率分布收敛,在本申请的一个实施例中,所述掩码概率分布包括至少一个无界参数,在对所述掩码概率分布进行优化调整时,是对所述掩码概率分布的无界参数进行优化调整,所述无界参数通过下述步骤获取:
[0084] 根据掩码概率分布的类型获取至少一个初始参数,所述至少一个初始参数唯一确定所述掩码概率分布。
[0085] 在本实施例中,每一个掩码概率分布都有各自的类型,例如可以是伯努利分布、贝塔分布或Gumbel‑softmax分布;根据上一实施例中的内容可知,不同类型的概率分布的初始参数的取值范围不同,即有些参数的取值范围很窄,有些参数的取值范围很大,取值范围很窄的概率分布在优化调整时的收敛难度较大;所以在对掩码概率分布进行优化调整之前,需要确定所述掩码概率分布的无界参数,以便迭代优化时对所述掩码概率分布的无界参数进行调整。
[0086] 在本实施例中,若所述至少一个初始参数中存在取值范围不符合预设数值范围的第一参数,则将映射入所述预设数值范围的第一参数作为所述掩码概率分布的无界参数。
[0087] 具体来说,若所述掩码概率分布为伯努利分布,则需要先将所述伯努利分布的初始参数p映射入预设数值范围(—∞,+∞),例如可以通过归一化函数将一个参数θm映射入预设数值范围(—∞,+∞),那么所述θm即为所述伯努利分布的无界参数,在根据所述伯努利分布进行采样时,为随机采样m1,...,mk~Bern(g(θm)),其中 为归一化函数;Bern代表伯努利分布。
[0088] 若所述至少一个初始参数中存在取值范围符合所述预设数值范围的第二参数,则将所述第二参数作为所述掩码概率分布的无界参数。
[0089] 可以理解的是,可能有一些概率分布的初始参数本身的取值范围即为(—∞,+∞),那么也就不用在将其映射入预设数值范围(—∞,+∞),这些参数本身就是无界参数,可以直接通过梯度优化法进行调整。
[0090] 考虑到,影响对抗图像的攻击效果的因素不仅仅是对抗扰动的叠加位置,即第一掩码到底是怎样的,对抗扰动的图案也与对抗图像的攻击效果息息相关,即最佳的对抗扰动叠加位置与最佳的对抗扰动图案一起决定了最佳的对抗图像的攻击效果;由此,在本申请的一个实施例中,每个迭代优化轮次,在更新掩码概率分布的同时,还更新对抗扰动,即:若所述相似度期望未达到预设阈值,则更新所述掩码概率分布和所述对抗扰动,直至基于更新后的掩码概率分布和对抗扰动,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将更新后的对抗扰动添加至所述原始图像,得到目标对抗图像。
[0091] 在本实施例中,为了取得最佳的对抗扰动和第一掩码,依然可以采用梯度优化法分别优化对抗扰动和掩码概率分布,具体来说,所述更新所述掩码概率分布,包括:
[0092] 根据所述相似度期望分别估计所述掩码概率分布的各个无界参数的第一梯度。
[0093] 在本实施例中,由于掩码概率分布可能包括不仅一个无界参数,所以为了对所述掩码概率分布进行更新,需要计算每一个无界参数的梯度,然后再根据每个无界参数的梯度,对对应的无界参数进行更新。
[0094] 例如贝塔分布由两个初始参数α和β决定,那么,在对贝塔分布类型的掩码概率分布进行更新调整时,就需要对α和β各自对应的无界参数均进行更新,才能完整更新所述贝塔分布类型的掩码概率分布。
[0095] 在得到各个无界参数的第一梯度之后,即可基于各个第一梯度的方向,更新对应的无界参数;具体来说可以根据梯度方向,以及更新优化目的,采用梯度下降法或梯度上升法,此处不再赘述。
[0096] 在介绍了如何通过更新掩码概率分布的各个无界参数来更新掩码概率分布之后,接下来继续介绍如何更新所述对抗扰动,包括:
[0097] 根据所述相似度期望计算所述对抗扰动的第二梯度;
[0098] 基于第二梯度的方向,更新所述对抗扰动。
[0099] 在本实施例中,依然可以采用梯度优化法计算对抗扰动的第二梯度,然后根据对抗扰动的第二梯度更新所述对抗扰动,采用梯度优化法更新对抗扰动的方式与更新无界参数的方式类似,此处不再赘述。
[0100] 考虑到,涉及到采样的梯度估计法比较难以计算,本申请的一个实施例中提供一种简单的梯度估计计算方法,从而可以快速计算出掩码概率分布的无界参数梯度,使得所述掩码概率分布快速更新至收敛,在本实施例中,所述掩码概率分布为伯努利分布,从所述掩码概率分布中采样得到多个第一掩码,包括:
[0101] 从伯努利分布Bern(g(θm))中进行k次采样,得到k个第一掩码,其中,g(·)=1/2(tanh(·)+1)为归一化函数,0<g(θm)<1,g(θm)表示伯努利分布中的变量为0或1的概率,θm为所述无界参数。
[0102] 然后,根据所述相似度期望估计所述掩码概率分布的无界参数的第一梯度,包括:
[0103] 采用以下方式估计所述伯努利分布的无界参数θm的梯度:
[0104]
[0105] 其中,mj表示当前迭代轮次从所述掩码概率分布中采样得到的第j个第一掩码,p为当前迭代轮次的对抗扰动,F(mj,p;c)表示按照所述第一掩码将所述对抗扰动叠加至原始图像后得到的候选对抗图像,与目标图像的相似度。
[0106] 在本实施例中,通过将采样得到的各个候选对抗图像与目标图像计算相似度后,与无偏估计项2(mj‑g(θm))直接相乘,并在求和之后计算平均值,可以快速计算出基于伯努利类型的掩码概率分布的参数优化梯度,而无需再进行繁复的公式推导,极大节约了优化更新时间。
[0107] 考虑到,直接通过优化参数调整(例如叠加)对抗扰动的方式,是直接对对抗扰动进行的线性修改,最终生成的对抗图像可能只能对有限数量的图像识别模型或者生成时使用的图像识别模型产生对抗攻击效果,迁移攻击其他图像识别模型的效果较差。在本实施方式的一个实施例中,参照图6,通过间接优化调整的方式对所述对抗扰动进行更新,生成更具迁移攻击性的对抗图像,具体包括:通过预设的生成式模型获取所述对抗扰动,在更新所述对抗扰动时,通过更新所述生成式模型的隐变量来更新所述对抗扰动。
[0108] 在本实施例中,获取到待优化隐变量之后,接下来即可通过梯度迭代优化法调整所述待优化隐变量,具体为计算所述相似度期望相对于所述待优化隐变量的梯度;以及根据预设步长和所述梯度的方向计算优化参数;然后,根据所述优化参数调整所述待优化隐变量;最后,基于所述待优化隐变量生成更新后的对抗扰动。
[0109] 在本实施例中,通过间接优化调整的方式对所述对抗扰动进行修改。将直接优化对抗扰动转化为优化生成攻击者对抗扰动(包括)时的输入—隐变量。隐变量的变化导致生成的对抗扰动的变化,对抗扰动的变化导致对抗图像的变化。即通过生成式模型控制协调对抗图像的生成过程,使得对抗图像中的对抗扰动不是直接线性的叠加在原始图像上,而是在语义级别生成对抗扰动;使对抗扰动更加自然地、贴合原始图像的融入,不易被图像识别模型察觉,具备更强的迁移攻击性能。
[0110] 考虑到,对抗攻击一般包括无目标攻击和有目标攻击,其中,无目标攻击是指:图像识别模型对该对抗图像的识别结果与该图像识别模型对原始图像(即生成对抗图像的初始图像,也可以认为是目标图像)的识别结果不同,例如两个识别结果的相似度差值大于第一差值阈值。有目标攻击是指:图像识别模型对该对抗图像的识别结果为特定的识别结果,该特定的识别结果与图像识别模型对目标图像的识别结果相同或相差不大,例如两个识别结果的相似度差值小于第二差值阈值。
[0111] 可以理解的是,在人脸识别的应用场景下,有目标攻击也称之为伪装攻击(impersonation attack),即使人脸识别模型将对抗图像识别为指定的身份,形式化地,给a b a *定属于不同人的一对人脸图片{x ,x},伪装攻击针对x 生成对抗图像x ,使得人脸识别模* b
型将x和x识别为相同身份;无目标也称之为躲避攻击(dodging attack),其目标是使人脸a b
识别模型将对抗图像识别错误,形式化地,给定属于同一个人的一对人脸图片{x ,x},躲避a * * b
攻击针对x生成对抗图像x,使得人脸识别模型将x和x识别为不同身份。
[0112] 基于以上介绍的两种攻击方式,接下来可根据攻击方式的不同,确定不同的扰动更新方式和掩码概率分布更新方式。
[0113] 在本实施例中,若对抗攻击为无目标攻击,那么目标图像也为原始图像,对抗攻击意图生成使图像识别模型无法正确识别的对抗图像,即图像识别对抗图像的结果与识别原始图像的识别结果的相似度小于预设阈值,若所述相似度不小于预设阈值,则更新所述掩码概率分布和所述对抗扰动,直至基于更新后的掩码概率分布和对抗扰动,重新采样生成的候选对抗图像与目标图像的相似度期望小于预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将更新后的对抗扰动添加至所述原始图像,得到目标对抗图像。
[0114] 若对抗攻击为有目标攻击,那么目标图像为攻击目标的图像,对抗攻击意图生成使图像识别模型识别为指定结果的对抗图像,即图像识别对抗图像的结果与识别目标图像的识别结果的相似度大于预设阈值,若所述相似度不大于预设阈值,则更新所述掩码概率分布和所述对抗扰动,直至基于更新后的掩码概率分布和对抗扰动,重新采样生成的候选对抗图像与目标图像的相似度期望大于预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将更新后的对抗扰动添加至所述原始图像,得到目标对抗图像。
[0115] 为了验证本申请实施例的方法生成的对抗图像的性能,发明人还进行了实验,在实验中利用StyleGAN2的预训练模型作为生成式模型,ResNet50作为白盒替代模型,生成了语义级别对抗扰动,生成的语义级别的稀疏对抗图像的结果示如图1所示。
[0116] 另外,发明人还通过实验确定了本申请的一些实施例自动选择最佳的稀疏对抗扰动的方式,在本实验中,将扰动的位置固定在人的眼睛附近区域,基于实验结果‑生成的稀疏对抗图像可以看出,如图3或图6,本申请实施例的方法能自动化地选择出更少的扰动特征。同时,本申请实施例的方法能获得更好的攻击效果。在一些人脸识别模型上进行攻击测试后,本实验生成的稀疏对抗图像与受害者的相似度是98,而固定扰动位置方法生成的对抗图像与受害者的相似度是83,足以表明本申请实施例生成的对抗图像的优异性能。
[0117] 本申请实施例的对抗图像生成方法,使用概率分布来确定稀疏的掩码,能够高效准确地得到稀疏对抗图像。相比于现有技术中,用L1约束的连续优化问题来近似L0范数约束的离散优化问题,可能得到不够好的稀疏对抗图像,本申请的实施例仍然通过优化L1范数来生成稀疏对抗图像,但是使用概率分布来近似离散变量,从概率分布中确定掩码,能够获得比用连续变量来近似离散变量更准确的计算效果,可以简单、高效地生成对抗攻击效果更佳地稀疏对抗图像,有利于在模型训练时提高模型的抗干扰能力。
[0118] 示例性装置
[0119] 在介绍了本申请示例性实施例的对抗图像生成方法之后,接下来,参考图7对本申请示例性实施例的用于生成对抗图像的装置,该装置同样可以适用于实施场景所示的计算设备,所述装置70包括:
[0120] 输入输出模块710,被配置为获取掩码概率分布、对抗扰动和原始图像;
[0121] 处理模块720,被配置为从所述掩码概率分布中采样得到多个第一掩码,所述第一掩码用于确定所述对抗扰动在所述原始图像上的叠加位置;以及分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;以及分别计算所述多个候选对抗图像与目标图像的相似度;以及根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;以及
[0122] 若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。
[0123] 在本申请的一个实施例中,所述掩码概率分布包括至少一个无界参数,所述处理模块720,还被配置为通过以下方式获取所述无界参数:
[0124] 根据掩码概率分布的类型获取至少一个初始参数,所述至少一个初始参数唯一确定所述掩码概率分布;
[0125] 若所述至少一个初始参数中存在取值范围不符合预设数值范围的第一参数,则将映射入所述预设数值范围的第一参数作为所述掩码概率分布的无界参数;
[0126] 若所述至少一个初始参数中存在取值范围符合所述预设数值范围的第二参数,则将所述第二参数作为所述掩码概率分布的无界参数。
[0127] 在本申请的一个实施例中,所述处理模块720,还被配置为若所述相似度期望未达到预设阈值,则更新所述掩码概率分布和所述对抗扰动,直至基于更新后的掩码概率分布和对抗扰动,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将更新后的对抗扰动添加至所述原始图像,得到目标对抗图像。
[0128] 在本申请的一个实施例中,所述处理模块720,还被配置为根据所述相似度期望分别估计所述掩码概率分布的各个无界参数的第一梯度;以及基于各个第一梯度的方向,更新对应的无界参数;
[0129] 所述处理模块720,还被配置为根据所述相似度期望计算所述对抗扰动的第二梯度;以及基于第二梯度的方向,更新所述对抗扰动。
[0130] 在本申请的一个实施例中,所述掩码概率分布为伯努利分布,所述处理模块720,还被配置为从伯努利分布Bern(g(θm))中进行k次采样,得到k个第一掩码,其中,g(·)=1/2(tanh(·)+1)为归一化函数,0<g(θm)<1,g(θm)表示伯努利分布中的变量为0或1的概率,θm为所述无界参数;以及采用以下方式估计所述伯努利分布的无界参数θm的梯度:
[0131]
[0132] 其中,mj表示当前迭代轮次从所述掩码概率分布中采样得到的第j个第一掩码,p为当前迭代轮次的对抗扰动,F(mj,p;c)表示按照所述第一掩码将所述对抗扰动叠加至原始图像后得到的候选对抗图像,与目标图像的相似度。
[0133] 在本申请的一个实施例中,所述输入输出模块710,还被配置为通过预设的生成式模型获取对抗扰动,在更新所述对抗扰动时,通过更新所述生成式模型的隐变量来更新所述对抗扰动。
[0134] 在本申请的一个实施例中,所述第一掩码为掩码矩阵;
[0135] 所述第一掩码与所述原始图像的尺寸相同,所述第一掩码中的每个元素与所述原始图像中的每个像素一一对应;或
[0136] 所述第一掩码的尺寸小于所述原始图像的尺寸,所述第一掩码中的每个元素与所述原始图像中的多个相邻像素对应。
[0137] 本申请实施例的对抗图像生装置,使用概率分布来确定稀疏的掩码,能够高效准确地得到稀疏对抗图像。相比于现有技术中,用L1约束的连续优化问题来近似L0范数约束的离散优化问题,可能得到不够好的稀疏对抗图像,本申请的实施例仍然通过优化L1范数来生成稀疏对抗图像,但是使用概率分布来近似离散变量,从概率分布中确定掩码,能够获得比用连续变量来近似离散变量更准确的计算效果,可以简单、高效地生成对抗攻击效果更佳地稀疏对抗图像,有利于在模型训练时提高模型的抗干扰能力。
[0138] 示例性介质
[0139] 在介绍了本申请示例性实施方式的对抗图像生成方法和装置之后,接下来,参考图8对本申请示例性实施方式的计算机可读存储介质进行说明,其示出的计算机可读存储介质为光盘80,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会实现上述方法实施方式中所记载的各步骤,例如,获取掩码概率分布、对抗扰动和原始图像;从所述掩码概率分布中采样得到多个第一掩码;分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;分别计算所述多个候选对抗图像与目标图像的相似度;根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像;各步骤的具体实现方式在此不再重复说明。
[0140] 需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
[0141] 示例性计算设备
[0142] 上面从模块化功能实体的角度对本申请实施例中的对抗图像生成装置70进行了描述,下面从硬件处理的角度分别对本申请实施例中的执行对抗图像生成方法的服务器、终端进行描述。需要说明的是,在本申请对抗图像生成装置实施例的图7所示的输入输出模块710对应的实体设备可以为输入/输出单元、收发器、射频电路、通信模块和输入/输出(I/O)接口等,处理模块720对应的实体设备可以为处理器。图7所示的对抗图像生成装置70可以具有如图9所示的结构,当图7所示的对抗图像生成装置70具有如图9所示的结构时,图9中的处理单元901和I/O接口905能够实现前述对应该装置的装置实施例提供的处理模块720和输入输出模块710相同或相似的功能,图9中的处理单元901执行上述对抗图像生成方法时需要调用的计算机程序。
[0143] 图9示出了适于用来实现本申请实施方式的示例性计算设备90的框图,该计算设备90可以是计算机系统或服务器。图9显示的计算设备90仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0144] 如图9所示,计算设备90的组件可以包括但不限于:一个或者多个处理器或者处理单元901,系统存储器902,连接不同系统组件(包括系统存储器902和处理单元901)的总线903。
[0145] 计算设备90典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算设备90访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0146] 系统存储器902可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)9021和/或高速缓存存储器9022。计算设备90可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,ROM9023可以用于读写不可移动的、非易失性磁介质(图9中未显示,通常称为“硬盘驱动器”)。尽管未在图9中示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD‑ROM,DVD‑ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线903相连。系统存储器902中可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
[0147] 具有一组(至少一个)程序模块9024的程序/实用工具9025,可以存储在例如系统存储器902中,且这样的程序模块9024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块9024通常执行本申请所描述的实施例中的功能和/或方法。
[0148] 计算设备90也可以与一个或多个外部设备904(如键盘、指向设备、显示器等)通信。这种通信可以通过输入/输出(I/O)接口905进行。并且,计算设备90还可以通过网络适配器906与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图9所示,网络适配器906通过总线903与计算设备90的其它模块(如处理单元901等)通信。应当明白,尽管图9中未示出,可以结合计算设备90使用其它硬件和/或软件模块。
[0149] 处理单元901通过运行存储在系统存储器902中的程序,从而执行各种功能应用以及数据处理,例如,获取掩码概率分布、对抗扰动和原始图像;从所述掩码概率分布中采样得到多个第一掩码;分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;分别计算所述多个候选对抗图像与目标图像的相似度;根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。各步骤的具体实现方式在此不再重复说明。
[0150] 应当注意,尽管在上文详细描述中提及了对抗图像生成装置的若干单元/模块或子单元/子模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
[0151] 本申请实施例还提供了一种终端设备,如图10所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、销售终端设备(Point of Sales,POS)、车载电脑等任意终端设备,以终端设备为手机为例:
[0152] 图10示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图10,手机包括:射频(Radio Frequency,RF)电路1010、存储器1020、输入单元1030、显示单元1040、传感器1050、音频电路1060、无线保真(wireless fidelity,WiFi)模块1070、处理器1080、以及电源1090等部件。本领域技术人员可以理解,图10中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0153] 下面结合图10对手机的各个构成部件进行具体的介绍:
[0154] RF电路1010可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1080处理;另外,将设计上行的数据发送给基站。通常,RF电路1010包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路1010还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
[0155] 存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在存储器1020的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0156] 输入单元1030可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1030可包括触控面板1031以及其他输入设备1032。触控面板1031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1031上或在触控面板1031附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1080,并能接收处理器1080发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1031。除了触控面板1031,输入单元1030还可以包括其他输入设备1032。具体地,其他输入设备1032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0157] 显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1040可包括显示面板1041,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light‑Emitting Diode,OLED)等形式来配置显示面板1041。进一步的,触控面板1031可覆盖显示面板1041,当触控面板1031检测到在其上或附近的触摸操作后,传送给处理器1080以确定触摸事件的类型,随后处理器1080根据触摸事件的类型在显示面板1041上提供相应的视觉输出。虽然在图10中,触控面板1031与显示面板1041是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1031与显示面板1041集成而实现手机的输入和输出功能。
[0158] 手机还可包括至少一种传感器1050,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1041的亮度,接近传感器可在手机移动到耳边时,关闭显示面板
1041和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0159] 音频电路1060、扬声器1061,传声器1062可提供用户与手机之间的音频接口。音频电路1060可将接收到的音频数据转换后的电信号,传输到扬声器1061,由扬声器1061转换为声音信号输出;另一方面,传声器1062将收集的声音信号转换为电信号,由音频电路1060接收后转换为音频数据,再将音频数据输出处理器1080处理后,经RF电路1010以发送给比如另一手机,或者将音频数据输出至存储器1020以便进一步处理。
[0160] WiFi属于短距离无线传输技术,手机通过WiFi模块1070可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图10示出了WiFi模块1070,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0161] 处理器1080是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1080可包括一个或多个处理单元;可选的,处理器1080可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。
[0162] 手机还包括给各个部件供电的电源1090(比如电池),可选的,电源可以通过电源管理系统与处理器1080逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0163] 尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0164] 上述实施例中由终端设备所执行的步骤可以基于该图10所示的终端设备结构。
[0165] 本申请实施例还提供了一种服务器,请参阅图11,图11是本申请实施例提供的一种服务器结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(英文全称:central processing units,英文简称:CPU)1122(例如,一个或一个以上处理器)和存储器1132,一个或一个以上存储应用程序1142或数据1144的存储介质1130(例如一个或一个以上海量存储设备)。其中,存储器1132和存储介质
1130可以是短暂存储或持久存储。存储在存储介质1130的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1122可以设置为与存储介质1130通信,在服务器1100上执行存储介质1130中的一系列指令操作。
[0166] 服务器1110还可以包括一个或一个以上电源1120,一个或一个以上有线或无线网络接口1150,一个或一个以上输入输出接口1158,和/或,一个或一个以上操作系统1141,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等等。
[0167] 上述实施例中由服务器所执行的步骤可以基于该图11所示的服务器1100的结构。例如,例如上述实施例中由图11所示的对抗图像生成装置70所执行的步骤可以基于该图11所示的服务器结构。例如,所述中央处理器1122通过调用存储器1132中的指令,执行以下操作:
[0168] 通过输入输出接口1158获取掩码概率分布、对抗扰动和原始图像;
[0169] 中央处理器1122从所述掩码概率分布中采样得到多个第一掩码;然后分别根据所述多个第一掩码,将所述对抗扰动添加至所述原始图像,得到多个候选对抗图像;之后分别计算所述多个候选对抗图像与目标图像的相似度;接下来,根据多个所述相似度,计算基于所述掩码概率分布采样得到的第一掩码,将所述对抗扰动添加至所述原始图像后得到的候选对抗图像与目标图像的相似度期望;若所述相似度期望未达到预设阈值,则更新所述掩码概率分布,直至基于更新后的掩码概率分布,重新采样生成的候选对抗图像与目标图像的相似度期望达到预设阈值,并基于更新后的掩码概率分布确定第二掩码,根据所述第二掩码将所述对抗扰动添加至所述原始图像,得到目标对抗图像。
[0170] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0171] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0172] 在本申请实施例所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0173] 所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0174] 另外,在本申请实施例各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
[0175] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0176] 所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
[0177] 以上对本申请实施例所提供的技术方案进行了详细介绍,本申请实施例中应用了具体个例对本申请实施例的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请实施例的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请实施例的限制。