一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种对抗样本的生成方法、设备及存储介质与流程

2021-12-01 01:29:00 来源:中国专利 TAG:


1.本发明实施例涉及计算机技术领域,尤其涉及一种对抗样本的生成方法、设备及存储介质。


背景技术:

2.对抗样本可以提高机器学习模型的鲁棒性,通过将对抗样本加入至机器学习模型的训练过程,可以有效提升机器学习模型对于对抗样本的抵抗能力。
3.目前,现有的对抗样本生成算法,主要包括待替换词集构建、替换词集构建及选择和限制条件检测三个步骤。其中,替换词集构建及选择,是对抗样本生成算法的关键步骤,主要包括语义相似和外形相似两种构建方法;现有技术中,通常是选择其中一种构建方法构建替换词集;然而,当对抗样本生成的效果不佳时,需要人工修改替换词集的构建方法,导致对抗样本生成效率较低。


技术实现要素:

4.本发明实施例提供一种对抗样本的生成方法、设备及存储介质,可以实现根据多个调整维度下的调整权重,自动构建与原始语料对应的替换词集,提升对抗样本的生成效率。
5.第一方面,本发明实施例提供了一种对抗样本的生成方法,包括:
6.获取与原始语料的目标词向量匹配的至少一个目标调整参数组,目标调整参数组中包括:至少一个调整维度下的调整权重;
7.根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集;
8.根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;
9.将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
10.第二方面,本发明实施例还提供了一种计算机设备,包括处理器和存储器,所述存储器用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
11.获取与原始语料的目标词向量匹配的至少一个目标调整参数组,目标调整参数组中包括:至少一个调整维度下的调整权重;
12.根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集;
13.根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;
14.将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
15.第三方面,本发明实施例还提供了一种计算机可读存储介质,该存储介质上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的对抗样本的生成方法。
16.本发明实施例提供的技术方案,通过获取与原始语料的目标词向量匹配的目标调整参数组,并在根据目标词向量确定原始语料对应的待替换词集的基础上,针对每个目标调整参数组,生成与待替换词集匹配的多个替换词集;进而根据各替换词集,生成与原始语料对应的多个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;最终将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本,可以根据多个调整维度下的调整权重,自动构建与原始语料对应的替换词集,提升了对抗样本的生成效率。
附图说明
17.图1是本发明一实施例提供的一种对抗样本的生成方法的流程图;
18.图2是本发明另一实施例中的一种对抗样本的生成方法的流程图;
19.图3a是本发明另一实施例中的一种对抗样本的生成方法的流程图;
20.图3b是本发明另一实施例中的一种key值生成的流程示意图;
21.图3c是本发明另一实施例中的一种对抗样本的生成方法的流程示意图;
22.图3d是本发明另一实施例中的一种目标调整参数组的修正方法的流程示意图;
23.图3e是本发明另一实施例中的一种调整参数库的更新方法的流程示意图;
24.图4是本发明另一实施例中的一种对抗样本的生成装置的结构示意图;
25.图5是本发明另一实施例中的一种计算机设备的结构示意图。
具体实施方式
26.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
27.在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤。处理可以对应于方法、函数、规程、子例程、子程序等等。
28.本文使用的术语“原始语料”可以是自然语言处理语料库中任意选择的语料信息,也可以是经过对语音信号的自然语言理解,或者对文本信息的识别获取的语料信息,本发明实施例对此不作具体限定。
29.本文使用的术语“目标词向量”可以是原始语料被映射到实数生成的高纬度向量。
30.本文使用的术语“目标调整参数组”可以是生成对抗样本的调整参数集合,可以是多个调整维度下的调整权重。具体的,目标调整参数组可以是历史调整参数组,也可以是标准调整参数组。
31.本文使用的术语“待替换词集”可以是原始语料中的至少一个词语组成的词语集合。
32.本文使用的术语“替换词集”可以是包括与待替换词集中各待替换词语分别对应的替换词语的词语集合,替换词语可以来自于预先建立的词典或者词库,本发明实施例对此不作具体限定。
33.本文使用的术语“备选对抗样本”可以是采用各替换词集中的各替换词语对原始语料中的对应词语进行替换后,获取的未经过筛选的语料信息。
34.本文使用的术语“中间对抗样本”可以是从备选对抗样本中筛选的,与原始语料的差异度符合预设差异度条件的对抗样本。
35.本文使用的术语“目标识别模型”可以是任意类型的机器学习模型,具体的,可以是具有文本信息分类或者情感分析能力的机器学习模型。
36.本文使用的术语“目标对抗样本”可以是中间对抗样本中,与原始语料的模型识别结果不一致的对抗样本。
37.图1为本发明一实施例提供的一种对抗样本的生成方法的流程图,本发明实施例可适用于基于目标调整参数组,生成与原始语料对应的对抗样本的情况,该方法可以由计算机设备中的处理器来执行,并一般可集成在计算机设备中。
38.如图1所示,该方法具体包括如下步骤:
39.s110、获取与原始语料的目标词向量匹配的至少一个目标调整参数组。
40.其中,原始语料,为用于进行对抗样本生成的文本信息,可以是自然语言处理语料库中任意选择的语料信息,也可以是经过对语音信号的自然语言理解,或者对文本信息的识别获取的语料信息,本发明实施例对原始语料的获取方式不作具体限定。目标词向量,为将来自原始语料的单词或短语映射到实数生成的向量。
41.在本实施例中,基于预设的向量生成方法,执行对原始语料的向量生成操作,以获取原始语料对应的目标词向量;可选的,可以通过分词处理模型对原始语料进行分词处理,以获取分词语句,并采用预设的词向量生成算法,对分词语句进行词向量生成处理,以获取分词语句的词向量;进而根据分词语句的词向量,获取原始语料的目标词向量。其中,分词语句可以是单个词语,也可以是包括多个词语的短语。
42.其中,分词处理模型可以包括n元模型,n元(n

gram)模型,为假设第n个词的出现只与前面第n

1个词相关,且整个分词语句的概率就是各个分词出现概率的乘积;通过n元模型可获取对应最大可能概率的分词语句,实现对原始语料的准确分词。预设的词向量生成算法可以包括word2vec方法;word2vec,是通过对大量文本语料进行无监督方式学习而获取的神经网络模型,可以采用高维向量对原始语料进行表示。本发明实施例对根据原始语料,获取目标词向量的方式不作具体限定。通过将原始语料转化为对应的可表示语义的词向量,进而将词向量输入至识别模型,可以实现对原始语料的分类或识别。
43.需要说明的是,在本实施例中,本地预先存储有一定数量的调整参数组,调整参数组可以是历史调整参数组,也可以是预先设置的标准调整参数组。调整参数组中包括至少一个调整维度下的调整权重,且各调整维度的调整权重的和为1,调整权重表示各调整维度下的词语占全部待调整词语的比例;例如,调整参数组包括语义调整权重和外观调整权重,语义调整权重为p1,则对应的外观调整权重为1

p1。在本实施例中,调整维度和各调整维度
对应的调整权重可以根据任务需求进行自适应设置。
44.还需要说明的是,调整参数组可以按照键值对(key

value)的形式进行存储;key值可以为语料词向量转换得到的字符串,可以通过特征压缩算法生成;value为与语料的语义特征对应的调整参数组,以及各调整参数组对应的排序权重,排序权重可以根据预设规则进行设置;例如,可以将按照对应调整参数组成功完成对抗样本生成的次数作为排序权重。由此,在获取到原始语料的目标词向量后,可以根据目标词向量查找匹配的调整参数组;通过采用键值对的形式对调整参数组进行存储,可以提升根据目标词向量,查找匹配目标调整参数组的速度。
45.本发明实施例的技术方案,通过获取与原始语料匹配的目标调整参数组,可以实现根据对抗样本生成的历史调整参数或者预设调整参数,执行对原始语料的对抗样本生成操作,可以提升对抗样本生成的效率,提升对抗样本的生成准确度。
46.在本实施例中,可选的,获取与原始语料的目标词向量匹配的至少一个目标调整参数组,可以包括:将目标词向量与至少一个调整参数库的标准词向量进行相似性匹配,并根据匹配结果,判断是否存在与目标词向量对应的目标调整参数库;若是,根据目标调整参数库中包括的各调整参数组的排序权重,在所述目标调整参数库中获取设定数量的目标调整参数组;否则,将预设的至少一个标准调整参数组,确定为所述目标调整参数组。
47.其中,调整参数库,包括与一个标准词向量对应的至少一个标准调整参数组,调整参数库与标准词向量一一对应。在本实施例中,在获取到目标词向量后,分别计算目标词向量与各调整参数库的标准词向量间的相似度,若确定目标词向量与标准词向量的相似度较高,例如,相似度大于预设相似阈值,则将对应的调整参数库确定为目标调整参数库。值的注意的是,以余弦相似度计算方法为例,其余弦值范围为[

1,1],值越接近于1,表示两个向量的方向越接近,即越相似;而越接近于

1,表示两个向量的方向越远,即越不同。故采用不同的相似度计算方法,其对应的相似度评价标准也不同。
[0048]
进一步的,根据目标调整数据库中各目标调整参数组的排序权重,按照排序权重从大到小,筛选出预设数量的目标调整参数组,作为当前原始语料匹配的目标调整参数组;预设数量可以根据任务需求进行适应性设置。通过获取与目标词向量相似度较高的标准词向量的调整参数库作为目标调整参数库,可以提升当前原始语料的对抗样本生成的成功概率,进而可以提升对抗样本的获取效率。
[0049]
对应的,若目标词向量与各标准词向量的相似度均较低,表示数据库中未存储有与目标词向量匹配的调整参数库;此时,获取预设的至少一个标准调整参数组,作为目标词向量对应的目标调整参数组;其中,标准调整参数组,为预先设置的一个固定初始值;以标准调整参数组的调整维度为二维为例,对应的标准调整参数组可以表示为p0=[1.0,0.0]。通过设置标准调整参数组,可以在根据目标词向量无法查找到匹配的目标调整参数库时,基于一个默认的调整参数组生成对抗样本,避免对抗样本生成的盲目进行,可以提升对抗样本的生成效率。
[0050]
s120、根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集。
[0051]
其中,待替换词集,为由原始语料中的至少一个词语组成的词语集合;对应的,替换词集,为待替换词集中各待替换词语分别对应的替换词语组成的词语集合。待替换词集
中的待替换词语与替换词集中的替换词语一一对应。
[0052]
具体的,在确定与原始语料匹配的目标调整参数组后,基于重要度排序算法或者可解释机器学习算法对目标词向量进行处理,以在原始语料中获取对语料分类影响程度较高的预设数量词语,作为待替换词语并生成待替换词集,可以提升对抗样本的生成效率。进一步的,根据各目标调整参数中各调整维度的调整权重,确定待替换词集中各调整维度对应的待替换词语的数量,进而基于预先构建的词典或词语库,获取各调整维度下的待替换词语对应的替换词语,并基于各替换词语生成替换词集;其中,替换词集与目标调整参数组一一对应。
[0053]
此外,可选的,在确定待替换词集之前,针对原始语料中的各词语,在词库中预先获取对应的备选替换词语,备选替换词语可以包括各调整维度下的替换词语;进而在确定待替换词集后,在各待替换词语分别对应的备选替换词语中筛选匹配的替换词语,可以进一步提升对抗样本的生成效率。
[0054]
在本实施例中,可选的,目标调整参数组可以包括语义调整权重和外观调整权重;其中,语义调整权重,是指待替换词集中语义替换词语占全部词语的比例;语义调整,表示采用与待替换词语含义相近的词语,对待替换词语进行替换;外观调整权重,是指待替换词集中外观替换词语占全部词语的比例,外观调整,表示采用与待替换词语外观相似的词语,对待替换词语进行替换。
[0055]
对应的,针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集,可以包括:根据各目标调整参数组中的语义调整权重和外观调整权重,确定待替换词集中的语义待替换词语数量;根据语义待替换词语数量,在所述待替换词集中进行随机采样,以获取对应数量的语义待替换词语,以及对应的外观待替换词语;根据粒子群优化算法,获取与各语义待替换词语语音相近的语义替换词语,以及与各外观待替换词语外观相近的外观替换词语,并根据语义替换词语和外观替换词语,生成替换词集。
[0056]
其中,粒子群优化算法(particle swarm optimization,pso),是一种基于群体协作的随机搜索算法,可以实现对最优解的快速查找;本实施例通过粒子群优化算法,可以提升最优语义替换词语的查找速度。
[0057]
具体的,将语义调整权重与语义调整权重和外观调整权重之和的比值,作为语义待替换词语数量与待替换词语数量的比值;并根据当前比值和待替换词语的数量,确定语义待替换词语数量;进而根据语义待替换词语数量,在待替换词集中进行随机采样,获取对应数量的语义待替换词语,并将剩余的待替换词语作为外观待替换词语;最终,根据pso算法,获取与各待替换词语分别对应的替换词语,并根据各替换词语生成替换词集。例如,目标调整参数组z=[w
语义
,w
外观
],则语义待替换词语的比例为
[0058]
此外,可选的,在本实施例中,还可以根据各目标调整参数组中的语义调整权重和外观调整权重,先确定出待替换词集中的外观待替换词语数量,进而获取与待替换词集对应的替换词集,本发明实施例对此不作具体限定。
[0059]
s130、根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本。
[0060]
具体的,在获取到替换词集后,采用各替换词集中的替换词语,对原始语料中的对
应待替换词语进行替换,以获取与原始语料对应的备选对抗样本;备选对抗样本的数量与替换词集的数量一致。进一步的,评估各备选对抗样本与原始语料的差异度,并将差异度符合预设差异度阈值的备选对抗样本作为中间对抗样本。
[0061]
在本实施例中,可选的,根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本,可以包括:
[0062]
根据余弦相似度计算方法,获取各备选对抗样本的语义修改程度;并根据外观替换词语数量与备选对抗样本词语数量的比值,确定各备选对抗样本的外观修改程度;根据所述语义修改程度和所述外观修改程度,确定各备选对抗样本的差异度评分;将差异度评分小于或等于预设评分阈值的备选对抗样本,确定为中间对抗样本。
[0063]
其中,余弦相似度计算方法,是一种通过计算两个向量点积空间夹角的余弦值,判断向量相似性的方法;通过余弦相似度计算方法,对原始语料的目标词向量与各备选对抗样本的备选词向量之间的语义相似度分别进行计算,进而可以用一减去当前语义相似度,以确定各备选对抗样本相对于原始语料的语义修改程度,可以实现对语义修改程度的准确确定。
[0064]
需要说明的是,在获取到各备选对抗样本的语义修改程度和外观修改程度后,可以基于预设差异度计算方法,对语义修改程度和外观修改程度进行计算,以获取各备选对抗样本的差异度评分;典型的,预设差异度计算方法,可以包括将语义修改程度与语义调整权重相乘,并将外观修改程度与外观调整权重进行相乘,进而将两个乘积进行相加得到差异度评分;例如,语义修改程度为m
语义
,外观修改程度为m
外观
,语义调整权重为w
语义
,外观调整权重为w
外观
,则差异度评分可以为w
语义
×
m
语义
w
外观
×
m
外观
;或者可以将语义修改程度和外观修改程度进行直接相加,以获取对应的差异度评分。本发明实施例,对根据语义修改程度和外观修改程度,获取差异度评分的方式不作具体限定。
[0065]
值的注意的是,当获取中间对抗样本的数量为空时,可以返回执行针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集操作,直至根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取至少一个中间对抗样本,可以确保对中间对抗样本的获取。
[0066]
s140、将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
[0067]
其中,目标识别模型,为基于机器学习算法构建的文本识别模型,可以实现对输入文本的分类与识别。在本实施例中,预先将原始语料输入至目标识别模型,以获取原始语料的模型识别结果;并在获取到多个中间对抗样本后,将获取的各中间对抗样本输入至目标识别模型,以获取各中间对抗样本的模型识别结果;若中间对抗样本的模型识别结果与原始语料的模型识别结果不一致,表示对抗样本生成成功,将当前中间对抗样本确定为与原始语料对应的目标对抗样本。
[0068]
在本实施例中,根据原始语料生成的对抗样本,可以用于对目标识别模型的训练,可以提升目标识别模型的鲁棒性,提升目标识别模型对输入文本的识别准确度。
[0069]
本发明实施例提供的技术方案,通过获取与原始语料的目标词向量匹配的目标调整参数组,并在根据目标词向量确定原始语料对应的待替换词集的基础上,针对每个目标
调整参数组,生成与待替换词集匹配的多个替换词集;进而根据各替换词集,生成与原始语料对应的多个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;最终将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本,可以根据多个调整维度下的调整权重,自动构建与原始语料对应的替换词集,提升了对抗样本的生成效率。
[0070]
本发明又一实施例提供了一种对抗样本的生成方法,本实施例以上述实施例为基础,具体介绍在获取目标对抗样本后,根据目标对抗样本,对调整参数库进行更新。
[0071]
图2为本发明又一实施例提供的对抗样本的生成方法的流程图,本实施例以上述技术方案为基础,提供了一种对抗样本的生成方法,该方法包括:
[0072]
s210、获取与原始语料的目标词向量匹配的至少一个目标调整参数组。
[0073]
其中,目标调整参数组中包括:至少一个调整维度下的调整权重。
[0074]
s220、根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集。
[0075]
s230、根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本。
[0076]
s240、将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
[0077]
在本实施例中,可选的,在将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果之后,还可以包括:若未能成功获取与原始语料对应的目标对抗样本,则返回执行针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集操作,直至满足结束迭代次数条件。
[0078]
需要说明的是,尽管预先获取与原始语料对应的多个目标调整参数组,并基于各目标调整参数组,执行对应的对抗样本生成操作,但仍然存在一定的对抗样本生成失败概率;故在检测到获取的目标对抗样本为空,此次对抗样本生成失败时,返回执行s220;具体的,根据各目标调整参数组,重新生成与待替换词集匹配的替换词集;并基于重新生成的替换词集,重新执行对抗样本的生成操作,直至满足结束迭代次数条件。其中,迭代次数条件可以根据任务需求进行自定义设置,例如,迭代次数条件为3次。
[0079]
值的注意的是,若在迭代次数条件之内,即获取到与原始语料对应的目标对抗样本,则结束对抗样本的生成迭代操作;对应的,若满足结束迭代次数条件后,仍未获取到与原始语料对应的目标对抗样本;此时,基于当前的各目标调整参数组,无法实现对抗样本的成功生成,需要对目标调整参数组进行优化调整。
[0080]
还需要说明的是,基于相同的目标调整参数组,每次生成的与待替换词集对应的替换词集存在差别,故基于相同的目标调整参数组,执行对抗样本的生成迭代操作,每次迭代可以获取不同的备选对抗样本。
[0081]
在本实施例的一个可选的实施方式中,在确定满足结束迭代次数条件之后,还可以包括:通过遗传算法,对各目标调整参数组中包括的调整权重进行修正后,返回执行针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集操作,直至成功确定出
与原始语料对应的目标对抗样本。
[0082]
其中,遗传算法,是一种借鉴生物界的进化规律演化而来的随机化搜索方法,具有优秀的全局寻优能力;通过遗传算法,对目标调整参数组中各调整维度的调整权重进行自动修正,可以实现对目标调整参数组的自动优化。
[0083]
需要说明的是,在满足结束迭代次数条件后,若仍无法获取到对应的目标对抗样本,即在确定根据当前的目标调整参数组,无法成功生成与原始语料对应的目标对抗样本时,通过遗传算法,对当前各目标调整参数组中调整权重进行自动修正。进一步的,根据修正后的各目标调整参数组,重新生成与待替换词集匹配的替换词集,进而重新执行目标对抗样本的生成迭代操作,直至成功获取与原始语料对应的目标对抗样本。
[0084]
s250、根据各目标对抗样本的差异度,在目标对抗样本中获取差异度最大的差异对抗样本,并确定差异对抗样本对应的目标调整参数组。
[0085]
在本实施例中,在获取到与原始语料对应的多个目标对抗样本时,可确定基于当前的目标调整参数组,可成功实现对原始语料的对抗样本生成;进一步的,对原始语料与目标调整参数组的映射关系进行存储,以实现在重新获取到原始预料,或者与原始语料相似度较高的语料时,可以采用相同的目标调整参数组,执行对应的对抗样本生成操作,以提升对抗样本的生成效率。
[0086]
需要说明的是,在对原始语料与目标调整参数组的映射关系进行存储时,为了降低需要存储的数据量,以及避免重复存储;可以根据各目标对抗样本对应的差异度,对各目标对抗样本进行差异度排序,以获取目标对抗样本中差异度最大的差异度对抗样本,并确定生成当前差异对抗样本时,所采用的目标调整参数组。通过在目标对抗样本中获取差异度最大的差异对抗样本,进而只对生成差异对抗样本所采用的目标调整参数组进行存储,可以降低待存储的数据量,同时可以提升根据目标调整参数组生成对抗样本的成功概率。
[0087]
s260、根据目标词向量,与至少一个调整参数库的标准词向量进行一致性匹配,并根据一致性匹配结果,判断是否存在与目标词向量对应的调整参数库。
[0088]
在本实施例中,在对原始语料进行存储时,由于调整参数库以键值对的形式进行存储,故首先查找与目标词向量一致的调整参数库的标准词向量,以判断是否已存储有目标词向量对应的调整参数库;若确定查找到一致的标准词向量,则可以将标准词向量对应的调整参数库,确定为目标词向量对应的调整参数库。
[0089]
s270、若是,则将差异对抗样本对应的目标调整参数组,以及将根据目标调整参数组成功获取目标对抗样本的次数作为对应的排序权重,添加至目标词向量对应的调整参数库中。
[0090]
其中,在确定目标词向量对应的调整参数库后,由于目标对抗样本与替换词集对应,而替换词集与调整参数组对应;故根据差异对抗样本,可确定对应的目标调整参数组;由此,将差异对抗样本对应的目标调整参数组添加至目标词向量的调整参数库中;同时,将根据目标调整参数组成功获取目标对抗样本的次数,作为目标调整参数组在调整参数库中的排序权重,添加至目标词向量的调整参数库中。
[0091]
此外,可选的,在将差异对抗样本对应的目标调整参数组添加至目标词向量的调整参数库时,判断调整参数库中是否存在与目标调整参数组相同的标准调整参数组;若确定不存在,则将目标调整参数组添加至各标准调整参数组的最后,并根据排序权重,对差异
调整参数库中的各调整参数组进行排序,排序权重高的顺序在前,排序权重低的顺序在后,完成对当前调整参数库的更新;而若确定存在与目标调整参数组相同的标准调整参数组,进一步判断对应的排序权重是否一致,若确定一致,则可以直接放弃对当前目标调整参数组的存储;若确定不一致,可仅对排序权重进行更新。
[0092]
s280、否则,新建目标词向量对应的,包括差异对抗样本对应的目标调整参数组的调整参数库。
[0093]
需要说明的是,若确定调整参数库中不存在与目标词向量对应的调整参数库,则新建目标词向量对应的调整参数库,并存储至本地;其中,调整参数库包括生成当前差异对抗样本所使用的目标调整参数组,以及根据当前目标调整参数组成功生成对抗样本的次数。
[0094]
本发明实施例提供的技术方案,在根据与原始语料的目标词向量匹配的多个目标调整参数组,成功获取到与原始语料对应的目标对抗样本之后,根据各目标对抗样本的差异度,在目标对抗样本中筛选出差异度最大的差异对抗样本,并根据生成差异对抗样本所采用的目标调整参数组,执行调整参数库的更新操作,实现了对调整参数库的更新;进而后续在获取到与原始语料相同或相似度相近的语料输入时,可以使用差异对抗样本对应的目标调整参数组,进行对应的对抗样本生成,可以进一步提升对抗样本的生成效率。
[0095]
本发明又一实施例提供了一种对抗样本的生成方法,本实施例以上述实施例为基础,具体介绍根据原始语料匹配的多个目标调整参数组,获取与原始语料对应的目标对抗样本,并根据目标对抗样本,进行调整参数库的更新。
[0096]
图3a为本发明又一实施例提供的对抗样本的生成方法的流程图,本实施例以上述技术方案为基础,提供了一种对抗样本的生成方法,该方法包括:
[0097]
s310、获取原始语料的目标词向量,执行s320。
[0098]
在本实施例的一个具体实施方式中,如图3b所示,以数组的形式输入语料库corpus=[

,“in exit interviews and surveys,the 6%shared their concerns”,“iwish more business operated like this.these guys were all awesome.very organized and pro.”,“the offer of severance tipped them over the edge.”,

],并在语料库中选择原始语料c=“i wish more business operated like this.these guys were all awesome.very organized and pro.”。
[0099]
进一步的,采用word2vec算法,对原始语料c进行目标词向量生成操作,以获取原始语料c对应的目标词向量。需要说明的是,为了提升匹配目标调整参数组的查找速度,目标调整参数组以树状形式的哈希表进行存储,故在获取到目标词向量之后,可以基于位置敏感哈希(location sensitive hash,lsh)函数,生成与目标词向量对应的key值k
c
=[0,1,0,0,0,1,0,1,1,0,1,0,0,1,1,0,1,0,0,1],可以进一步提升根据目标词向量,查找匹配目标调整参数组的速度。
[0100]
s320、将目标词向量与至少一个调整参数库的标准词向量进行相似性匹配,并根据匹配结果,判断是否存在与目标词向量对应的目标调整参数库。
[0101]
其中,若是,执行s330;否则,执行s340。
[0102]
s330、根据目标调整参数库中包括的各调整参数组的排序权重,在所述目标调整参数库中获取设定数量的目标调整参数组,执行s350。
[0103]
s340、将预设的至少一个标准调整参数组,确定为所述目标调整参数组,执行s350。
[0104]
s350、根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集,执行s360。
[0105]
s360、根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本,执行s370。
[0106]
s370、将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果。
[0107]
其中,中间对抗样本的模型识别结果存在两种情况:当中间对抗样本的模型识别结果与原始语料的模型识别结果不一致时,执行s380;当中间对抗样本的模型识别结果与原始语料的模型识别结果一致时,执行s3130。
[0108]
s380、将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本,执行s390。
[0109]
s390、根据各目标对抗样本的差异度,在目标对抗样本中获取差异度最大的差异对抗样本,并确定差异对抗样本对应的目标调整参数组,执行s3100。
[0110]
s3100、根据目标词向量,与至少一个调整参数库的标准词向量进行一致性匹配,并根据一致性匹配结果,判断是否存在与目标词向量对应的调整参数库。
[0111]
其中,若是,则执行s3110;否则,执行s3120。
[0112]
s3110、将差异对抗样本对应的目标调整参数组,以及将根据目标调整参数组成功获取目标对抗样本的次数作为对应的排序权重,添加至目标词向量对应的调整参数库中。
[0113]
s3120、新建目标词向量对应的,包括差异对抗样本对应的目标调整参数组的调整参数库。
[0114]
s3130、判断是否满足结束迭代次数条件。
[0115]
其中,若是,执行s3140;否则,返回执行s350。
[0116]
s3140、通过遗传算法,对各目标调整参数组中包括的调整权重进行修正,返回执行s350。
[0117]
本发明实施例提供的技术方案,在根据初始的目标调整参数组,无法成功获取与原始语料对应的目标对抗样本时,重复执行多次目标对抗样本的生成操作;若在满足结束迭代次数条件时,仍无法成功获取目标对抗样本,则对目标调整参数组进行修正,以获取修正后的目标调整参数组,并基于修正后的目标调整参数组,再次执行目标对抗样本的生成操作,直至获取与原始语料对应的目标对抗样本,可以实现对目标调整参数组的自动修正与优化,进而可以确保目标对抗样本的成功获取;进一步的,根据获取的目标对抗样本,对调整参数库进行更新,可以在获取到相同或相似的原始语料时,采用匹配的目标调整参数组进行对抗样本的生成,可以提升生成对抗样本的成功概率,进而可以提升对抗样本的生成效率。
[0118]
在本实施例的一个具体实施方式中,如图3c所示,在获取到原始语料的目标词向量的key值k
c
后,根据k
c
在调整参数库中进行匹配查找;若确定未查找到匹配的标准词向量,将预设的一个标准调整参数组,确定为目标调整参数组。以标准调整参数组包括语义调整权重和外观调整权重为例,标准调整参数组可表示为p0=[w
语义
,w
外观
]=[0.5,0.5],则目标词向量对应的目标调整参数组为gp=[p0]=[[0.5,0.5]]。
[0119]
基于pso算法,确定原始语料c对应的待替换词集g
c待替换
=["business","guys"],对于business,构建其对应的语义替换子集为g
替换_m_business
=["trade","dealing"],对应的外观替换子集为g
替换_a_business
=["buslness","bussines"];对于guys,构建其对应的语义替换子集为g
替换_m_guys
=["people","men"],对应的外观替换子集为g
替换_a_guys
=["goys","guy"]。
[0120]
由于当前只存在一个目标调整参数组p0,则针对当前目标调整参数组,生成与待替换词集对应的替换词集;值的注意的是,若存在多个目标调整参数组,则分别根据各目标调整参数组,生成多个对应的替换词集。具体的,根据目标调整参数组,确定待替换词集中语义待替换词语的比例为则外观待替换词语的比例为1

0.5=0.5;随机选择待替换词集中的guys进行语义调整,business进行外观调整。按照均匀采样方法,从g
替换_m_guys
中选择people作为guys的语义替换词,从g
替换_a_business
中选择bussines作为business的外观替换词,可获取替换词集为g
c替换
=["bussines","people"]。
[0121]
进一步的,根据替换词集获取原始语料c对应的备选对抗样本为a_m1=“iwish more bussines operated like this.these people were all awesome.very organized and pro.”,使用word2vec算法,得到其词向量为e
m1
。通过语义修改程度和外观修改程度的加权和s=w
语义
×
m
语义
w
外观
×
m
外观
,计算备选对抗样本与原始语料的差异度评分;其中,通过余弦相似度计算方法,计算得到备选对抗样本的词向量与目标词向量的语义相似度为0.8,则语义修改程度m
语义
=1

0.8=0.2;通过外观替换词语数量与原始语料词语数量的比值,获取外观修改程度则差异度评分s
m1
=0.5
×
0.2 0.5
×
0.0625=0.13125,假设预设评分阈值为0.4,则差异度评分小于预设评分阈值,将备选对抗样本确定为中间对抗样本。
[0122]
以目标识别模型执行的任务为情感分类为例,目标识别模型对原始语料的情感分类为“正面评价”;在获取到中间对抗样本后,将中间对抗样本输入至目标识别模型,若目标识别模型对中间对抗样本的情感分类为“正面评价”,则表示中间对抗样本的情感分类没有发生改变,可确定对抗样本生成失败。
[0123]
此时,对抗样本生成失败次数为1,以结束迭代次数条件为3为例,失败次数小于结束迭代次数条件,如图3d所示,重新从g
替换_m_guys
中选择men作为guys的语义替换词,从g
替换_a_business
中选择buslnes作为business的外观替换词,可获取替换词集为g
c替换
=["buslnes","men"]。则对应的备选对抗样本为a_m2=“i wish more buslness operated like this.these men were all awesome.very organized and pro.”,并采用相同的差异度评分计算方法,可以获取差异度评分s
m2
=0.5
×
0.24 0.5
×
0.0625=0.15125,小于预设评分阈值,将当前备选对抗样本确定为中间对抗样本。若目标识别模型对当前中间对抗样本的情感分类仍然为“正面评价”,则确定对抗样本生成再次失败,对抗样本生成失败次数为2。
[0124]
由于对抗样本失败次数仍小于结束迭代次数条件,使用pso算法重新构建待替换词集g
c待替换2
=["business","awesome"],对于awesome,新构建其语义替换子集g
替换_m_awesome
=["wonderful","excellent"],对应的外观替换子集为g
替换_a_guys
=["avesome","
awsome"]。从g
替换_a_business
中抽取到bussines作为business的外观替换词,从g
替换_m_awesome
中抽取到wonderful作为awesome的语义替换词,获取备选对抗样本a_m3=“i wish more bussines operated like this.these people were all wonderful.very organized and pro.”,其对应的差异度评分s
m3
=0.5
×
0.15 0.5
×
0.0625=0.10625,小于预设评分阈值,将当前备选对抗样本确定为中间对抗样本。若目标识别模型对当前中间对抗样本的情感分类仍然为“正面评价”,则确定对抗样本生成再次失败,对抗样本生成失败次数为3。
[0125]
此时,对抗样本生成失败次数等于结束迭代次数条件,结束基于当前目标调整参数组的对抗样本生成,并基于遗传算法对目标调整参数组中的调整权重进行修正。假设修正后的目标调整参数组为gp=[[1.0,0.0]],此时,语义待替换词语占待替换词集词语的比例为则对待替换词集中的全部待替换词语进行语音替换,从g
替换_m_business
中选择trade作为business的语音替换词,从g
替换_m_guys
中抽取到people作为guys的语义替换词,以获取备选对抗样本a_m4=“i wish more trade operated like this.these people were all awesome.very organized and pro.”。采用相同的差异度评分计算方法,计算得到当前备选对抗样本的差异度评分为s
m4
=1.0
×
0.10 0.0
×
0=0.1,小于预设评分阈值,将当前备选对抗样本确定为中间对抗样本。此外,目标识别模型对当前中间对抗样本的情感分类为“负面评价”,与原始语料的情感分类不一致,故可将当前中间对抗样本确定为目标对抗样本,也即目标对抗样本为a_m4=“i wish more trade operated like this.these people were all awesome.very organized and pro.”。
[0126]
需要说明的是,如图3e所示,在确定目标对抗样本之后,根据原始语料的目标词向量获取对应的key值k
c
=[0,1,0,0,0,1,0,1,1,0,1,0,0,1,1,0,1,0,0,1],将优化后的目标调整参数组gp和根据gp成功生成对抗样本的次数作为对应的value值,arraye=[[1.0,0.0]],arrayw=[1],生成对应的键值对进行存储。
[0127]
图4为本发明另一实施例提供的一种对抗样本的生成装置的结构示意图。如图4所示,该装置包括:目标调整参数组获取模块410、替换词集获取模块420、中间对抗样本获取模块430和目标对抗样本获取模块440。其中,
[0128]
目标调整参数组获取模块410,用于获取与原始语料的目标词向量匹配的至少一个目标调整参数组,目标调整参数组中包括:至少一个调整维度下的调整权重;
[0129]
替换词集获取模块420,用于根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集;
[0130]
中间对抗样本获取模块430,用于根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;
[0131]
目标对抗样本获取模块440,用于将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
[0132]
本发明实施例提供的技术方案,通过获取与原始语料的目标词向量匹配的目标调整参数组,并在根据目标词向量确定原始语料对应的待替换词集的基础上,针对每个目标调整参数组,生成与待替换词集匹配的多个替换词集;进而根据各替换词集,生成与原始语
料对应的多个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;最终将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本,可以根据多个调整维度下的调整权重,自动构建与原始语料对应的替换词集,提升了对抗样本的生成效率。
[0133]
可选的,在上述技术方案的基础上,目标调整参数组获取模块410,包括:
[0134]
匹配单元,用于将目标词向量与至少一个调整参数库的标准词向量进行匹配,并根据匹配结果,判断是否存在与目标词向量对应的目标调整参数库;
[0135]
目标调整参数组获取单元,用于若是,根据目标调整参数库中包括的各调整参数组的排序权重,在所述目标调整参数库中获取设定数量的目标调整参数组;
[0136]
否则,将预设的至少一个标准调整参数组,确定为所述目标调整参数组。
[0137]
可选的,在上述技术方案的基础上,目标调整参数组包括语义调整权重和外观调整权重;
[0138]
替换词集获取模块420,包括:
[0139]
数量确定单元,用于根据各目标调整参数组中的语义调整权重和外观调整权重,确定待替换词集中的语义待替换词语数量;
[0140]
词语获取单元,用于根据语义待替换词语数量,在所述待替换词集中进行随机采样,以获取对应数量的语义待替换词语,以及对应的外观待替换词语;
[0141]
替换词集生成单元,用于根据粒子群优化算法,获取与各语义待替换词语语音相近的语义替换词语,以及与各外观待替换词语外观相近的外观替换词语,并根据语义替换词语和外观替换词语,生成替换词集。
[0142]
可选的,在上述技术方案的基础上,中间对抗样本获取模块430,包括:
[0143]
修改程度确定单元,用于根据余弦相似度计算方法,获取各备选对抗样本的语义修改程度;并根据外观替换词语数量与备选对抗样本词语数量的比值,确定各备选对抗样本的外观修改程度;
[0144]
差异度评分确定单元,用于根据所述语义修改程度和所述外观修改程度,确定各备选对抗样本的差异度评分;
[0145]
中间对抗样本确定单元,用于将差异度评分小于或等于预设评分阈值的备选对抗样本,确定为中间对抗样本。
[0146]
可选的,在上述技术方案的基础上,所述对抗样本的生成装置,还包括:
[0147]
差异对抗样本获取模块,用于根据各目标对抗样本的差异度,在目标对抗样本中获取差异度最大的差异对抗样本,并确定差异对抗样本对应的目标调整参数组;
[0148]
一致性匹配模块,用于根据目标词向量,与至少一个调整参数库的标准词向量进行一致性匹配,并根据一致性匹配结果,判断是否存在与目标词向量对应的调整参数库;
[0149]
调整参数库添加模块,用于若是,则将差异对抗样本对应的目标调整参数组,以及将根据目标调整参数组成功获取目标对抗样本的次数作为对应的排序权重,添加至目标词向量对应的调整参数库中;
[0150]
调整参数库新建模块,用于否则,新建目标词向量对应的,包括差异对抗样本对应的目标调整参数组的调整参数库。
[0151]
可选的,在上述技术方案的基础上,目标对抗样本获取模块440,还用于若未能成功获取与原始语料对应的目标对抗样本,则返回执行针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集操作,直至满足结束迭代次数条件。
[0152]
可选的,在上述技术方案的基础上,目标对抗样本获取模块440,包括:
[0153]
调整权重修正单元,用于通过遗传算法,对各目标调整参数组中包括的调整权重进行修正后,返回执行针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集操作,直至成功确定出与原始语料对应的目标对抗样本。
[0154]
上述装置可执行本发明前述所有实施例所提供的对抗样本的生成方法,具备执行上述方法相应的功能模块和有益效果。未在本发明实施例中详尽描述的技术细节,可参见本发明前述所有实施例所提供的方法。
[0155]
图5为本发明另一实施例提供的一种计算机设备的结构示意图,如图5所示,该计算机设备包括处理器510、存储器520、输入装置530和输出装置540;计算机设备中处理器510的数量可以是一个或多个,图5中以一个处理器510为例;计算机设备中的处理器510、存储器520、输入装置530和输出装置540可以通过总线或其他方式连接,图5中以通过总线连接为例。
[0156]
存储器520作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例中的一种对抗样本的生成方法对应的程序指令/模块(例如,一种对抗样本的生成装置中的目标调整参数组获取模块410、替换词集获取模块420、中间对抗样本获取模块430和目标对抗样本获取模块440)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的一种对抗样本的生成方法。也即,该程序被处理器执行时实现:
[0157]
获取与原始语料的目标词向量匹配的至少一个目标调整参数组,目标调整参数组中包括:至少一个调整维度下的调整权重;
[0158]
根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集;
[0159]
根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;
[0160]
将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
[0161]
存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0162]
输入装置530可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入,可以包括键盘和鼠标等。输出装置540可包括显示屏等显示设备。
[0163]
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序
被处理器执行时实现本发明任意实施例所述方法。当然,本发明实施例所提供的一种计算机可读存储介质,其可以执行本发明任意实施例所提供的一种对抗样本的生成方法中的相关操作。也即,该程序被处理器执行时实现:
[0164]
获取与原始语料的目标词向量匹配的至少一个目标调整参数组,目标调整参数组中包括:至少一个调整维度下的调整权重;
[0165]
根据所述目标词向量,确定原始语料对应的待替换词集,并针对每个目标调整参数组,生成与待替换词集匹配的至少一个替换词集;
[0166]
根据各替换词集,生成与原始语料对应的至少一个备选对抗样本;并根据各备选对抗样本与原始语料的差异度,在各备选对抗样本中获取中间对抗样本;
[0167]
将各中间对抗样本分别输入至目标识别模型中,得到匹配的模型识别结果,并将与原始语料的模型识别结果不一致的中间对抗样本,确定为原始语料的目标对抗样本。
[0168]
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0169]
值得注意的是,上述一种对抗样本的生成装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0170]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献