CN111340143A - 一种获取对抗样本生成模型的方法和系统 - Google Patents
一种获取对抗样本生成模型的方法和系统 Download PDFInfo
- Publication number
- CN111340143A CN111340143A CN202010409787.2A CN202010409787A CN111340143A CN 111340143 A CN111340143 A CN 111340143A CN 202010409787 A CN202010409787 A CN 202010409787A CN 111340143 A CN111340143 A CN 111340143A
- Authority
- CN
- China
- Prior art keywords
- sample
- training
- model
- generation model
- confrontation
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012549 training Methods 0.000 claims abstract description 161
- 238000010276 construction Methods 0.000 claims abstract description 79
- 230000000875 corresponding effect Effects 0.000 claims abstract description 56
- 238000012545 processing Methods 0.000 claims abstract description 54
- 230000002596 correlated effect Effects 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims description 31
- 239000013598 vector Substances 0.000 claims description 11
- 230000006870 function Effects 0.000 description 42
- 238000010586 diagram Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 238000013145 classification model Methods 0.000 description 6
- 230000008451 emotion Effects 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本说明书实施例公开了一种获取对抗样本生成模型的方法和系统,所述方法包括:获取多个训练样本;对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型:输入对抗样本生成模型,以获取该训练样本相对应的构造样本;将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值;基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数;所述第一损失函数与所述差异以及所述惩罚值均正相关;调节对抗样本生成模型的参数,以减小第一损失函数。
Description
技术领域
本说明书涉及技术安全领域,特别涉及一种获取对抗样本生成模型的方法和系统。
背景技术
近年来,网络技术的快速发展催生了黑盒攻击的出现。黑盒攻击可以在不知道被攻击方内部数据处理流程或算法的前提下影响被攻击方对数据做出正确处理或判断,从而对被攻击方造成损害。例如,在网络社区中发言时,发言的具体内容在发布前需要进行审核以确定是否包含违规内容(例如,通过用于分类的机器学习模型确定发言的具体内容是否合规)。而黑盒攻击可以规避这种审核,让违规的内容在被模型分类时被分类为合规这一类。这样会极大的损害网络社区的正常环境。而防止黑盒攻击的一种方式为通过用对抗样本训练模型,以使被训练后的模型具有防止黑盒攻击的功能,由此,有效的生成对抗样本尤为重要。
发明内容
本说明书实施例之一提供一种获取对抗样本生成模型的方法。所述方法包括:一种获取对抗样本生成模型的方法,其中,所述方法包括:获取多个训练样本;对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型:输入对抗样本生成模型,以获取该训练样本相对应的构造样本;将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值;基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数;所述第一损失函数与所述差异以及所述惩罚值均正相关;调节对抗样本生成模型的参数,以减小第一损失函数。
本说明书实施例之一提供一种对抗样本生成方法,其中,所述方法包括:获取原始样本;利用对抗样本生成模型处理所述原始样本,得到构造样本,并将所述构造样本确定为对应于原始样本的对抗样本,其中,所述对抗样本生成模型基于获取对抗样本生成模型的方法确定。
本说明书实施例之一提供一种获取对抗样本生成模型的系统,所述系统包括:第一获取模块,用于获取多个训练样本;第一处理模块,用于对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型:输入对抗样本生成模型,以获取该训练样本相对应的构造样本;将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值;基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数;调节对抗样本生成模型的参数,以减小第一损失函数。
本说明书实施例之一提供一种对抗样本生成系统,其中,所述系统包括:第二获取模块,用于获取原始样本;第二处理模块,用于利用对抗样本生成模型处理所述原始样本,得到构造样本,并将所述构造样本确定为对应于原始样本的对抗样本,其中,所述对抗样本生成模型基于获取对抗样本生成模型的方法确定。
本说明书实施例之一提供一种获取对抗样本生成模型的装置,包括处理器,所述处理器用于执行获取对抗样本生成模型的方法。
本说明书实施例之一提供一种对抗样本生成装置,包括处理器,所述处理器用于执行对抗样本生成方法。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的一种获取对抗样本生成模型的方法的示例性流程图;
图2是根据本说明书一些实施例所示另一种获取对抗样本生成模型的方法的示例性流程图;
图3是根据本说明书一些实施例所示的对抗样本生成方法的示例性流程图;
图4是根据本说明书一些实施例所示的对抗样本生成模型获取系统的模块图;以及
图5是根据本说明书一些实施例所示的对抗样本生成系统的模块图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
出于说明的目的,假设在一个分类任务中,给定一个模型,其表示模型可以将样本分类为。若通过对样本进行微小的改变而得到样本可以使模型对样本的分类与对样本的分类不一致,即模型,并且样本对于用户来说真实类别依然为,那么样本就是样本的一个对抗样本,它成功攻击了模型。
在模型受到攻击时,则会对被攻击者的利益造成损害,例如在大型网络社区中,需要使用机器学习模型对用户发布的内容进行审核以确定是否包含违规内容(例如,通过用于分类的机器模型确定发布的具体内容是否合规)。若有攻击者产生对抗样本,此时模型会将对抗样本分类为正常内容,但对抗样本实际为违规内容,由此使得网络社区遭到损害。由此对抗样本起着重要的作用,倘若能提前生成对抗样本,即可提前发现模型的弱点,同时使用这样对抗样本训练模型,可以使模型能够正确分类对抗样本,依此抵御外界的攻击。
一般来说对模型进行对抗攻击有两种方式,一种是提前了解要攻击的模型的结构和参数信息,可以利用模型的结构及参数信息来生成对抗样本,这种攻击称为白盒攻击。另一种是不了解模型的结果和参数信息,只能得到模型对输入的分类结果,这种攻击称为黑盒攻击。现实中的攻击多数为黑盒攻击,例如一个在线情感分类系统,可以通过网页输入文本并得到文本的情感分类结果,对于这样的系统的攻击为一种黑盒攻击。由于可使用来生成对抗样本的信息较少,黑盒攻击的难度远高于白盒攻击。
在一些实施例中,对抗样本的生成主要是通过人工参与,例如,通过人工进行样本中的某部分数据进行更改、替换。这种方法需要较多的人工参与,生成对抗样本效率低,且人工替换后攻击成功率不高。
图1是根据本说明书一些实施例所示的一种获取对抗样本生成模型的方法的示例性流程图。在一些实施例中,流程100可以由对抗样本生成模型获取系统400,或任意一个处理设备实现。例如,流程100可以以程序或指令的形式存储在存储设备中,所述程序或指令在被执行时,可以实现流程100。如图1所示,流程100可以包括以下步骤:
步骤102,获取多个训练样本。该步骤可由第一获取模块410执行。
在一些实施例中,所述训练样本可以是用于模型训练的样本,例如,训练对抗样本生成模型。每一个样本对应有一个标签。例如,假定所述对抗样本生成模型用于生成分类模型的对抗样本,则所述训练样本可以具有一个分类标签。训练样本的标签可以预先确定的,例如,通过标注模型,或通过人工进行标签标注。基于所生成的对抗样本的在后续参与训练的模型的不同,例如,文字分类模型或图像分类模型,所述训练样本可以包括多种形式的数据,例如,文本数据、图片训练数据、音频训练数据、视频数据等。
在一些实施例中,所述训练样本可以是预先存储在数据库(例如,云端)和/或存储设备(例如,对抗样本生成模型获取系统400的自带存储器或外接存储器)中的。第一获取模块410可以通过网络与数据库和/或存储设备通信后获取到多个训练样本。
步骤104,利用多个训练样本对所述对抗样本生成模型进行预训练,以减少所述对抗样本生成模型输出的构造样本与其对应的训练样本之间的差异。该步骤可由预训练模块420执行。
对抗样本生成模型可以根据输入的训练样本,得到与训练样本相似的构造样本作为候选的对抗样本。其中,构造样本与对应的训练样本之间的差异(两者的区别或不同点)可以通过预训练损失函数进行量化。模型训练的一个目的是最小化预训练损失函数。基于预训练损失函数得到的量化值可以作为调节对抗样本生成模型中的参数(例如,学习率、迭代次数、批次大小等参数)的依据。通过不断的训练:样本输入-构造样本生成-损失函数计算-反向调节参数,这一系列操作,可以达到优化模型参数以降低预训练损失函数的值的目的。这样,通过预训练得的对抗样本生成模型可以获取到与训练样本较为相似的构造样本。在一些实施例中,所述训练样本可以是文本样本,所述对抗样本生成模型可以是任意的序列到序列模型(例如,RNN、transformer等)。
在一些实施例中,通过对对抗样本生成模型进行预训练,可以使对抗样本生成模型能够生成与输入的训练样本极为相似的构造样本。仅出于说明的目的,对对抗样本生成模型的预训练如下说明:
利用多个训练样本中的每一个训练样本对对抗样本生成模型进行预训练。每一个训练样本在对抗样本生成模型中首次输入,得到与其对应的构造样本,以及用于衡量输入的训练样本与构造样本之间差异的预训练损失函数。以降低预训练损失函数为目的的对对抗样本生成模型参数进行调节,调节后将该训练样本再次输入至对抗样本生成模型,获取此次与训练样本差异更小的构造样本。再多次以降低预训练损失函数为目的的对模型参数进行更新迭代,直至迭代次数到达预设阈值或预训练损失函数达到一个预设阈值。在多个训练样本对抗样本生成模型预训练结束时,可以通过预训练好的对抗样本模型得到与输入训练样本极为相似的构造样本。
在一些实施例中,当训练样本为文本训练样本,对抗样本生成模型为序列到序列模型时,对抗样本生成模型的预训练损失函数可以通过文本构造样本对应的向量与文本训练样本对应的向量表示之间的距离表示(例如,欧几里得距离、曼哈顿距离、切比雪夫距离等)。
其中x为文本训练序列中包括的所有单词向量组成的矩阵,x’为文本构造序列中包括的所有单词向量组成的矩阵。例如,一个训练文本序列中包括有10个单词,将其中的10个单词转成词向量(可以通过词袋模型、词向量模型获得等),每个单词的词向量为100维,则可以形成关于训练文本序列的10*100的矩阵。同理可得关于构造文本序列的矩阵。再将训练文本序列对应的10*100的矩阵与构造文本序列对应的矩阵进行相减后再平方,即可得到对抗样本生成模型的损失函数。
当对抗样本生成模型的预训练损失函数越小时,则输出的构造样本与其对应的训练样本差异越小。在一些实施例中,仅通过对抗样本生成模型时,只可以得到与输入的训练样本十分接近、甚至与其完全相同的构造样本,但无法决定生成构造样本的类别。作为候选对抗样本的构造样本在与其对应的训练样本十分接近的前提下,还需要与训练样本的类别不同,方可作为最合适的对抗样本。
在一些实施例中,步骤204后可以行进至流程B,在流程B里对对样样本生成模型进行进一步参数调整。关于流程B的详细描述请参考图2(流程200)。
应当注意的是,上述有关流程100的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程100进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
图2是根据本说明书一些实施例所示的另一种获取对抗样本生成模型的方法的示例性流程图。在一些实施例中,流程200可以由对抗样本生成模型获取系统400,或任意一个处理设备实现。例如,流程200可以以程序或指令的形式存储在存储设备中,所述程序或指令在被执行时,可以实现流程200。
如图2所示,流程200可以包括以下步骤。
步骤202,将训练样本输入对抗样本生成模型,以获取该训练样本相对应的构造样本。
关于训练样本详细描述请参照图1中的相关描述。在一些实施例中,对抗样本生成模型可以是一个初始的序列到序列模型,也可以是经过流程100预训练得到的模型。
作为示例,当训练样本为文本样本,对抗样本生成模型为序列到序列模型时,构造样本可以是根据输入序列到序列模型的训练文本序列,输出的构造文本序列。例如,输入序列到序列模型的文本训练样本为“我很高兴”,文本情感类别为“积极”,从序列到序列模型输出的文本构造样本可以为“我不是很高兴”,情感类别为“普通”、“我很开心”,情感类别为“积极”、“我很扫兴”,情感类别为“消极”等,其中文本构造样本的输出情况取决于序列到序列模型的参数。
步骤204,将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值。
在一些实施例中,所述目标模型可以是需要使用生成的对抗样本进行训练或攻击的模型。例如,云端中的任意一个训练好的分类模型,可以是由他人制作好上传至云端并对外提供数据分类服务的模型。所述目标模型可以用于对构造样本进行识别,获得对构造样本的处理判定。例如,假定目标模型是分类模型,则其可以输出对于对抗样本的类别判定,进而可以判断构造样本的类别(例如,类别判定)是否与其对应的训练样本的类别(例如,类别标签)相同。
在一些实施例中,所述处理结果可以是目标模型对构造样本的识别结果,可以通过处理结果判断构造样本是否可以“欺骗”目标模型。例如,当目标模型为分类模型时,在目标模型检验构造样本的类别与构造样本对应的训练样本类别不同时,则说明该构造样本可以“欺骗”该目标模型,符合对抗样本的标准。在该构造样本作为对抗样本时,对于该目标模型具有强的攻击性。在目标模型基于构造样本获得处理结果后,可以根据处理结果发送给对抗样本生成模型一个反馈结果,反馈结果可以说明依据对抗样本生成模型目前的参数产生的构造样本是否符合对抗样本的标准。
在一些实施例中,当目标模型对所述构造样本的处理结果与该目标模型对所述构造样本对应的训练样本的处理结果不一致时,反馈结果可以是正面的(即对抗样本生成模型生成的构造样本可以“欺骗”目标模型),否则反馈结果可以是负面的。
例如,训练样本x的类别为y,基于对抗样本生成模型的参数将训练样本x转换成构造样本x’。通过目标模型识别构造样本x’,得到类别y’,判断构造样本的类别y’是否与训练样本类别y相同,在y’≠y时,则说明该构造样本具备“欺骗”目标模型的能力,属于合格的对抗样本,则可以生成一个正面的反馈结果,比如利用n表示,n为大于或等于1的正整数。在y’=y时,则说明该构造样本不具备“欺骗”目标模型的能力,不属于合格的对抗样本,则可以生成一个负面的反馈结果,比如利用-n表示,n为大于或等于1的正整数。
在一些实施例中,当训练样本为文本训练样本,所述对抗样本生成模型可以为序列到序列模型,所述序列到序列模型还可以输文本构造样本为其对应的文本训练样本的对抗样本的概率(或置信度)。
文本构造样本与其对应的文本训练样本的对抗样本的概率,可以为文本构造样本的特征符合对抗样本特征的概率,在有了目标模型对构造样本的识别结果之后,可以基于识别结果判断文本构造样本为其对应的文本训练样本的对抗样本的概率是否正确。在目标模型对文本构造样本的识别结果与训练样本的标签不一致时,说明该文本构造样本为正确的,为此可以调节对抗样本生成模型的参数使得此文本构造样本对应的概率越大越好。在目标模型对文本构造样本的识别结果与训练样本的标签一致时,则说明对抗样本生成模型以目前参数生成的文本构造样本不佳,为此可以调节对抗样本生成模型的参数使得该文本构造样本对应的概率越小越好。因此,可以基于所述概率构造对抗样本生成模型的损失函数。
在一些实施例中,序列到序列模型可以对其输出序列中每一个单词确定一个概率,以此作为该单词的置信度。在一些实施例中,输出序列的单词的概率可以反映该单词与输入序列的相关度,且输出序列的每一个单词的概率都与前面单词的概率相关。序列到序列模型输出构造样本为其对应的训练样本的对抗样本的概率,可以通过序列到序列模型输出序列中的每一个单词的概率整合得到。例如,构造文本序列为“我很开心”,其中包括的单词有“我”、“很”、“开心”,“我”的概率为0.3,“很”的概率为0.6,“开心”的概率为0.8,对于每一个单词的概率进行平均或其他计算处理可以获得关于构造文本序列的概率。
在一些实施例中,可以基于所述反馈结果以及所述概率确定惩罚值。
其中,为根据目标模型对构造文本序列识别结果产生的反馈结果,例如,当y’≠y时,反馈结果为正面,=n,反之=-n。为序列到序列模型输出的构造样本x’的概率。在一些实施例中,当每个单词对应一个时,可以将每个单词的求,再相加,再与计算,即在一些实施例中,惩罚值还可以替换为以下公式:
步骤206,基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数。
在一些实施例中,第一损失函数可以是惩罚值+函数,即,第一损失函数与函数以及函数均为正相关。通过减小函数,进而获取到与输入的训练样本更为接近的构造样本,结合减小惩罚值,以提高对抗样本生成模型生成构造模型的准确率(样本类别),使得输出的构造样本与其对应的训练样本类别不同。
步骤208,调节对抗样本生成模型的参数,以减小第一损失函数。
对抗样本生成模型的参数既可以影响,构造样本与其对应的训练样本之间的差异,还可以影响构造样本与训练样本的类别(相同或不同)。可以通过调节对抗样本生成模型的参数减小惩罚值,以及函数,进而减小第一损失函数+。
在一些实施例中,每一个训练样本经过流程200的处理,都会调节一次对抗样本生成模型的参数,基于多个训练样本经过流程200的处理,对对抗样本生成模型的参数进行更新迭代,在对抗样本生成模型的参数更新迭代到达一定次数,或抵达一个阈值时,终止流程200,生成训练好的对抗样本生成模型。
应当注意的是,上述有关流程200的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程200进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。需要说明的是,步骤202中的抗样本生成模型可以是初始模型,也可以是经过流程100预训练得到的对抗样本生成模型。当步骤202使用的是初始模型时,可以理解,基于第一损失函数对对抗样本生成模型进行参数条件,依然能够获得与输入样本(或训练样本)近似,又能对目标模型起到攻击效果的对抗样本生成模型。
图3是根据本说明书一些实施例所示的对抗样本生成方法的示例性流程图。在一些实施例中,流程300可以由对抗样本生成系统500,或任意一个处理设备实现。例如,流程300可以以程序或指令的形式存储在存储设备中,所述程序或指令在被执行时,可以实现流程300。如图3所示,流程300可以包括以下步骤:
步骤302,获取原始样本。该步骤可由第二获取模块520执行。
原始样本可以是需要生成对抗样本的训练样本。原始样本可以为文字样本、图片样本、音频样本或视频样本等,原始样本可以具有属于自身的类别标签。在一些实施例中,原始样本可以从数据库或存储设备中获得,可以为存储在数据库或存储设备中的任意一个的文字样本、图片样本、音频样本或视频样本。
步骤304,利用对抗样本生成模型处理所述原始样本,得到构造样本,并将所述构造样本确定为对应于原始样本的对抗样本。该步骤可由第二处理模块530执行。
对抗样本生成模型可以是由流程100或流程200训练好(更新迭代后的模型参数)的对抗样本生成模型,训练好的对抗样本生成模型基于原始样本输出的构造样本时,具备较小数值的损失函数,使得构造样本与其对应的原始样本具有高相似度,且样本类别不同。该构造样本可以作为对应于原始样本的对抗样本,可以被利用结合原始样本以训练模型,使训练后的模型对于对抗样本的攻击具有一定的防御能力。
图4是根据本说明书一些实施例所示的对抗样本生成模型获取系统的模块图。
如图4所示,该对抗样本生成模型获取系统400可以包括第一获取模块410、预训练模块420和第一处理模块430。
第一获取模块410可以用于获取多个训练样本。所述训练样本可以是用于模型训练的样本,例如,训练对抗样本生成模型。每一个样本对应有一个标签。所述训练样本可以是预先存储在数据库(例如,云端)和/或存储设备(例如,对抗样本生成模型获取系统400的自带存储器或外接存储器)中的。第一获取模块410可以通过网络与数据库和/或存储设备通信后获取到多个训练样本。
预训练模块420可以利用多个训练样本对所述对抗样本生成模型进行预训练,以减少所述对抗样本生成模型输出的构造样本与其对应的训练样本之间的差异。对抗样本生成模型可以根据输入的训练样本,得到与训练样本相似的构造样本作为候选的对抗样本。其中,构造样本与对应的训练样本之间的差异(两者的区别或不同点)可以通过预训练损失函数进行量化。预训练模块420可以通过训练的达到最小化预训练损失函数的目的。预训练模块420可以基于预训练损失函数得到的量化值可以作为调节对抗样本生成模型中的参数(例如,学习率、迭代次数、批次大小等参数)的依据。通过不断的训练:样本输入-构造样本生成-损失函数计算-反向调节参数,这一系列操作,可以达到优化模型参数以降低预训练损失函数的值的目的。
第一处理模块430可以用于对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型。第一处理模块430可以输入对抗样本生成模型,以获取该训练样本相对应的构造样本。第一处理模块430还可以将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值。第一处理模块430还可以基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数;调节对抗样本生成模型的参数,以减小第一损失函数。
图5是根据本说明书一些实施例所示的对抗样本生成系统的模块图。
如图5所示,该对抗样本生成系统500可以包括第二获取模块510和第二处理模块520。
第二获取模块510,可以用于获取原始样本。原始样本可以是需要生成对抗样本的训练样本。原始样本可以为文字样本、图片样本、音频样本或视频样本等,原始样本可以具有属于自身的类别标签。
第二处理模块520,可以用于利用对抗样本生成模型处理所述原始样本,得到构造样本,并将所述构造样本确定为对应于原始样本的对抗样本。对抗样本生成模型可以是由流程100或流程200训练好(更新迭代后的模型参数)的对抗样本生成模型,训练好的对抗样本生成模型基于原始样本输出的构造样本时,具备较小数值的损失函数,使得构造样本与其对应的原始样本具有高相似度,且样本类别不同。
应当理解,图4、图5所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于候选项显示、确定系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,例如,图4中披露的第一获取模块410、预训练模块420和第一处理模块430可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,第一获取模块410、第一处理模块430可以是两个模块,也可以是一个模块同时具有数据获取功能和数据处理功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
本说明书实施例可能带来的有益效果包括但不限于:(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 (14)
1.一种获取对抗样本生成模型的方法,其中,所述方法包括:
获取多个训练样本;
对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型:
输入对抗样本生成模型,以获取该训练样本相对应的构造样本;
将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值;
基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数;所述第一损失函数与所述差异以及所述惩罚值均正相关;
调节对抗样本生成模型的参数,以减小第一损失函数。
2.根据权利要求1所述的方法,其中,在所述对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型之前,还包括:
利用多个训练样本对所述对抗样本生成模型进行预训练,以减小所述对抗样本生成模型输出的构造样本与其对应的训练样本之间的差异。
3.根据权利要求1或2所述的方法,其中,所述训练样本为文本样本,所述对抗样本生成模型至少包括序列到序列模型;
所述构造样本与其对应的训练样本的差异包括构造样本对应的向量表示与其对应的训练样本对应的向量表示之间的距离。
4.根据权利要求1所述的方法,其中,所述基于所述处理结果确定惩罚值,包括:
当目标模型对所述构造样本的处理结果与该目标模型对所述构造样本对应的训练样本的处理结果一致时,将所述惩罚值设为正值,否则将所述惩罚值设为负值。
5.根据权利要求4所述的方法,其中,所述训练样本为文本样本,所述对抗样本生成模型至少包括序列到序列模型,所述序列到序列模型还输出构造样本为其对应的训练样本的对抗样本的概率;
所述惩罚值的绝对值与所述概率正相关。
6.一种对抗样本生成方法,其中,所述方法包括:
获取原始样本;
利用对抗样本生成模型处理所述原始样本,得到构造样本,并将所述构造样本确定为对应于原始样本的对抗样本,其中,所述对抗样本生成模型基于如权利要求1至5中任意一项所述的方法确定。
7.一种获取对抗样本生成模型的系统,其中,所述系统包括:
第一获取模块,用于获取多个训练样本;
第一处理模块,用于对于多个训练样本的每一个进行以下处理,迭代更新对抗样本生成模型的参数,获取训练完成的对抗样本生成模型,包括:
输入对抗样本生成模型,以获取该训练样本相对应的构造样本;
将所述构造样本输入到目标模型,以得到目标模型对所述构造样本的处理结果,并基于所述处理结果确定惩罚值;
基于构造样本与其对应的训练样本的差异、以及惩罚值构造第一损失函数;
调节对抗样本生成模型的参数,以减小第一损失函数。
8.根据权利要求7所述的系统,其中,所述系统还包括:
预训练模块,用于利用多个训练样本对所述对抗样本生成模型进行预训练,以减小所述对抗样本生成模型输出的构造样本与其对应的训练样本之间的差异。
9.根据权利要求7或8所述的系统,其中,所述训练样本为文本样本,所述对抗样本生成模型至少包括序列到序列模型;
所述构造样本与其对应的训练样本的差异包括构造样本对应的向量表示与其对应的训练样本对应的向量表示之间的距离。
10.根据权利要求7所述的系统,其中,为基于所述处理结果确定惩罚值,所述第一处理模块用于:
当目标模型对所述构造样本的处理结果与该目标模型对所述构造样本对应的训练样本的处理结果一致时,将所述惩罚值设为正值,否则将所述惩罚值设为负值。
11.根据权利要求10所述的系统,其中,所述训练样本为文本样本,所述对抗样本生成模型至少包括序列到序列模型,所述序列到序列模型还输出构造样本为其对应的训练样本的对抗样本的概率;
所述惩罚值得绝对值与所述概率正相关。
12.一种对抗样本生成系统,其中,所述系统包括:
第二获取模块,用于获取原始样本;
第二处理模块,用于利用对抗样本生成模型处理所述原始样本,得到构造样本,并将所述构造样本确定为对应于原始样本的对抗样本,其中,所述对抗样本生成模型基于权利要求1至5中任意一项所述的方法确定。
13.一种获取对抗样本生成模型的装置,其中,所述装置包括处理器,所述处理器用于执行权利要求1-5中任意一项所述的方法。
14.一种对抗样本生成装置,其中,所述装置包括处理器,所述处理器用于执行如权利要求6所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010409787.2A CN111340143A (zh) | 2020-05-15 | 2020-05-15 | 一种获取对抗样本生成模型的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010409787.2A CN111340143A (zh) | 2020-05-15 | 2020-05-15 | 一种获取对抗样本生成模型的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111340143A true CN111340143A (zh) | 2020-06-26 |
Family
ID=71182932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010409787.2A Pending CN111340143A (zh) | 2020-05-15 | 2020-05-15 | 一种获取对抗样本生成模型的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111340143A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737691A (zh) * | 2020-07-24 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 对抗样本的生成方法和装置 |
CN112200380A (zh) * | 2020-10-23 | 2021-01-08 | 支付宝(杭州)信息技术有限公司 | 优化风险检测模型的方法及装置 |
CN112329931A (zh) * | 2021-01-04 | 2021-02-05 | 北京智源人工智能研究院 | 基于代理模型的对抗样本生成方法和装置 |
CN112507692A (zh) * | 2020-12-08 | 2021-03-16 | 北京百度网讯科技有限公司 | 建立风格文本生成模型的方法、装置 |
CN113593009A (zh) * | 2021-07-07 | 2021-11-02 | 东莞市鑫泰仪器仪表有限公司 | 一种基于超表面的反射型声学全息成像方法 |
CN114254108A (zh) * | 2021-12-13 | 2022-03-29 | 重庆邮电大学 | 一种中文文本对抗样本生成的方法、系统及介质 |
CN114819174A (zh) * | 2021-01-27 | 2022-07-29 | 北京嘀嘀无限科技发展有限公司 | 生成对抗样本的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110175646A (zh) * | 2019-05-27 | 2019-08-27 | 浙江工业大学 | 基于图像变换的多通道对抗样本检测方法及装置 |
CN110334742A (zh) * | 2019-06-10 | 2019-10-15 | 浙江大学 | 一种基于强化学习的通过添加虚假节点的图对抗样本生成方法 |
CN110968866A (zh) * | 2019-11-27 | 2020-04-07 | 浙江工业大学 | 一种面向深度强化学习模型对抗攻击的防御方法 |
US20200151508A1 (en) * | 2018-11-09 | 2020-05-14 | Adobe Inc. | Digital Image Layout Training using Wireframe Rendering within a Generative Adversarial Network (GAN) System |
-
2020
- 2020-05-15 CN CN202010409787.2A patent/CN111340143A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200151508A1 (en) * | 2018-11-09 | 2020-05-14 | Adobe Inc. | Digital Image Layout Training using Wireframe Rendering within a Generative Adversarial Network (GAN) System |
CN110175646A (zh) * | 2019-05-27 | 2019-08-27 | 浙江工业大学 | 基于图像变换的多通道对抗样本检测方法及装置 |
CN110334742A (zh) * | 2019-06-10 | 2019-10-15 | 浙江大学 | 一种基于强化学习的通过添加虚假节点的图对抗样本生成方法 |
CN110968866A (zh) * | 2019-11-27 | 2020-04-07 | 浙江工业大学 | 一种面向深度强化学习模型对抗攻击的防御方法 |
Non-Patent Citations (1)
Title |
---|
李俊杰等: "感知相似的图像分类对抗样本生成模型", 《计算机科学与探索》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737691A (zh) * | 2020-07-24 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 对抗样本的生成方法和装置 |
CN112200380A (zh) * | 2020-10-23 | 2021-01-08 | 支付宝(杭州)信息技术有限公司 | 优化风险检测模型的方法及装置 |
CN112200380B (zh) * | 2020-10-23 | 2023-07-25 | 支付宝(杭州)信息技术有限公司 | 优化风险检测模型的方法及装置 |
CN112507692A (zh) * | 2020-12-08 | 2021-03-16 | 北京百度网讯科技有限公司 | 建立风格文本生成模型的方法、装置 |
CN112507692B (zh) * | 2020-12-08 | 2021-11-23 | 北京百度网讯科技有限公司 | 建立风格文本生成模型的方法、装置 |
CN112329931A (zh) * | 2021-01-04 | 2021-02-05 | 北京智源人工智能研究院 | 基于代理模型的对抗样本生成方法和装置 |
CN114819174A (zh) * | 2021-01-27 | 2022-07-29 | 北京嘀嘀无限科技发展有限公司 | 生成对抗样本的方法和装置 |
CN113593009A (zh) * | 2021-07-07 | 2021-11-02 | 东莞市鑫泰仪器仪表有限公司 | 一种基于超表面的反射型声学全息成像方法 |
CN113593009B (zh) * | 2021-07-07 | 2022-06-24 | 东莞市鑫泰仪器仪表有限公司 | 一种基于超表面的反射型声学全息成像方法 |
CN114254108A (zh) * | 2021-12-13 | 2022-03-29 | 重庆邮电大学 | 一种中文文本对抗样本生成的方法、系统及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111340143A (zh) | 一种获取对抗样本生成模型的方法和系统 | |
US20220058426A1 (en) | Object recognition method and apparatus, electronic device, and readable storage medium | |
Lecuyer et al. | Certified robustness to adversarial examples with differential privacy | |
US11893111B2 (en) | Defending machine learning systems from adversarial attacks | |
US11995155B2 (en) | Adversarial image generation method, computer device, and computer-readable storage medium | |
CN111027628B (zh) | 一种模型确定方法和系统 | |
JP7266674B2 (ja) | 画像分類モデルの訓練方法、画像処理方法及び装置 | |
CN111475797A (zh) | 一种对抗图像生成方法、装置、设备以及可读存储介质 | |
CN110502976B (zh) | 文本识别模型的训练方法及相关产品 | |
EP3588380A1 (en) | Information processing method and information processing apparatus | |
CN112329832B (zh) | 一种基于深度卷积生成对抗网络的无源定位目标轨迹数据增强方法及系统 | |
CN111046394A (zh) | 一种基于对抗样本增强模型抗攻击能力的方法和系统 | |
WO2022126917A1 (zh) | 基于深度学习的人脸图像评估方法、装置、设备及介质 | |
CN111309975A (zh) | 一种增强图模型抗攻击能力的方法和系统 | |
CN111126420A (zh) | 一种建立识别模型的方法及装置 | |
CN114610851A (zh) | 意图识别模型的训练方法、意图识别方法、设备及介质 | |
CN111046380B (zh) | 一种基于对抗样本增强模型抗攻击能力的方法和系统 | |
CN110941824B (zh) | 一种基于对抗样本增强模型抗攻击能力的方法和系统 | |
CN113222480A (zh) | 对抗样本生成模型的训练方法及装置 | |
CN111461177B (zh) | 一种图像的识别方法及装置 | |
CN112801186A (zh) | 一种验证图像生成方法、装置及设备 | |
CN114567512B (zh) | 基于改进art2的网络入侵检测方法、装置及终端 | |
CN110955755A (zh) | 一种确定目标标准信息的方法和系统 | |
CN114841287A (zh) | 分类模型的训练方法、图像分类方法及装置 | |
CN111401112B (zh) | 人脸识别方法和装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200626 |