基于卷积痕迹挖掘的GAN生成假脸图片检测
2022-08-02罗正军张丽丽
罗正军,张丽丽
(南京航空航天大学 经济与管理学院,江苏 南京 211106)
0 引 言
随着以生成对抗网络为代表的深度学习生成技术不断提高,虚假图片的仿真度愈来愈高,人脸的生成与篡改所带来的安全威胁已引起广泛关注。Choi等[1]利用Inception V3、VGG16、VGG19和ResNet50四种网络结构提取图片特征。Li等[2]在CelebA数据集上测试了GAN自有判别器和VGG16网络分类能力。Andreas等[3]创建并公开了大规模假脸图像数据集FaceForensics++,并在此数据集上测试了多种CNN模型。Dang等[4]构建CNN模型提取图片特征,分类准确率优于VGG模型。Fu等[5]设计了基于CNN的双通道结构,从原始RGB图像和预处理图像的高通分量中提取图片特征。Tariq等[6]基于浅层神经网络模型用来检测GAN生成的人脸图片和人工创建的人脸图片。Bonettini等[7]利用本福德定律、Luca[8]利用转置卷积痕迹、Scott等[9]基于颜色饱和度和曝光情况提取图片特征,再对GAN生成虚假图片进行分类。
GAN能够按帧生成虚假视频,因此可以将图片检测技术推广到DeepFake虚假视频的检测中[10-11]。李旭嵘等[12]提出了基于EfficientNet的双流网络检测模型,赵磊等[13]提出了一种基于时空特征一致性的检测模型,陈鹏等[14]利用全局时序特征和局部空间特征检测虚假视频。胡永健等[15]利用神经分割网络预测篡改区域进行假脸视频跨库检测。张怡暄等[16]利用视频相邻帧人脸图像差异的特征来进行预测。
考虑到已有模型较难提取通用特征用于区分多种不同GAN生成的虚假图片,导致现有模型泛化能力不足。该文改进了Luca等人[8]的图片特征提取模型,基于对比损失函数和图片像素局部相关性优化图片特征提取过程,同时结合梯度下降和粒子群算法优化模型求解过程。最后在FFHQ数据集上进行模型检测性能测试,该模型在检测准确率和AUC取值方面有着很好的表现,检测准确率明显优于VGG16模型。
1 GAN生成机理
生成对抗网络[17]是一种生成模型,其训练过程是对抗博弈的过程,模型结构如图1所示。
图1 GAN模型结构
GAN的主要结构包括一个生成器G(Generator)和一个判别器D(Discriminator),生成器的目标函数为式(1),作用是根据输入的一组向量生成图片,判别器的目标函数为式(2),作用是区分从训练数据抽取的真实图片和从生成器抽取的图片。在迭代过程中判别器学习正确地区分真假图片,生成器试图欺骗判别器让其相信生成的图片是真的,当判别器的识别能力达到一定程度却无法正确识别数据来源时,就得到了一个能够生成清晰度和分辨率较高图片的生成器。
(1)
(2)
生成器主要由转置卷积层、池化层和全连接层构成,转置卷积层是一个上采样过程,利用一个卷积核对输入的多维数据进行卷积计算进而得到一个维度更高的输出数据。从GAN图片生成过程来看,生成器中各层所执行的操作都会对像素产生影响,特别是进行上采样的转置卷积层。在一张图片像素的计算过程中,卷积核是始终保持不变的,会造成图片像素的内在关系。
2 检测模型设计与实现
检测模型的总体结构如图2所示。
图2 图片检测模型结构
检测模型主要由特征提取模块、对比损失模块以及机器学习分类模块三个主要部分构成。在特征提取模块完成特征向量求解过程,满足模型约束条件,满足约束条件的两张图片的卷积核及其相应的图片标签信息在对比损失模块完成欧氏距离的计算获得优化后的特征向量。最后利用机器学习算法对图片进行分类。
2.1 基于像素局部相关性思想构建特征向量提取模型
GAN生成虚假图像的像素点之间存在的局部相关性可以用式(3)表示。即存在一个N×N的卷积核K使像素点I0(x,y)周边的像素点经过卷积计算和该像素点存在近似关系。
I0(x,y)~I1(x,y)
(3)
本模型的目的是在图片的RGB每个通道中各寻找一个N×N的卷积核能够表征图片像素之间的局部相关关系,而该卷积核K作为图片的特征向量会使GAN生成的图片区别于真实图片。用方差表示新估计的图片与原始图片之间的近似程度,如公式(4)所示。
(4)
基于对比损失函数优化特征向量提取过程。对比损失(contrastive loss)通常用在传统的孪生神经网络中,可以通过计算两个样本特征的欧氏距离来有效表达成对样本的匹配程度,还可以用于训练特征提取的模型。对数据集中的所有图片采用随机匹配的方式,每两张图片之间进行对比,通过对比损失计算,评价两张图片的相似度,按照同类图片相似度高,异类图片相似度低的原则,继续迭代计算卷积核,进而实现特征向量提取过程的优化。对比损失函数的表达式如公式(5):
Y)max(m-Dk,0)2)
(5)
经过优化后,模型需要求解的损失函数为公式(6),需要满足约束条件(7)~(10),其中Δ为方差的可变动范围,且k0,0一直为0。因此,模型分别在RGB三通道求解得到N×N的卷积核K,最终形成N×N-3维的特征向量。
minL(W,(Y,Ki,Kj))
(6)
(7)
(8)
ki0,0=0
(9)
kj0,0=0
(10)
2.2 基于EM-PSO算法的优化求解设计
模型求解主要可以分为两部分,一部分是对比损失部分特征向量的求解,另一部分是约束条件方差E的求解。
(11)
(12)
EM算法主要依赖梯度下降完成迭代过程,梯度下降法的计算过程就是沿梯度的负方向搜索最小值,但在多维数据的求解中只考虑局部梯度易陷入局部最优造成方差早熟收敛的问题,使方差无法收敛到约束范围内。
PSO算法常用于求解优化问题,初始化一群随机粒子(随机解),通过迭代找到最优解。该算法在迭代求解过程中既考虑了每个粒子的历史最优,又考虑了种群的全局最优,但忽略了目标函数本身的变化规律。在求解过程中可以通过求解梯度的方式获知函数本身的变化规律,为了能充分利用这两种方法的优势,并克服早熟收敛的缺陷,在迭代过程中综合梯度下降和粒子群算法,利用粒子群算法的全局思想改善梯度下降易陷入局部最优的缺点,形成EM-PSO算法。即在各个种群的迭代过程中,将种群受自身的最佳历史位置影响改为每个种群受梯度下降方向影响,如公式(13)所示。EM-PSO算法的整体求解过程如算法1的伪代码所示。
(13)
(14)
算法1:EM-PSO求解算法。
输入:训练集图片I,模型迭代次数iter,种群数M。
输出:卷积核K(特征向量)。
(1)初始化种群
(2)初始化全局最优值Egbest,全局最优向量Kgbest
(3)计算图片I的方差E0
(4)Fort=0 to iter do:
(5) Fori=0 toMdo:
(10) end For
(11)更新全局最优值Ebest,全局最优向量Kgbest
(12) ifE0-Δ (13) break (14) end For 随机选取一张数据集图片进行实验,比较直接利用梯度下降(EM)求解和混合梯度下降和粒子群算法(EM-PSO)求解时,方差E随迭代次数的变化情况,如图3所示。 (a) (b)图3 方差E随训练次数变化趋势 从图3(a)中曲线可以看出,直接利用梯度下降求解时,算法初始化值对EM算法迭代过程会造成较大影响,且易出现提前收敛现象,使方差无法收敛到约束范围内。EM-PSO算法会一定程度上优于EM算法,且收敛速度较快,但EM-PSO算法仍存在一些缺点,比如每一次迭代花费的时间久,且存在随机生成的初始化值使得EM-PSO和EM算法的收敛效果相似,如图3(b)所示。 为了验证提出检测模型的有效性,从FFHQ高清数据集中选取2 000张图片进行实验,并选取StyleGAN、StyleGAN2生成的虚假人脸图片各2 000张构成模型检测数据集。其中80%作为训练集,20%作为测试集,图片大小均为1 024×1 024×3。 针对分类模型,准确率Accuracy通常用来评估一个模型的全局分类正确情况,准确率越高则模型的分类正确率越高。准确率的计算公式如下: (15) 式中,NTP为真正例(true positive,TP),表示被正确分类的GAN图片的数量;NTN为真负例(true negative,TN),表示被正确分类的真实图片的数量;NFP为假正例(false positive,FP),表示被错误分类的GAN图片的数量;NFN为假负例(false negative,FN),表示被错误分类的真实图片的数量。 为了更加全面地评估模型,还采用ROC曲线和AUC值作为评价指标,ROC曲线描述在分类混淆矩阵中FPR与TPR两个量之间的相对变化情况。横轴为假正例率(false positive rate,FPR),纵轴是真正例率(true positive rate,TPR),即可以通过ROC曲线的变化情况考察GAN生成的虚假图片是否可以被正确分类。由于存在样本不均衡实验,ROC曲线这种模型评价方法较准确率更能评价模型的分类性能。AUC被定义为ROC曲线与坐标轴围成的面积,可以直观地评价分类器的好坏,值越大越好。 在方差求解部分,损失函数为方差,实验将模型的迭代次数iter设置为40次,约束条件Δ的取值范围为原始图片像素点方差的10%。在对比损失部分,在RGB每个通道上利用3×3的卷积核求解特征向量,设置变化阈值,当Lt<0.001时,停止迭代。在获得图片的特征向量后,以此作为输入,利用机器学习分类算法完成检测实验,通过对比实验最终选取支持向量机SVM作为模型分类器,其中核函数选取RBF函数。 实验1:在不均衡样本上进行检测。 当迭代次数C=0时,即当方差满足约束条件就停止迭代获得特征向量。从表1可以看出,检测准确率为67.08%,AUC值为0.47,模型检测效果较差。从表1和图4可以看出,随着迭代效果次数的增加,模型的拟合效果越来越好,在C=5时,模型检测准确率为94.25%,AUC值为0.99。 图4 不平衡样本模型检测ROC曲线和AUC值 表1 不均衡样本模型检测准确率 为了研究迭代次数对检测准确率的影响,增加迭代次数至10次。实验结果表明,模型检测准确率随迭代次数的增加而提高,当C≥8时,模型检测准确率变化趋于平稳,最高可达99%。 实验2:在均衡样本上进行检测。 分别将StyleGAN和StyleGAN 2生成的图片与真实图片FFHQ数据集进行分类实验。 StyleGAN VS FFHQ:从表2可以看出,当迭代次数为5时,利用SVM进行分类,准确率为90.62%,对应的AUC值为0.98。 表2 均衡样本模型检测准确率 StyleGAN2 VS FFHQ:从表2可以看出,当迭代次数为5时,利用SVM进行分类,准确率为92.25%,对应的AUC值为0.99。迭代过程中除迭代次数为3时,检测效果均优于StyleGAN与FFHQ,且从图5的ROC曲线对比情况可以看出,在区分GAN虚假图片的过程中,模型能更准确检测StyleGAN2生成的虚假图片。 (a)StyleGAN VS FFHQ (b)StyleGAN2 VS FFHQ图5 均衡样本模型检测ROC曲线和AUC值 为了研究卷积核大小对检测结果的影响,对5×5的卷积核的分类效果进行实验,实验结果如表3所示。当迭代次数为3时,模型检测效果最佳,准确率最高为90.50%,但检测准确率均低于卷积核为3×3时的检测结果。 表3 卷积核为5×5的模型检测准确率 为了验证模型的有效性,以VGG16模型展开对比实验,在不均衡实验中,VGG16模型检测准确率为67%,在均衡实验中,最佳检测结果为50.28%,文中模型明显优于VGG16模型。 针对目前的检测模型大多侧重于针对某一种生成对抗模型生成的虚假图片,从GAN生成过程出发,基于GAN生成图片像素的局部相关性和对比损失原理构建了适用于多种GAN生成人脸虚假图片混合数据集的检测模型,研究了卷积核在分类过程中的作用,并在求解过程中结合梯度下降和粒子群位置更新方法改进EM算法迭代求解过程,利用PSO算法的全局思想克服梯度下降造成的早熟收敛问题,改善了收敛效果。 对StyleGAN和StyleGAN2生成的人脸图片进行了分类检测。实验结果表明,3×3的卷积核分类准确率优于5×5的卷积核分类准确率,其中3×3的卷积核在迭代次数达到5次时,在不均衡样本实验中模型检测准确率可达94.25%,AUC取值可达0.99,且不均衡样本实验效果略优于均衡样本实验。 生成对抗技术不止有StyleGAN和StyleGAN2,还有诸多其他典型的生成对抗技术,因此下一步的研究重点是在其他生成对抗技术生成的虚假图片数据集上验证本模型是否具有通用性,并改进检测模型,使模型具有更广泛的应用。2.3 EM-PSO算法实验结果分析
3 实验结果与分析
3.1 实验数据
3.2 评判标准
3.3 实验过程及结果分析
4 结束语