CN111027628B - 一种模型确定方法和*** - Google Patents
一种模型确定方法和*** Download PDFInfo
- Publication number
- CN111027628B CN111027628B CN201911273135.4A CN201911273135A CN111027628B CN 111027628 B CN111027628 B CN 111027628B CN 201911273135 A CN201911273135 A CN 201911273135A CN 111027628 B CN111027628 B CN 111027628B
- Authority
- CN
- China
- Prior art keywords
- image
- patch
- countermeasure
- current
- machine learning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本说明书实施例公开了一种模型确定方法。所述方法包括:获取源图像和目标图像,其中所述源图像属于第一图像类别,所述目标图像属于第二图像类别;确定补丁区域,所述补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小;基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别;使用所述对抗样本对所述机器学习模型进行对抗训练,得到目标模型。
Description
技术领域
本说明书实施例涉及机器学习领域,特别涉及一种模型确定方法和***。
背景技术
近年来,图像识别已成为用户产生资金流动或是参与活动的重要一环。例如,在刷脸支付的场景下,对用户人脸的识别(包括活体检测、人脸图像识别等步骤)常是取代密码、指纹或手机验证码等身份识别途径的替代品。在真实世界的支付场景下,刷脸支付可以很大程度上减少支付过程所需时间(不需要跳出手机等电子设备即可付款)、提升用户体验。又如报销业务中,***的自动识别能提示用户上传正确的***正片,提高报销效率。
目前,研究者们发现机器学习模型很容易受到对抗样本的“迷惑”。例如在刷脸支付中,可以将一些特殊色块打印在眼镜上,攻击者带上有一些特殊色块的眼睛,足以使得人脸识别***将他识别为攻击者所指定的另一个受害者。为了提高图像识别***抵御对抗攻击的能力,一种常用的方法是用对抗样本对***进行对抗重训练,通过给能迷惑机器学习模型的对抗样本赋予正确的标签,并将这些对抗样本加入到模型训练集中对模型进行重训练,从而微调模型的决策边界,增强模型的泛化能力和***的鲁棒性。为了实现对抗重训练,需要获取足够数量的对抗样本。因此,需要提供一种能大批量生成对抗样本来训练模型的方法和***。
发明内容
本说明书实施例之一提供一种模型确定方法。所述方法包括:获取源图像和目标图像,其中所述源图像属于第一图像类别,所述目标图像属于第二图像类别;确定补丁区域,所述补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小;基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别;使用所述对抗样本对所述机器学习模型进行对抗训练,得到目标模型。
本说明书实施例之一提供一种模型确定***。所述***包括:获取模块,用于获取源图像和目标图像,其中所述源图像属于第一图像类别,所述目标图像属于第二图像类别;补丁区域确定模块,用于确定补丁区域,所述补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小;对抗补丁确定模块,用于基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别;模型训练模块,用于使用所述对抗样本对所述机器学习模型进行对抗训练,得到目标模型。
本说明书实施例之一提供一种模型确定装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现如上所述的模型确定方法。
本说明书实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如上所述的模型确定方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的对抗补丁生成***的示例性模块图;
图2是根据本说明书一些实施例所示的对抗补丁生成方法的示例性流程图;
图3是根据本说明书一些实施例所示的对抗补丁生成方法的示例性流程图;
图4是根据本说明书一些实施例所示的源图像;
图5是根据本说明书一些实施例所示的目标图像;以及
图6是根据本说明书一些实施例所示的多轮迭代过程中源图像的变化情况。
具体实施方式
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“***”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本申请中使用了流程图用来说明根据本申请的实施例的***所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是根据本申请一些实施例所示的对抗补丁生成***的模块图。如图1 所示,该对抗补丁生成***100可以包括获取模块102、补丁区域确定模块104、对抗补丁确定模块106以及模型训练模块108。
获取模块102用于获取源图像和目标图像。源图像与目标图像属于不同图像类别,具体地,源图像属于第一图像类别,目标图像属于第二图像类别。对抗补丁生成***100的目标就是根据源图像和目标图像生成对抗补丁,在目标图像上使用了该对抗补丁后能够“欺骗”机器学习模型,让模型把原本属于第二图像类别的目标图像识别为属于第一图像类别。在一些实施例中,获取模块102 可以从对抗补丁生成***100中获取源图像和目标图像,也可以从***100的外部存储设备中获取,或通过网络获取。有关源图像和目标图像的更多内容可以参见图2及其描述。
补丁区域确定模块104用于确定补丁区域。补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小。对抗补丁可以是具有对抗攻击功能的一小块图像,对抗补丁由补丁区域来限定,具有特定的位置和大小。在一些实施例中,源图像与目标图像被放在同一坐标系下进行处理,补丁区域确定模块104可以通过限定坐标范围来确定补丁区域。通过在目标图像上“贴上”对抗补丁,可以使机器学习模型对目标图像所属类别产生误判。有关确定补丁区域的更多内容可以参见图2及其描述。
对抗补丁确定模块106用于确定对抗补丁。具体地,对抗补丁确定模块 106可以基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别。对抗补丁确定模块106可以多次改变补丁区域的图像信息(例如像素信息)以更新对抗补丁,其中每更新一次对抗补丁,都会通过机器学习模型对使用了对抗补丁的目标图像进行识别。当识别出使用了对抗补丁的目标图像属于源图像所属图像类别时(即成功地“欺骗”了机器学习模型,使其做出误判),则停止更新补丁区域。反之则继续更新对抗补丁。在一些实施例中,为了更新对抗补丁,还需要对源图像进行更新,以找到靠近机器学习模型的决策边界的图像。有关确定对抗补丁的更多内容可以参见图2及其描述。
模型训练模块108用于使用所述对抗样本对所述机器学习模型对抗训练,得到目标模型。可以将第二图像类别确定为所述对抗样本的标签,然后以所述对抗样本为输入,以所述标签为正确标准,对模型进行训练,得到目标模型。
应当理解,图1所示的***及其模块可以利用各种方式来实现。例如,在一些实施例中,***及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和***可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本申请的***及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于候选项显示、确定***及其模块的描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该***的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子***与其他模块连接。例如,在一些实施例中,图1中披露的获取模块102、补丁区域确定模块104、对抗补丁确定模块106和模型训练模块108可以是一个***中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。又例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本申请的保护范围之内。
图2是根据本申请一些实施例所示的一种对抗补丁生成方法的示例性流程图。该流程200可以由图1所示的***100实现。该流程200具体包括:
步骤202,获取源图像和目标图像,其中所述源图像属于第一图像类别,所述目标图像属于第二图像类别。具体地,步骤202可以由***100中的获取模块102执行。流程200的目的是为了根据源图像和目标图像生成对抗补丁,在目标图像上使用了该对抗补丁后能够“欺骗”机器学习模型,让模型把原本属于第二图像类别的目标图像识别为属于第一图像类别。例如,源图像可以是图像中包括有猫的图像,目标图像可以是包括有鱼的图像。源图像通过机器学习模型识别出的图像类别为猫类,目标图像识别出的图像类别为鱼类。现需要根据猫图像和鱼图像确定对抗补丁,使得在鱼图像上使用了对抗补丁后可以被机器学习模型识别为猫类。
在一些实施例中,所述源图像和目标图像可以由获取模块102从对抗补丁生成***100中获取,也可以从***100的外部存储设备中获取,或通过网络获取。所述源图像和目标图像可以具有相同尺寸,也可以具有不同尺寸。在一些实施例中,需要对所述源图像和目标图像进行预处理,例如将两张图像转换为相同尺寸、将两张图像放在同一坐标系下、对图像进行去噪、对图像进行图像增强等。
步骤204,确定补丁区域,所述补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小。具体地,步骤204可以由***100中的补丁区域确定模块104执行。
对抗补丁可以是具有对抗攻击功能的一小块图像,对抗补丁由补丁区域来限定,具有特定的位置和大小。在一些实施例中,源图像与目标图像被放在同一坐标系下进行处理,可以通过限定坐标范围来确定补丁区域。通过在目标图像上“贴上”对抗补丁,可以使机器学习模型对目标图像所属类别产生误判。例如,可以基于图4中的猫图像确定图5中的鱼图像的对抗补丁,贴上对抗补丁后的鱼图像在人眼看来仍属于鱼类,但能够“欺骗”机器学习模型,被模型误判为猫类。补丁区域的大小可以根据源图像和/或目标图像的大小确定。以图4中的猫图像为例,可以设置图像左上角的一小块区域402为补丁区域,从而猫图像中该补丁区域的一小块图像即为初始补丁,然后通过步骤206不断更新该初始补丁,得到最终的对抗补丁。
步骤206,基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别。具体地,步骤206可以由***100中的对抗补丁确定模块106执行。
多轮迭代确定对抗补丁可以是多次改变补丁区域的图像信息(例如像素信息)以更新对抗补丁,其中每更新一次对抗补丁,都会通过机器学习模型对使用了对抗补丁的目标图像进行识别。当识别出使用了对抗补丁的目标图像属于源图像所属图像类别时(即成功地“欺骗”了机器学习模型,使其做出误判),则停止更新补丁区域。反之则继续更新对抗补丁。在一些实施例中,为了更新对抗补丁,还需要对源图像进行更新,以找到靠近机器学习模型的决策边界的图像。
以源图像为猫图像、目标图像为鱼图像为例,如步骤204中所述,确定了猫图像左上角的一小块图像为初始补丁。将该初始补丁粘贴到鱼图像的左上角后用机器学习模型进行识别,识别结果仍属于鱼类,则对初始补丁进行更新,再将更新后的补丁粘贴到鱼图像的左上角后用机器学习模型进行识别,如果识别结果属于鱼类,则继续更新补丁,重复以上操作,直到粘贴了补丁的鱼图像被机器学习模型识别为属于猫类为止,此时粘贴了补丁的鱼图像即可作为对抗样本使机器学习模型做出误判。为了更新对抗补丁,还需要对猫图像进行更新,以找到靠近机器学习模型的决策边界的图像。对抗补丁可通过打印、剪裁等方式获取出实际图片,将实际图片通过胶水等粘贴工具粘贴至目标图像上得到对抗样本。有关通过多轮迭代确定对抗补丁的更多内容可以参见图3及其描述。
在一些实施例中,以上生成对抗补丁的方法所针对的机器学习模型为内部结构未知的模型。例如,只了解到机器学习模型的功能,尚未了解机器学习模型内部具体的软件编程架构及内容。对此类机器学习模型进行的对抗攻击称之为黑盒攻击。从上文可以看出,本说明书中描述的生成对抗补丁的方法并不需要预先知道模型的内部结构,因此可以有效地用于黑盒攻击。需要注意的是,以上生成对抗补丁的方法也可针对内部结构已知的模型,即用于白盒攻击。
步骤208,使用所述对抗样本对所述机器学习模型进行对抗训练,得到目标模型。具体地,步骤208可以由模型训练模块108执行。可以将第二图像类别确定为所述对抗样本的标签,然后以所述对抗样本为输入,以所述标签为正确标准,对模型进行对抗训练,得到目标模型。如此得到的目标模型可以正确识别对抗样本所属类别,不易受到干扰,具有较强的鲁棒性。
在本说明书中的一个或多个实施例中,机器学习模型可以用于识别人脸图像。具体地,源图像为第一用户的人脸图像,目标图像为第二用户的人脸图像。用对抗补丁处理第二用户的人脸图像后得到的对抗样本能够被机器学习模型识别为第一用户,使第一用户的个人数据被盗用。个人数据可以是个人在互联网中的个人信息,如个人资料信息以及个人储蓄信息等。例如,基于第一用户的人脸图像获取部分图像区域作为对抗补丁,将该对抗补丁粘贴至第二用户的人脸图像中得到对抗样本,该对抗样本能够被机器学习模型识别成第一用户,以使通过该对抗样本盗取第一用户的个人资料信息以及个人储蓄信息等。使用对抗样本对机器学习模型进行对抗重训练,可以改进机器学习模型的内部参数,防止将具有第一用户人脸图像对抗补丁的第二用户人脸图像识别成第一用户,从而增强机器学习模型的鲁棒性。
图3是根据本申请一些实施例所示的对抗补丁生成方法的示例性流程图。具体地,该流程300为图2所示流程200中步骤206的具体实施例。
步骤302,根据所述源图像和所述补丁区域确定初始对抗补丁。
可以将源图像中对应于补丁区域的一块图像确定为初始对抗补丁。以图4 中的猫图像为例,预设的补丁区域为图像左上角,则可以将猫图像左上角的一小块图像402确定为初始对抗补丁。
步骤304,将所述源图像作为当前源图像,将所述初始对抗补丁作为当前对抗补丁。该步骤后开始进行迭代以确定对抗补丁。
步骤306,用当前对抗补丁替换当前源图像中的相应区域,用当前对抗补丁替换所述目标图像中的相应区域。
替换是指将当前源图像或目标图像中相应区域的像素值变成当前对抗补丁的像素值,所述相应区域为图像中对应于补丁区域的区域。为了方便描述,下文中用Xi表示当前源图像,即更新了i次后的源图像(X0表示源图像),Y表示目标图像,Pi表示当前对抗补丁,即更新了i次后的对抗补丁(P0表示初始对抗补丁),Mask函数表示替换操作。相应地,用当前对抗补丁Pi替换当前源图像Xi中的相应区域的函数表示为Mask(Xi,Pi),用当前对抗补丁Pi替换所述目标图像Y中的相应区域的函数表示为Mask(Y,Pi)。
需要注意的是,在第一轮迭代中,由于初始对抗补丁P0就是原始源图像 X0的一部分,因此用当前对抗补丁替换当前源图像中的相应区域后得到的图像实际上就是原始的源图像。可见,在第一轮迭代中,可以省略用当前对抗补丁替换当前源图像中的相应区域这一操作,而当进入第二轮迭代后,由于当前源图像和当前对抗补丁分别在步骤306和步骤308中被更新,因此这一操作不能再被省略。
步骤308,对用当前对抗补丁替换了相应区域后的当前源图像和用当前对抗补丁替换了相应区域后的目标图像进行二分查找,以找到靠近所述机器学习模型的决策边界且被识别为属于所述第一图像类别的图像,根据所述找到的图像更新当前源图像。
二分查找是一种具有折半查找性质的快速查找方法。决策边界是机器学习模型将图像识别成第一图像类别与第二图像类别的边界,决策边界一侧的所有图像属于为第一图像类别,决策边界另一侧的所有图像属于第二图像类别。下面具体说明如何进行二分查找以找到靠近决策边界且属于第一图像类别的图像。
在一轮迭代的过程中,当前源图像为Xi,当前对抗补丁为Pi,用当前对抗补丁替换了当前源图像相应区域后得到的图像为Mask(Xi,Pi),目标图像为Y,用当前对抗补丁替换了目标图像相应区域后得到的图像为Mask(Y,Pi),对 Mask(Xi,Pi)和Mask(Y,Pi)进行二分查找,具体为将Mask(Xi,Pi)和Mask(Y,Pi)对应各像素点相加后除以二,得到图像判断该图像属于第一图像类别还是第二图像类别。如果该图像属于第一图像类别,则将该图像与Mask(Y, Pi)各像素点相加后除以二,得到新的图像;如果该图像属于第二图像类别,则将 Mask(Xi,Pi)与该图像各像素点相加后除以二,得到新的图像。然后再对新的图像进行如上操作,如此重复,直到找到靠近机器学习模型决策边界的一张图像,并根据找到的这张图像将当前源图像更新为Xi+1。可以理解,每张图像可表现为空间中的一个向量,决策边界是同一空间中的超曲面,为了判断图像是否靠近决策边界,可以确定图像对应的向量与决策边界对应的超曲面之间的距离,当该距离小于设定阈值时,可确定图像靠近决策边界。
步骤310,判断用当前对抗补丁替换了相应区域后的目标图像是否被所述机器学习模型识别为属于所述第一图像类别。
可以理解,流程300的目的是确定对抗补丁并生成对抗样本,使对抗样本能够被机器学习模型误判。因此,当原本属于第二图像类别的目标图像经过当前对抗补丁处理后被机器学习模型误判为属于第一图像类别时,则进行步骤314 ,将当前对抗补丁确定为最终的对抗补丁;否则,进行步骤312 ,更新补丁,继续下一轮迭代。
步骤312,如果否,则确定损失函数值相对于所述补丁区域的梯度,以更新当前对抗补丁,并返回步骤306,进行下一轮迭代。
损失函数值用来衡量模型的输出值与真实值之间的差距,损失函数与模型的参数相关。在机器学习模型的训练中,目标是为了优化模型参数,使损失函数值最小化。梯度用来确定调整模型参数的方向,使得模型参数沿梯度方向调整后,损失函数的值达到最小。而在本说明书中是要得到对抗样本,需要保持模型参数不变,此时对当前对抗补丁的每个像素值计算梯度并更新,可使损失函数的值达到最小。
在一些实施例中,可以通过蒙特卡罗法估计损失函数相对于补丁区域各个像素点的梯度。梯度确定后,可将该梯度与设定步长相乘得到梯度下降值,再将当前对抗补丁Pi中相应的像素点调节该梯度下降值,从而得到新的对抗补丁 Pi+1。当返回步骤306后,该更新后的当前对抗补丁Pi+1以及步骤308中更新后的当前源图像Pi+1可用于新一轮的迭代。
步骤314,如果是,则将当前对抗补丁确定为最终的对抗补丁。
当用对抗补丁替换了相应区域后的目标图像被机器学习模型识别为属于第一图像类别时,则将当前对抗补丁确定为最终的对抗补丁。此外,本轮迭代中用对抗补丁替换了相应区域后的目标图像可作为最终的对抗样本,用于对机器学习模型进行对抗重训练,以优化模型参数,提高模型鲁棒性。为方便理解,下面以图4至图6为例对以上对抗补丁生成方法进行描述。
图4为一张猫图像,其能够被机器学习模型识别为属于猫类。图5为一张鱼图像,其能够被机器学习模型识别为属于鱼类。现在的目标是根据这两张图像确定一个对抗补丁,使鱼图像贴上该对抗补丁后能够被模型识别为猫类。为了实现该目标,首先确定补丁区域为图像左上角。相应地,猫图像中左上角的一小块图像作为初始对抗补丁402,以该初始对抗补丁为当前对抗补丁、以猫图像为当前源图像参与第一轮迭代。在第一轮迭代中,还需要用当前对抗补丁替换鱼图像的左上角。接着对当前源图像与左上角贴上了初始对抗补丁的鱼图像进行二分查找,找到靠近机器学习模型的决策边界且属于猫类的一张图像,将当前源图像更新为该图像。然后对当前对抗补丁进行更新,具体可以采用蒙特卡洛法估计损失函数相对于当前对抗补丁中各像素点的梯度,用梯度乘以预设步长后可得到梯度下降值,将相应像素点调整该梯度下降值,即可得到更新后的当前对抗补丁。随后进入第二轮迭代,本轮迭代中用到的当前源图像和当前对抗补丁在上一轮中均被更新过。在第二轮迭代中,首先用新的当前对抗补丁替换新的当前源图像的左上角和鱼图像的左上角,接着对左上角被当前对抗补丁替换后的当前源图像和鱼图像进行二分查找,找到靠近决策边界且属于猫类的一张图像,将当前源图像更新为该图像。然后对当前对抗补丁进行更新。值得注意的是,在每轮迭代中还需要判断左上角贴上了当前对抗补丁的鱼图像是否能成功“欺骗”机器学习模型,被模型识别为猫类,当能够成功“欺骗”机器学习模型时,将当前对抗补丁确定为最终的对抗补丁,贴上了该对抗补丁的鱼图像即为对抗样本。
图6展示了多轮迭代过程中猫图像的变化,其中的4张小图分别为第19 轮、第1348轮、第3504轮以及第6496轮迭代中的猫图像。从图中可以看出,随着迭代轮次的增加,原本的猫图像中的猫逐级消失,而鱼逐级显现。在最后的第6496轮迭代中,用最新的对抗补丁替换鱼图像的左上角,便可得到对抗样本,该对抗样本在人眼看来仍属于鱼类,但却能够被机器学习模型识别为猫类。
需要说明的是,以上猫图像和鱼图像仅用来举例。在一些实施例中,也可以用第一用户和第二用户的人脸图像来执行类似操作。具体地,可以根据两个用户的人脸图像确定一个对抗补丁,该对抗补丁用于第二用户的人脸图像后,可使得机器学习模型将第二用户的人脸图像识别为第一用户,从而盗取第一用户的个人数据。
应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本申请的适用范围。对于本领域技术人员来说,在本申请的指导下可以对流程300进行各种修正和改变。然而,这些修正和改变仍在本申请的范围之内。例如,步骤310可以在步骤308之前执行。
本申请实施例可能带来的有益效果包括但不限于:(1)借鉴了对抗补丁思想,将生成的对抗样本中的扰动限制在较小的一块补丁区域中,使得对抗攻击能在现实世界中得到运用,批量生成有实际应用价值的对抗样本,基于对抗样本使图像识别***进行对抗重训练,增强图像识别***的鲁棒性;(2)在图像信息更改的基础上对补丁区域进行更新,使得生成的对抗补丁不限于可以对内部结构已知的模型进行攻击,还可以对内部结构未知的模型进行攻击。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“***”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行***、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、 C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、 Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby 和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网 (WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的***组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的***。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本申请引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本申请作为参考。与本申请内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本申请附属材料中的描述、定义、和/或术语的使用与本申请所述内容有不一致或冲突的地方,以本申请的描述、定义和/或术语的使用为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。
Claims (12)
1.一种模型确定方法,包括:
获取源图像和目标图像,其中所述源图像属于第一图像类别,所述目标图像属于第二图像类别;
确定补丁区域,所述补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小;
基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别;
使用所述对抗样本对所述机器学习模型进行对抗训练,得到目标模型。
2.根据权利要求1所述的方法,所述基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,包括:
根据所述源图像和所述补丁区域确定初始对抗补丁;
将所述源图像作为当前源图像,将所述初始对抗补丁作为当前对抗补丁;
用当前对抗补丁替换当前源图像中的相应区域;
用当前对抗补丁替换所述目标图像中的相应区域;
对用当前对抗补丁替换了相应区域后的当前源图像和用当前对抗补丁替换了相应区域后的目标图像进行二分查找,以找到靠近所述机器学习模型的决策边界且被识别为属于所述第一图像类别的图像,根据所述找到的图像更新当前源图像;
判断用当前对抗补丁替换了相应区域后的目标图像是否被所述机器学习模型识别为属于所述第一图像类别;
如果否,则确定损失函数值相对于所述补丁区域各像素的梯度,以更新当前对抗补丁,并返回所述用当前对抗补丁替换当前源图像中相应区域的步骤,进行下一轮迭代;
如果是,则将当前对抗补丁确定为最终的对抗补丁。
3.根据权利要求2所述的方法,所述确定损失函数值相对于所述补丁区域各像素的梯度,包括:
通过蒙特卡罗法,估计损失函数相对于所述补丁区域各像素的梯度。
4.根据权利要求1所述的方法,所述机器学习模型为内部结构未知的模型。
5.根据权利要求1所述的方法,所述机器学习模型用于识别人脸图像;
所述源图像为第一用户的人脸图像;
所述目标图像为第二用户的人脸图像;
用所述对抗补丁处理所述第二用户的人脸图像后得到的对抗样本能够被所述机器学习模型识别为所述第一用户,使所述第一用户的个人数据被盗用。
6.一种模型确定***,包括:
获取模块,用于获取源图像和目标图像,其中所述源图像属于第一图像类别,所述目标图像属于第二图像类别;
补丁区域确定模块,用于确定补丁区域,所述补丁区域用于限定对抗补丁被用于所述源图像和所述目标图像中的位置和大小;
对抗补丁确定模块,用于基于所述源图像、所述目标图像和所述补丁区域,通过多轮迭代确定对抗补丁,其中所述对抗补丁被用于所述目标图像后得到的对抗样本能够被机器学习模型识别为属于所述第一图像类别;
模型训练模块,用于使用所述对抗样本对所述机器学习模型进行对抗训练,得到目标模型。
7.根据权利要求6所述的***,所述对抗补丁确定模块还用于:
根据所述源图像和所述补丁区域确定初始对抗补丁;
将所述源图像作为当前源图像,将所述初始对抗补丁作为当前对抗补丁;
用当前对抗补丁替换当前源图像中的相应区域;
用当前对抗补丁替换所述目标图像中的相应区域;
对用当前对抗补丁替换了相应区域后的当前源图像和用当前对抗补丁替换了相应区域后的目标图像进行二分查找,以找到靠近所述机器学习模型的决策边界且被识别为属于所述第一图像类别的图像,根据所述找到的图像更新当前源图像;
判断用当前对抗补丁替换了相应区域后的目标图像是否被所述机器学习模型识别为属于所述第一图像类别;
如果否,则确定损失函数值相对于所述补丁区域各像素的梯度,以更新当前对抗补丁,并返回所述用当前对抗补丁替换当前源图像中相应区域的步骤,进行下一轮迭代;
如果是,则将当前对抗补丁确定为最终的对抗补丁。
8.根据权利要求7所述的***,所述对抗补丁确定模块还用于:
通过蒙特卡罗法,估计损失函数相对于所述补丁区域各像素的梯度。
9.根据权利要求6所述的***,所述机器学习模型为内部结构未知的模型。
10.根据权利要求6所述的***,所述机器学习模型用于识别人脸图像;
所述源图像为第一用户的人脸图像;
所述目标图像为第二用户的人脸图像;
用所述对抗补丁处理所述第二用户的人脸图像后得到的对抗样本能够被所述机器学习模型识别为所述第一用户,使所述第一用户的个人数据被盗用。
11.一种模型确定装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现如权利要求1~5任一项所述的方法。
12.一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如权利要求1~5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911273135.4A CN111027628B (zh) | 2019-12-12 | 2019-12-12 | 一种模型确定方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911273135.4A CN111027628B (zh) | 2019-12-12 | 2019-12-12 | 一种模型确定方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111027628A CN111027628A (zh) | 2020-04-17 |
CN111027628B true CN111027628B (zh) | 2022-03-11 |
Family
ID=70206168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911273135.4A Active CN111027628B (zh) | 2019-12-12 | 2019-12-12 | 一种模型确定方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111027628B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111738217B (zh) * | 2020-07-24 | 2020-11-13 | 支付宝(杭州)信息技术有限公司 | 生成人脸对抗补丁的方法和装置 |
CN111626925B (zh) * | 2020-07-24 | 2020-12-01 | 支付宝(杭州)信息技术有限公司 | 一种对抗补丁的生成方法及装置 |
CN112364745B (zh) * | 2020-11-04 | 2021-09-14 | 北京瑞莱智慧科技有限公司 | 一种对抗样本的生成方法、装置及电子设备 |
CN112241790B (zh) * | 2020-12-16 | 2021-03-30 | 北京智源人工智能研究院 | 小型对抗补丁生成方法及装置 |
CN112989340A (zh) * | 2021-02-26 | 2021-06-18 | 北京瑞莱智慧科技有限公司 | 模型的后门检测方法、装置、介质和计算设备 |
CN113689338B (zh) * | 2021-09-08 | 2024-03-22 | 北京邮电大学 | 一种缩放鲁棒性对抗补丁的生成方法 |
CN113792806A (zh) * | 2021-09-17 | 2021-12-14 | 中南大学 | 一种对抗补丁生成方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214327A (zh) * | 2018-08-29 | 2019-01-15 | 浙江工业大学 | 一种基于pso的反人脸识别方法 |
CN109961145A (zh) * | 2018-12-21 | 2019-07-02 | 北京理工大学 | 一种针对图像识别模型分类边界敏感的对抗样本生成方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10614557B2 (en) * | 2017-10-16 | 2020-04-07 | Adobe Inc. | Digital image completion using deep learning |
KR20190136893A (ko) * | 2018-05-30 | 2019-12-10 | 카네기 멜론 유니버시티 | 강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램 |
-
2019
- 2019-12-12 CN CN201911273135.4A patent/CN111027628B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214327A (zh) * | 2018-08-29 | 2019-01-15 | 浙江工业大学 | 一种基于pso的反人脸识别方法 |
CN109961145A (zh) * | 2018-12-21 | 2019-07-02 | 北京理工大学 | 一种针对图像识别模型分类边界敏感的对抗样本生成方法 |
Non-Patent Citations (3)
Title |
---|
《Adversarial patch》;Brown TB,et al;《arXiv:1712.09665》;20171231;全文 * |
《Guessing Smart:Biased Sampling for Efficient Black-Box Adversarial Attacks》;Thomas Brunner,et al;《Proceedings of the IEEE/CVF International Conference on Computer Vision》;20191031;第4958-4966页 * |
《面向智能驾驶视觉感知的对抗样本攻击与防御方法综述》;杨弋鋆,等;《南京信息工程大学学报(自然科学版)》;20191130;第11卷(第6期);第651-659页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111027628A (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111027628B (zh) | 一种模型确定方法和*** | |
CN110378235B (zh) | 一种模糊人脸图像识别方法、装置及终端设备 | |
WO2021027336A1 (zh) | 基于***和签名的身份验证方法、装置和计算机设备 | |
CN108427927B (zh) | 目标再识别方法和装置、电子设备、程序和存储介质 | |
CN108229301B (zh) | 眼睑线检测方法、装置和电子设备 | |
CN112052781A (zh) | 特征提取模型训练方法、人脸识别方法、装置、设备及介质 | |
CN108399386A (zh) | 饼图中的信息提取方法及装置 | |
CN104915972A (zh) | 图像处理装置、图像处理方法以及程序 | |
CN111310705A (zh) | 图像识别方法、装置、计算机设备及存储介质 | |
CN110781976B (zh) | 训练图像的扩充方法、训练方法及相关装置 | |
CN112966685B (zh) | 用于场景文本识别的攻击网络训练方法、装置及相关设备 | |
CN111340143A (zh) | 一种获取对抗样本生成模型的方法和*** | |
CN110705531B (zh) | 缺失字符检测、缺失字符检测模型的建立方法及装置 | |
CN110826581B (zh) | 一种动物数量识别方法、装置、介质及电子设备 | |
CN111046394A (zh) | 一种基于对抗样本增强模型抗攻击能力的方法和*** | |
CN110765843B (zh) | 人脸验证方法、装置、计算机设备及存储介质 | |
CN107844742A (zh) | 人脸图像眼镜去除方法、装置及存储介质 | |
CN113986561B (zh) | 人工智能任务处理方法、装置、电子设备及可读存储介质 | |
CN110969046B (zh) | 人脸识别方法、设备及计算机可读存储介质 | |
WO2021232670A1 (zh) | 一种pcb元件识别方法及装置 | |
CN111222588A (zh) | 一种后门样本检测方法、***及装置 | |
CN113919497A (zh) | 针对连续学习能力***的基于特征操纵的攻击和防御方法 | |
US11335128B2 (en) | Methods and systems for evaluating a face recognition system using a face mountable device | |
CN111340241B (zh) | 一种数据处理方法、***及装置 | |
EP3671635A1 (en) | Curvilinear object segmentation with noise priors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40028396 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |