AI造出的假图片恐怕很难再骗过AI了。 连英伟达本月刚上线的StyleGAN2也被攻破了。即使是人眼都分辨看不出来假脸图片,还是可以被AI正确鉴别。 不论是GAN生成的,Deepfake的,超分辨率的,还是怎样得来的,只要是AI合成图片,都可以拿一个通用的模型检测出来。 尽管各种CNN的原理架构完全不同,但是并不影响检测器发现造假的通病。 只要做好适当的预处理和后处理,以及适当的数据扩增,便可以鉴定图片是真是假,不论训练集里有没有那只AI的作品。 这就是Adobe和UC伯克利的科学家们发表的新成果。 有网友表示,如果他们把这项研究用来参加Kaggle的假脸识别大赛,那么将有可能获得最高50万美元奖金。 然而他们并没有,而是先在ArXiv公布了预印本,并且还被CVPR 2020收录。 最近,他们甚至将论文代码在GitHub上开源,还提供了训练后的权重供读者下载。 造出7万多张假图要考验AI鉴别假货的能力,论文的第一作者、来自伯克利的学生Wang Sheng-Yu用11种模型生成了不同的图片,涵盖了各种CNN架构、数据集和损失。 所有这些模型都具有上采样卷积结构,通过一系列卷积运算和放大操作来生成图像,这是CNN生成图像最常见的设计。 虽然生成这些图片所用的算法大相径庭、风格迥异,但是总有会有一些固有缺陷,这里面既有CNN本身的问题,也有GAN的局限性。 这是因为常见的CNN生成的内容降低了图片的表征能力,而这些工作大部分集中在网络执行上采样和下采样的方式上。下采样是将图像压缩,上采样是将图像插值到更大的分辨率上。 之前,Azulay和Weiss等人的研究表明,表明卷积网络忽略了经典的采样定理,而跨步卷积(strided convolutions)操作减少了平移不变性,导致很小的偏移也会造成输出的极大波动。 另外,朱俊彦团队发表在ICCV 2019上的论文表明,GAN的生成能力有限,并分析了预训练GAN无法生成的图像结构。 今年7月,哥伦比亚大学的Zhang Xu等人进一步发现了GAN的“通病”,常见GAN中包含的上采样组件会引起伪像。 他们从理论上证明了,这些伪像在频域中表现为频谱的复制,这在频谱图上表现十分明显。 比如同样是一张马的图片,真实照片的信号主要集中在中心区域,而GAN生成的图像,频谱图上出现了四个小点。 因此他们提出了一种基于频谱而不是像素的分类器模型,在分辨假图像上达到了最先进的性能。 而Wang同学发现,不仅是GAN,其他的CNN在生成图像时,也会在频谱图中观察到周期性的图案。
训练AI辨别真伪刚才生成的数据集,包含了11个模型生成的假图。 不过,真假分类器并不是用这个大合集来训练的。 真正的训练集里,只有英伟达ProGAN这一个模型的作品,这是关键。 团队说,只选一个模型的作品用来训练,是因为这样的做法更能适应现实任务: 现实世界里,数据多样性永远是未知的,你不知道自己训练出的AI需要泛化到怎样的数据上。所以,干脆就用一种模型生成的图像来训练,专注于帮AI提升泛化能力。 而其他模型生成的作品,都是测试泛化能力用的。 (如果用很多模型的假图来训练,泛化任务就变得简单了,很难观察出泛化能力有多强。) 具体说来,真假分类器是个基于ResNet-50的网络,先在ImageNet上做了预训练,然后用ProGAN的作品做二分类训练。
|