对抗生成网络(GAN)是一种近年大火的无监督机器学习方式,可以基于真实的数据集生成假图像、音频或者视频。它创建的虚构内容足以以假乱真,伪造了很多名人假视频的 DeepFake 技术就是利用了这种技术。
与大多数机器学习模型一样,GAN 非常依赖用大量数据进行训练,否则其表现无法让人满意,但海量的数据并不容易获取。
最近,麻省理工学院(MIT)的研究人员发表了一项最新研究,通过深入挖掘 GAN 的内部工作原理,找到了可以在不重新训练的前提下,重写 GAN 模型的办法。只要改变特定参数,GAN 就会生成特征完全不同的图片,可以帮助研究人员创造出更多全新模型。
更重要的是,该研究还发现了一个令人惊奇的现象:虽然参数可以调整,神经元可以抑制,甚至规则也可以被重写,但 GAN 的 “世界” 中仍然存在一些很难改变的规则,就像根深蒂固的原则一样。比如 “门不会出现在天空中” 这一条,如果强行重写,也只能得出一个“长的像门的云”。
(来源:MIT CSAIL)
这说明模型内部存在某种内在逻辑,而且很可能是人类的训练数据“教给”GAN 的,然后成为了 GAN 对世界运作规律的理解。
为了了解 GAN 内部神经网络的连接方式,该研究的主要作者,MIT 博士生 David Bau 开始深入研究深层网络结构,同时筛查算法背后数百万条数学运算。他将 GAN 的神经活动记录下来,像剥洋葱一样一层层地观察其内部结构,并将所有的算法列出。
“就像开发人员在调试代码一样,将整个系统的工作过程可视化,”Bau 表示。
经过几个月的实验,研究团队意识到,在 GAN 创造的内容中,有一些特定特征的神经元被单独编码。它们已经学会了绘制特定特征,如果直接改变它们,就能改变算法最终生成的内容,将其编辑成自己想要的样子。
打个比方,用户可以在搜索负责生成云的神经元集,然后改变其参数,从而在天空中添加更多的云,或者擦除所有的云。类似的效果还能用于添加窗户,删除前景的车和人等等。
研究人员将这个研究成果称为 GANPaint,去年就已经在网上开源。
图 | GAN 会为有窗户的房间补充光线反射(来源:MIT CSAIL)
他们最初认为,这一发现为 GAN 的使用打开了一扇新大门,创造出的内容只会受到人类想象力的限制。普通人甚至无需了解机器学习,只要更改各种参数,激活或抑制某些神经元,就会涌现出天马行空的创意。
但事情并没有这么简单,Bau 的团队很快发现,他们试图调整的某些参数似乎没有被 GAN 所接纳。
“如果让 GAN 在天空中画一扇门,它会先接受这个请求,然后再否决并拒绝执行,”Bau 解释道,“因为这不现实。”
在一个算法创造的虚拟世界里,GAN 怎么知道 “门在天上飘” 不符合人类世界的规则?
在更加深入神经网络的深层结构之后,研究团队发现神经网络中存在不同的记忆库,作为通用规则发挥作用,联系自己学到的模型。也就是说,GAN 会发展出联想记忆。
这种记忆是在接触足够多的例子(数据)之后形成的——数据之间的关联以记忆的形式储存在模型中。在输入大量的门和云的图片后,模型就会知道门是建筑物的一部分,而云是飘在天上的。
另外一个经典例子是房屋内的光线。当 GAN 为一个没有窗户的房间加上窗户后,它还会自动补上附近物体表面的漫反射,显示出对物理原理的直观理解,即使它不知道什么是光,也对人类世界的物理原理一窍不通。
定位到这些记忆库之后,研究人员就可以像之前一样操纵算法,类似于擦除和添加新的记忆。
研究人员以眉毛为例,改写了 GAN 对眉毛设定的规则,并将胡子的样子植入其中。在随后生成的人脸图片中,眉毛就变成了跟胡子差不多的样子。
图 | 改变生成图片中小孩的眉毛(来源:MIT CSAIL)
他们还设计了一个更直观的交互界面来编辑和重写 GAN 的记忆,允许用户自行剔除图片内容,改变规则,进而创造新的模型。
不过目前这一技术仍有局限性:GAN 仍然很顽固。
Bau 解释称,现在让算法在空中画一扇门,出来的结果看起来很像云。原因是它对天空中物体的几何形状的理解仍受到训练数据的影响。
这反映出 GAN 想创建一个与我们所处世界不同的环境是多么的困难。更进一步想,我们也能看出,GAN 或者其他机器学习模型,通过人类数据认识这个世界的时候,在很多方面都会生成根深蒂固的规则,也包括缺陷和偏见。
“这限制了它的能力,令我感到担忧,也是真正的挑战,”Bau 表示。他希望未来进一步突破算法的瓶颈,提高人类想法和想象力在技术中的重要性。
如果艺术家可以成为算法的老师,为它们创造一些富有想象力的不存在的世界,或许就能更好地激发其潜力。