Press "Enter" to skip to content

CycleGAN通过在生成的图像中隐藏信息来学习作弊

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

在NeurIPS 2017大会上,斯坦福大学(Stanford)和谷歌的一组研究人员对神经网络CycleGAN如何学会作弊进行了一项非常有趣的研究。研究人员训练CycleGAN将航拍图像转换成街道地图,反之亦然。他们发现,神经网络学会了将原始图像的信息以低振幅高频信号的形式隐藏在生成的图像中,这种低振幅高频信号几乎像是噪音。利用这些信息,产生器可以再现原始图像,从而满足循环一致性要求。

 

 

CycleGAN是什幺?

 

CycleGAN是一种进行图像到图像转换的算法,其中神经网络需要通过一组对齐的图像对训练集来学习输入图像和输出图像之间的映射。使CycleGAN有别于其他GAN算法的是它不需要成对的训练数据。它将图像从源域X转换到目标域Y,而不需要成对的示例。

 

CycleGAN是如何隐藏信息的?

 

的实验中,研究人员训练CycleGAN地图数据集,包括1000航拍照片X和Y 1000地图训练后500时代,模型制作两个映射F:X→Y和G:Y→X生成现实的这些图像域的样本。

 

在对模型进行训练时,研究人员使用了网络无法看到的航拍照片。生成的图像与源图像几乎完全相同。经过仔细观察,研究人员发现,在原始航拍照片和航拍重建照片中都存在着中间图中看不到的各种细节,如下图所示:

 

来源:CycleGAN

 

该网络几乎在每一张航拍照片上都显示了这一结果,即使它是在地图以外的数据集上训练的。在进行了这一观察之后,研究人员得出结论,CycleGAN正在学习一种编码方案,它在生成的地图中隐藏有关航拍照片的信息。

 

这种信息隐藏的含义是什幺?

 

研究人员强调,编码信息的这种特性会使该模型容易受到对抗性攻击。研究表明,CycleGAN可以通过从原始源地图开始梯度下降,从一幅特别制作的地图中重建任何空中图像。攻击者可以滥用这一事实,并通过干扰任何选定的源映像,使其中一个已学会的转换产生他们所选择的映像。此外,如果发展商不小心或没有采取适当的措施,他们的模型可能会在GDPR下收集个人资料。

 

如何避免这些攻击?

 

该模型的脆弱性主要有两个原因:循环一致性损失和两个域之间的熵差。可以修改循环一致性损失,以防止此类攻击。其中一个域的熵可以通过添加额外的隐藏变量来人为地增加。

 

这篇论文《 CycleGAN, a Master of Steganography》在 Reddit 上发布后引起了关注,引发了一场讨论。许多Redditors提出了一个解决方案,其中一个说,“添加几乎听不清的高斯噪声之间的周期应该足以防止CycleGAN隐藏信息编码在不知不觉高频组件:它迫使它编码所有语义信息以任何能够生存低烈度高斯噪声(即可见的低频分量,我们希望/期望)。”

 

最近一项减少这种隐写行为的工作是引入了增强的CycleGAN,它学习域之间的多对多映射,而CycleGAN学习的是一对一映射。

 

想要了解更多的细节,请阅读这篇论文: CycleGAN, a Master of Steganography(PDF)。

https://arxiv.org/pdf/1712.02950.pdf

 

Be First to Comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注