如何让深度神经网络具有创意力
生成对抗网络(GAN)
基本原理:输入图片在高维空间中有某种特定的概率分布,而网络正是要学习这种概率分布。因为概率太高,传统的概率密度函数估计没有用。因此提出借助博弈论思想构造两个深度神经网络,一个叫生成器,一个叫判别器,让它们相互对抗在对抗中进步。
例如:手写数字的生成任务
GAN的优化函数
当G,D二者的模型容量足够时,二者将达到纳什均衡
GAN的具体训练算法
GAN的具体应用
1、真是人脸生成:输入随机噪声,利用生成对抗网络来生成真实的人脸图片
2、侧脸转正:给定不同旋转角度下的人脸图片,通过生成对抗网络来重建正面角度下的人脸图片,可用于侧脸角度的人脸识别等现实应用
生成器结构:
判别器结构
3、图像翻译:指从一张(源域)图像到另一张(目标域)图像的转换。可以类比机器翻译,一种语言翻译成另一种语言,翻译过程中会保持源域图像的内容不变,但是风格或者一些其他属性变成目标域。
3.1 基于成对训练数据的图像翻译:基本例子就是pix2pix网络。pix2pix使用成对数据训练了一个条件GAN,其Loss包括Gan的对抗loss和逐像素差loss
3.2 基于非成对训练数据的图像翻译:CycleGAN网络
GAN的缺点:训练不稳定,难以直观观测训练过程,难以有效收敛,很多时候收敛需要运气。
模式崩溃。