[发明专利]一种基于生成模型的对抗样本生成方法有效
申请号: | 202110621339.3 | 申请日: | 2021-06-03 |
公开(公告)号: | CN113361594B | 公开(公告)日: | 2023-10-20 |
发明(设计)人: | 杨高明;李明炜;方贤进;常昊乾 | 申请(专利权)人: | 安徽理工大学 |
主分类号: | G06V10/774 | 分类号: | G06V10/774;G06V10/82;G06N3/0475;G06N3/094 |
代理公司: | 北京同辉知识产权代理事务所(普通合伙) 11357 | 代理人: | 苗苗 |
地址: | 232001 安徽*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 生成 模型 对抗 样本 方法 | ||
1.一种基于生成模型的对抗样本生成方法,其特征在于,包括以下步骤:
步骤1、获取需要进行对抗训练的模型在训练阶段使用的数据集,并进行预处理,将得到的数据集划分为训练集Xtrain和测试集Xtest两部分;
步骤2、使用训练集Xtrain训练所需的对抗样本生成模型,批量生成对抗样本。
2.根据权利要求1所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤1包括:
步骤1.1、将获得的数据集中的图像大小调整至需要进行对抗训练的模型在训练时使用的大小,将对应的标签转化为独热形式;
步骤1.2、用转化完成的图像数据和对应的标签组成数据集,将得到的数据集划分为训练集Xtrain和测试集Xtest两部分。
3.根据权利要求1所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤2包括:
步骤2.1、使用训练集Xtrain训练所需的对抗样本生成模型;
步骤2.2、使用测试集Xtest作为训练完成的对抗样本生成模型的输入,生成对抗样本,将生成的对抗样本作为目标模型的输入,测试生成器G的效果;
步骤2.3、使用经过测试的生成器G在整个经过预处理的数据集上生成对抗样本,这些样本即可参与目标模型的对抗训练。
4.根据权利要求1所述的基于生成模型的对抗样本生成方法,其特征在于,所述生成模型的训练方法包括以下步骤:
S1、获取需要进行对抗训练的模型在训练阶段使用的数据集,并进行预处理,将得到的数据集划分为训练集Xtrain和测试集Xtest两部分;
S2、构造深度自编码器结构,使用Xtrain对该结构进行训练,取训练完成的解码器部分作为映射器M;
S3、构建随机模型f并对其进行预训练;
S4、构建生成器G、判别器D,使用步骤2和步骤3所得的映射器M和随机模型f构成对抗样本生成模型,并对其进行预训练。
5.根据权利要求4所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤S1具体为:将获得的数据集中的图像统一转化为3通道PNG格式,图像大小调整至需要进行对抗训练的模型在训练时使用的大小,用转化完成的图像数据和对应的标签组成数据集,将得到的数据集划分为训练集Xtrain和测试集Xtest两部分。
6.根据权利要求4所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤S2包括:
S201、根据获取到的数据集的复杂程度,构造深度自编码器结构;
S202、使用训练集Xtrain输入深度自编码器进行训练,获取自编码器的解码器部分作为构建对抗样本生成模型所需的映射器M。
7.根据权利要求6所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤S202中训练M时使用ADAM优化器,使用MSELoss作为损失函数。
8.根据权利要求4所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤S3包括:
S301、根据获取到的数据集的复杂程度,构建随机模型f,随机模型是结构可以产生随机变化的模型,由两个或两个以上的卷积层和全连接层随机组合而成,前向传播过程中,随机的对卷积层和全连接层进行组合,从而使得输出结果保持改变;
S302、使用训练集Xtrain输入随机模型f进行训练,使用测试集Xtest测试随机模型精度,保证精度高于85%,否则重复该步骤。
9.根据权利要求8所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤S302中训练f时使用SGD优化器,使用CrossEntropyLoss作为损失函数。
10.根据权利要求4所述的基于生成模型的对抗样本生成方法,其特征在于,所述步骤S4包括:
步骤4.1、根据获取到的数据集的复杂程度,参考WGAN的架构,设计生成器G和判别器D,G和D的输出层不使用激活函数。
步骤4.2、用步骤2和步骤3所得的映射器M、随机模型f和步骤4.1构建的生成器G、判别器D组成对抗样本生成模型,使用训练集Xtrain对G和D进行预训练,训练步骤如下:
从Xtrain中随机采样一批(x,l);
将x输入映射器M,得到向量v;
将v输入生成器G,获得生成结果xad,,计算:
Lossx=||xad-x||2,
Lossadv=L(xad,l);
将生成结果xad输入判别器D,获得输出D(xad),计算:
LossGAN=Ex~p(x)[D(x)]-Ev~p(x)[D(xad)];
最小化LossGAN+αLossx+βLossadv,更新生成器G和判别器D的参数,其中α和β为超参数,根据生成器的表现需要对其做出调整;
重复以上过程直至对抗样本生成模型收敛。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽理工大学,未经安徽理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110621339.3/1.html,转载请声明来源钻瓜专利网。