关于一种改进的生成对抗网络及其二分类方法的研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于一种改进的生成对抗网络及其二分类方法的研究
作者:李莉
来源:《科学与信息化》2019年第35期
摘要针对现有的一些人脸识别系统对于真伪人脸识别率不高,且样本数据数量不充足的问题,本文提出采用生成对抗网络(GAN)生成带有数据类标签的数据样本,本文称为对抗样本,将生成的数据样本应用。并将生成对抗网络作为特征分类器,从卷积层中提取特征,将特征输入到支持向量机(SVM)中进行分类,改进了分类准确率,从而验证基于GAN非监督分类的优越性。同时采用生成对抗网络中具有判别能力,即相当于二分类器的判别模型进行分类,进一步提高准确率。
关键词生成对抗网络;对抗样本;特征提取;分类
引言
人脸识别技术越来越多地被应用在日常生活中,例如门禁系统,安检系统,小到移动终端的身份验证,解锁系统。相比于传统的印章、钥匙、签名等身份验证,人脸具有方便携带且不会丢失等优势;相比于指纹、DNA、虹膜等人体生物特征,人脸具有易于获得且包含信息多等优势。
人脸识别技术发展的背后,也存在越来越多的安全隐患,例如利用照片,视频,3D打印模型等方式来骗过识别系统。因此,在提高人脸识别准确率的同时,如何准确的区分真实人脸和照片人脸成为一项重要的工作。针对以上问题,在热红外成像的基础上,Wang等[1]采用多光谱成像技术搭建多光谱成像系统,进行活体检测。Liu等提出了一种基于CNN-RNN架构的深度模型,用于端到端学习深度图和rPPG信号。它使用来自空间和时间辅助信息,用于从面部视频中鲁棒地检测人脸呈现欺诈。这些辅助信息是基于我们关于生活和欺骗面孔之间关键差异的领域知识获取的,其中包括两个视角:空间和时间。從空间的角度来看,已知的是人脸具有不同的深度,而在打印或重放攻击中的脸部是平面深度。因此,可以利用深度作为辅助信息来监督生活和欺骗面孔。从时间的角度来看,显示正常的rPPG信号(即心脏脉冲信号)可以从现场直接检测到。因此,提供不同的rPPG信号作为辅助监控。
采用传统方法进行人脸识别,所得到的结果并不理想。CNN-RNN模型表征能力更强,因而识别率相对较高,但涉及的关键技术较多,网络结构也更加复杂。
本文针对以上问题,采用生成对抗网络解决人脸样本数据的二分类问题。Goodfellow等首先提出生成对抗网络(GAN),用于拟合数据分布。该网络结构主要包括两部分模型,即生成模型与判别模型。生成模型用于拟合数据样本的分布,用符合某种分布(均匀分布、高斯分布等)的噪声生成类似真实数据的样本;判别模型类似一个二分类器,估计输入样本来自真实数据还是生成模型拟合的样本。训练时,两个模型交替迭代,直到达到纳什平衡,此时,判别模型趋向于无法判别输入数据来源(真实数据样本还是生成样本),且生成模型生成的数据分布趋近于真实样本分布。由于生成对抗网络是不需要预先建模的方法,且由随机噪声产生图片,有一定的不可控性,Mehdi等提出条件生成对抗网络(CGAN)。该模型在生成对抗网络模型基础上,对生成模型和判别模型中同时加上约束条件,进而引导数据的生成。CGAN中的
约束条件可以是其他补充语言,类标签(如Mnist数据集中的0到9类标签);或其他模态信息(如图像的描述语言)。Radford等为了解决生成对抗网络训练不稳定且训练过程不可控等缺点,提出深度卷积生成对抗网络(DCGAN)。该模型在原始的生成对抗网络[1]基础上,将卷积层引入生成模型和判别模型中,并采用ReLU激活函数及批量归一化技术。
在分类应用方面,TimSalimans等首先将生成对抗网络用于分类任务,对判别模型输出使用softmax,将真实数据分为K类,将生成模型生成的数据样本划分为K+1类。相应的网络变为K+1类问题。本文利用生成对抗网络强大的拟合数据分布能力,采用数据增强的方法,生成具有干扰作用的对抗样本,并将深度数据生成对抗网络作为特征提取器,提高人脸二分类问题的准确率。
1 模型结构和方法
1.1 生成对抗网络模型结构
生成对抗网络描述了生成模型(G网络)和判别模型(D网络)互相博弈的过程。生成模型G用来捕获数据分布,判别模型D用来估计样本来自训练数据而不是生成模型G的概率。生成模型G的训练过程是最大化判别模型D估计错误的概率。理论上,当在生成模型G和判别模型D收敛时(纳什均衡),模型G生成数据逼近训练数据分布,判别模型D对于生成数据判别准确率为0.5。生成模型G和判别模型D可以通过判别模型的估计误差反向传播进行训练。
定义生成模型G中对于数据的分布,表示真实数据分布,输入噪声的先验变量,模型表示噪声到数据空间的映射,其中表示参数;的输出是0-1范围的实数,表示输入图片是真实数据分布而不是的概率。最小化D网络估计误差表示增强D网络对于数据来源的识别准确率。同时,通过最小化训练G网络。关于D和G网络的训练可以描述为以下极大极小化博弈问题为:
(1)
本文采用深度卷积生成对抗网络(DCGAN),该网络将原始生成对抗网络中的所有多层感知机修改为带步长的卷积层,让网络空间自己学习上采样和降采样,使网络结构更稳定,减少训练的不确定性。
1.2 数据增强
一般而言,深度学习中的神经网络的参数都是数以百万计的,而收敛性和最终性能则依赖大量数据集的训练,但实际情况中,数据集并没有那么多。获得新的数据比较麻烦,且耗费大量人力物力等。此外,还有一些数据样本很难获得,例如一些医疗数据,此时可采用的方法是
对已有数据进行增强。对已有数据进行预处理,比如平移、翻转、旋转、缩放、裁剪和颜色变化等,从而生成更多数据。这些数据用于神经网络训练,可以一定程度地提高泛化能力。
本文提出一种特殊的数据增强的方法。生成对抗网络中的生成模型可以生成样本数据,但此时生成的样本数据是不带类别标签,随机产生的,并不能很好的应用。采用数据增强的方法,控制生成模型产生带有类别标签的图片,从而达到增加样本数据集的目的。在训练判别网络时,将真实样本数据男性给标签0,女性给标签1,将生成样本数据给标签0;在训练生成网络时,所有样本数据均给标签0,通过这样的方法,当网络达到收敛时,判别网络此时具有区分性别的能力,生成网络可以生成带有标签信息的样本数据。我们选取标签为0.5附近时,所产生的样本数据图片在男女和女性之间,即,性别接近于中性的样本,本文称这些样本为对抗样本。这些样本相较于男性、女性样本更难区分,分类任务复杂度更高。训练网络结构时,加入这些样本,可以促进模型学习更多复杂情况,提高分类准确率。
1.3 特征提取
由2.1中已知,判别模型D用来估计样本来自训练数据而不是生成模型G的概率,当D 网路输出的值无限接近于1时,表示输入的是真实样本数据,当D网络输出的值无限接近于0时,表示输入的是G网络生成的样本数据。由2.2中可知,在训练时加入标签,此时生成模型G有方向的生成图片,判别模型D也具有分类能力,可以判断输入样本数据是男性还是女性。
具体方法步骤是,采用数据增强的方法,在训练时输入样本标签信息,男性给标签1,女性给标签0。训练网络,并从生成模型的卷积层中,选取特征最多的一层(本文中选取的第四层)提取卷积特征,将所有的特征平展后串联,用于表示一个整体向量,并将提取的卷积特征放入到支持向量机(SVM)分类器中进行分类。达到很好的分类效果,证明此特征提取方法可以得到较好的分类准确率。
算法路线图如下:
图1 特征提取器算法路线图
2 实验结果及分析
本文中实验基于Python编程语言及其Pytorch深度学习框架,选用的人脸数据集NUAA 和UTKFace,对本文所提出的方法进行测试,验证其有效性。NUAA欺骗人脸库包括通过网络摄像头采集的15个人的真实人脸图像序列和照片人脸图像序列。本实验采用了NUAA欺骗人脸库中的Detectedface部分,即完整人脸图,其涵盖了不同性别,多种面部表情,不同光照条件及背景等多种数据样本。UTKFace作为常用的大型人脸数据库,其采样对象年龄跨度从0到116岁,包含超过20,000张带有年龄、性别和种族注释的人脸图像。这些图像在姿态、面