来源:机械鸡
概要:我们使用神经网络生成图像,能帮助我们理解神经网络,是如何对输入的信息进行处理的。
当一个小孩画一只猫的时候,你会更加了解这个孩子,而不是了解他画出来的猫。同理,我们使用神经网络生成图像,能帮助我们理解神经网络,是如何对输入的信息进行处理的。
通常,人们很难以直观的方式,解释神经网络的功能,但是生成算法提供了一种让神经网络解释自我的方法。
神经网络常被用作实现一个图像分类器,能够用它来区分图像中是猫还是狗,或者识别消防标志等。不过,在过去的三年中,研究人员从本质上对这些神经网络进行逆转,并且取得了惊人的进展。
目前的生成AI研究浪潮,建立在生成对抗网络(GAN)的基础上,GAN是一种由Ian Goodfellow和他的同事在2014年提出的一种神经网络结构。随着Ian Goodfellow论文的发表,一系列的发明应用随之而来。
研究人员使用GAN网络,可以生成从人脸到卧室的一切图像。通过一项基于GAN叫做pix2pix的技术,可以直接通过卫星图像生成地图,可以为黑白照片自动填色,可以将手绘的草图渲染成逼真的实景。
图1. 由生成对抗网络创建的虚构专辑封面
Jon Bruner 和 Adit Deshpande,基于TensorFlow演示了一个非常简单的生成对抗网络,这个网络创造出了逼真的手写数字图像。图2为该网络的学习过程,从随机噪声开始,出现了一种原始智慧:首先神经网络反复产生相同的通用伪数字,然后领会不同数字之前的差异,最终可以创造每一个数字。
图2 生成器经过训练后,生成手写数字的动画演示过程
神经网络擅于通过丰富的数据进行简单的推断,神经网络通过多层神经元能够自我组织,并在多层次检测从纹理片段到基本结构的模式,它还能够挖掘到人们可能会错过的模式。
这就是神经网络的优势,不过也是解释它比较困难的根源。
神经网络虽然能够注意到人们无法注意到的模式,但是如果的网络结构过于简单或者训练数据不足以表示真实世界的变化,它们也会像人一样进行不合理的探索。
你通过快速的观察得到各种特征:猫的耳朵、猫的胡须、猫的毛发样式等,总的来说,通过这些特征,你最终得到这是一只猫的结论,神经网络亦是如此。
正是因为GAN中的生成器,具有多层次处理信息的能力,所以该网络重构信息后输出的结果比较真实。图3是通过GAN生成的卧室图片,不得不说效果相当棒。不仅床单,地毯和窗户看着很真实,而且他们的位置也是正确的,床单放在床上,地毯铺在地上,窗户开在墙上。
图3 GAN生成的卧室图像
如果你接触过图像识别,你可能会对卷积神经元比较熟悉,卷积神经元可以跨图像扫描,并过滤像素进行模式检测。卷积层通常将图像压缩,但是在GAN的生成器中,卷积层的功能被逆转,以便按比例扩大数据。
生成器不是用来检测模式和匹配图像中的特征的,而是使用反卷积的方式生成基本图像构建块,并且再将这些基本构建块,组装融合成“真实的图像”。比如,这个简单的GAN生成了一个非常“真实的”数字9,如图4所示。
图4 GAN生成非常“真实”的手写数字9
通过观察反卷积滤波器和其对应的输出,可以发现这些由最后一层反卷积层生成的构建块,来自图4中的手写数字9。
图5 反卷积滤波器及其输出(生成数字9时)
GANs才三岁而已,显而易见,GANs在不久的将来会被用作生成各种内容,甚至可能在每个用户访问网站的过程中,为其定制图片或者视频。当GANs作为一种创造性力量出现时,人们必须去领悟它的推理世界。
还在等什么?快动手去尝试建立你自己的GANs吧!
☞ 【最详尽的GAN介绍】王飞跃等:生成式对抗网络 GAN 的研究进展与展望
☞ 【智能自动化学科前沿讲习班第1期】王飞跃教授:生成式对抗网络GAN的研究进展与展望
☞ 【智能自动化学科前沿讲习班第1期】王坤峰副研究员:GAN与平行视觉
☞ 【重磅】平行将成为一种常态:从SimGAN获得CVPR 2017最佳论文奖说起
☞ 【专栏】极限元语音算法专家刘斌:基于深度学习的语音生成问题
☞ 【分析】图像分类、目标检测、图像分割、图像生成……一文「计算机视觉」全分析