Sheng-Yu Wang、Alexei A. Efros等作者沉沉、蛋酱参与

想用GAN和Deepfake瞒天过海,没那么容易:这是Adobe和加州伯克利的新研究

CNN 生成的图像与真实图像很难分辨吗?来自 Adobe 和加州伯克利的研究者发现,仅仅在一种 CNN 生成的图像上进行训练的分类器,也可以检测许多其他模型生成的结果。或许,GAN 和 Deepfake 在「瞒天过海」上也不是万能的。


近来,诸如生成对抗网络(GAN)的深度图像生成技术快速发展,引发了公众的广泛关注和兴趣,但这也使人们担心,我们会逐渐走入一个无法分辨图像真实与否的世界。

这种担忧尤其体现在一些特定的图像操纵技术上,例如用来进行面部风格替换的「Deepfake」,以及逼真的人像生成。其实这些方法仅仅是一种广泛应用技术中的两个实例:基于卷积神经网络(CNN)的图像生成

来自 Adobe 和加州伯克利的研究人员在论文预印本平台 arXiv 上传了《CNN-generated images are surprisingly easy to spot... for now》,他们提出,即使是在一种 CNN 生成的图像所训练的分类器,也能够跨数据集、网络架构和训练任务,展现出惊人的泛化能力。这篇论文目前已被 CVPR 2020 接收,代码和模型也已公布。

  • 论文地址:https://arxiv.org/abs/1912.11035

  • 项目地址:https://github.com/peterwang512/CNNDetection


在这项工作中,研究者希望找到一种用于检测 CNN 生成图像的通用图像伪造检测方法。检测图像是否由某种特定技术生成是相对简单的,只需在由真实图像和该技术生成的图像组成的数据集上训练一个分类器即可。

但现有的很多方法的检测效果很可能会与图像生成训练中使用的数据集(如人脸数据集)紧密相关,并且由于数据集偏差的存在,一些方法在新数据(例如汽车)测试时可能泛化性较差。更糟糕的是,随着图像生成方法的发展,或是用于训练的技术被淘汰,这种基于特定生成技术的检测器可能会很快失效。

所以 CNN 生成的图像是否包含共同的伪造痕迹呢?例如某种可检测的 CNN 特征,这样就可以将分类器推广到整个生成方法族,而不只是针对单个生成方法。一般来说,泛化性确实一直是图像伪造检测领域的难题。例如,最近的一些工作 [48,13,41] 观察表明,对某一种 GAN 架构所生成图像进行训练的分类器在其他架构上进行测试时性能较差,并且在许多情况下,仅仅训练数据集的改变(而非架构或任务)就会导致泛化失败 [48]。这是有道理的,因为图像生成方法千差万别,它们使用的是不同的数据集、网络架构、损失函数和图像预处理方式。

但研究者发现,与当前人们的理解相反,为检测 CNN 生成的图像所训练的分类器能够跨数据集、网络架构和训练任务,展现出惊人的泛化能力。在本文中,研究者遵循惯例并通过简单的方式训练分类器,使用单个 CNN 模型(使用 ProGAN,一种高性能的非条件式 GAN 模型)生成大量伪造图像,并训练一个二分类器来检测伪造图像,将模型使用的真实训练图像作为负例。

此外,本文还提出了一个用于检测 CNN 生成图像的新数据集和评价指标,并通过实验分析了影响跨模型泛化性的因素。

基于 CNN 生成模型的数据集

研究者创建了一个 CNN 生成图像的新数据集「ForenSynths」,该数据集由 11 种模型生成的图像组成,从非条件式的图像生成方法(如 StyleGAN)到超分辨率方法,以及 deepfake。每个模型都在适合其特定任务的不同图像数据集上进行训练。研究者还继续在论文撰写后发布的模型上评估检测器,发现它可以在最新的非条件式 GAN——StyleGAN2 实现开箱即用。

表 1:生成模型。研究者评估了伪造检测分类器在多种基于 CNN 的图像生成方法上的效果。


实验:检测 CNN 生成的图像

鉴于数据集中的非条件式 GAN 模型可以生成任意数量的图像,研究者选择了一种特定的模型 ProGAN 来训练检测器。使用单一模型进行训练,这个方法与现实世界中的检测问题极为相似,即训练时并不清楚需要泛化模型的多样性和数量。

接着,研究者创建了一个仅由 ProGAN 生成的图像和真实图像组成的大规模数据集。使用 20 个模型,每个模型在不同的 LSUN 物体类别上进行训练,并生成 36K 的训练图像和 200 张验证图像,每个模型所用的真实和伪造的图像数量是相等的。一共有 720K 图像用于训练、4K 图像用于验证。

这一实验的主要思想是在这个 ProGAN 数据集上训练一个判断「真实或伪造」的分类器,并评估该模型对其他 CNN 合成图像的泛化效果。在分类器的选择上,使用了经过 ImageNet 预训练的 ResNet-50,并在二分类的设定下进行训练。

表 2:跨生成器的泛化结果。图中展示了 Zhang 等人提供的基线和本文模型在不同分类器上的平均准确度(AP),共 11 个生成器参与测试。符号 X 和 † 分别表示在训练时分别以 50%和 10%的概率应用数据增强。随机表现是 50%,可能的最佳表现是 100%。在测试用的生成器被用于训练时,结果显示为灰色(因为它们不是在测试泛化性)。黑色的值表示跨生成器的泛化性结果。其中,最高值以黑色加粗显示。通过减少数据扩充,研究者展示了针对 ProGAN 中较少类的消融实验结果。同时通过平均所有数据集的 AP 分数来得到 mean AP。为了方便比较,子集被绘制在图 3、4、5 中。

研究者将该方法的泛化性能与其他图像伪造检测方法进行了比较。Zhang 等人的方法提出了一套经过训练可以检测由通用 CNN 架构生成的伪造图像的分类器,这套通用架构在许多图像生成任务中都有出现(如 CycleGAN 和 StarGAN)。他们引入了 AutoGAN,这是一种基于 CycleGAN 生成器的自动编码器,可以模拟类似于 CycleGAN 生成的伪造图像。研究者考虑了 Zhang 等人预训练模型的四个变体,其中每个都分别从两个图像源(CycleGAN 和 AutoGAN)之一和两种图像表示(图像和光谱)之一进行训练。在训练过程中,所有四个变体都使用了 JPEG 和放缩进行数据增强,以提高每个模型的鲁棒性。

除了 CycleGAN([48] 使用的模型架构)和 StarGAN(两种方法都获得了接近 100.0 AP 的结果)外,本文提出的模型对其他架构的泛化性能明显更好。比较结果可见于表 2 和图 5。

表 2 展示了使用不同数据增强方法进行训练的泛化能力。研究者发现,即使在测试时未使用此类扰动,使用激进的数据增强方法(以模拟后处理的形式)也提供了惊人的泛化能力。此外也观察到这些模型明显对于后处理更加鲁棒(图 6)。

图 3:数据增强方法的效果。所有的检测器都在 ProGAN 上进行训练,在其他生成器上进行测试(AP 结果如图所示)。总体来说,使用数据增强进行训练可以帮助提高模型的效果。其中超分辨率模型和 DeepFake 是例外。

图 4:数据集多样性的效果。所有的检测器都在 ProGAN 上进行训练,在其他生成器上进行测试(AP 结果如图所示)。使用更多类进行训练可以提高模型表现。所有的训练都以 50% 的概率使用了模糊和 JPEG 进行数据增强。

图 5:模型比较。研究者观察到,和 Zhang 等人的方法相比,在大多数情况下,本文模型可以更好地推广到其他架构。值得注意的例外是 CycleGAN(与 [48] 中的训练架构相同)、StarGAN(两种方法均获得接近 100. AP 的结果)和 SAN(应用数据增强会导致性能下降)。

讨论

结果表明,如今的 CNN 生成的图像保留了可检测到的特征,从而可以将它们与真实照片区分开。这就使得鉴别伪造照片的分类器无需大量修改即可从一种模型推广到另一种模型。

但是,这并不意味着这种情况将持续下去。首先,即使是最好的伪造检测器,也要在真实检测率和假阳性率之间进行权衡。其次,伪造照片可能会在社交媒体平台(Facebook,Twitter,YouTube 等)上被大量恶意使用,因此数据将会被剧烈变换(压缩,缩放,重采样等)。最后,迄今为止,被记录在案的的大多数有效的伪造实例都使用经典的「浅层」方法,例如 Photoshop。

在论文的最后,研究者也提到,检测伪造图像只是解决视觉虚假信息威胁这一难题的一小部分,有效的解决方案需要融合从技术、社会到法律等各方面的广泛战略。

参考链接:
 
[48] Xu Zhang, Svebor Karaman, and Shih-Fu Chang. Detecting and simulating artifacts in gan fake images. In WIFS, 2019. 
[41] RunWang,LeiMa,FelixJuefei-Xu,XiaofeiXie,JianWang, and Yang Liu. Fakespotter: A simple baseline for spotting ai-synthesized fake faces. arXiv preprint arXiv:1909.06122, 2019. 2 
[13] Davide Cozzolino, Justus Thies, Andreas Ro ̈ssler, Christian Riess, Matthias Nießner, and Luisa Verdoliva. Forensictrans- fer: Weakly-supervised domain adaptation for forgery detec- tion. arXiv preprint arXiv:1812.02510, 2018. 2 
入门Adobe加州伯克利大学DeepFakeCNNGAN
2
相关数据
重采样技术

重采样是指根据一类象元的信息内插出另一类象元信息的过程。在遥感中,重采样是从高分辨率遥感影像中提取出低分辨率影像的过程。常用的重采样方法有最邻近内插法(nearest neighbor interpolation)、双线性内插法(bilinear interpolation)和三次卷积法内插(cubic convolution interpolation)。

自动编码器技术

自动编码器是用于无监督学习高效编码的人工神经网络。 自动编码器的目的是学习一组数据的表示(编码),通常用于降维。 最近,自动编码器已经越来越广泛地用于生成模型的训练。

假阳性技术

假阳性是指模型因为种种原因把不应该分类成特定情况的人/物错误地分类到了该分类的情况。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

图像生成技术

图像生成(合成)是从现有数据集生成新图像的任务。

CycleGAN技术

GAN的一个变种

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

生成对抗网络技术

生成对抗网络是一种无监督学习方法,是一种通过用对抗网络来训练生成模型的架构。它由两个网络组成:用来拟合数据分布的生成网络G,和用来判断输入是否“真实”的判别网络D。在训练过程中,生成网络-G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”D,而D则尽可能的分辨真实数据和生成网络的输出,从而形成两个网络的博弈过程。理想的情况下,博弈的结果会得到一个可以“以假乱真”的生成模型。

推荐文章
暂无评论
暂无评论~