生成模型 Generative Models

用非监督学习生成结构化数据,是非监督模型的一个重要分支,本节重点介绍三个算法: Pixel RNN ,VAE 和GAN(以后会重点讲解原理)

1. Pixel RNN

RNN目前还没有介绍,,以后会重点讲解,大家目前认为它是一个神经网络即可

halcon 非监督学习 非监督模型_数据


举例:用Pixel RNN 生成怪物精灵;

我们首先进行配色编码:

halcon 非监督学习 非监督模型_最小化_02


然后遮盖部门图片,进行图片生成

halcon 非监督学习 非监督模型_最小化_03

2. Variational AutoEncoder(VAE)

(1) 首先我们先看看AutoEncoder的缺点 :

如图,AutoEncoder能够生成满月和玄月之间的月亮的图片吗,答案是不行。因为两个图片转换为code的中间地带,我们无法控制。

halcon 非监督学习 非监督模型_halcon 非监督学习_04


(2)架构过渡:

halcon 非监督学习 非监督模型_最小化_05


看到如此复杂的结构是不是很晕,我们一一进行剖析:我们注意到,我们不仅要最小化生成数据和原始数据之间的差距,我们还要最小化上图中黄框中的公式,这是为什么?

(1)从直觉上理解:我们需要在训练数据中加一些noisy ,但是这些噪声数据的方差是我们未知的,使用exp函数将方差非负,然后减去(1+方差),得到如图绿曲线,方差变小。m的平方可以理解为L2函数。

halcon 非监督学习 非监督模型_halcon 非监督学习_06


(2)原理

回归的问题本质:我们其实就是想估计概率的分布

halcon 非监督学习 非监督模型_方差_07


我们引入混合高斯模型的概念:

halcon 非监督学习 非监督模型_数据_08


halcon 非监督学习 非监督模型_方差_09


在VAE中,我们假设z符合高斯分布,但是z具体高斯分布的参数未知,我们需要通过神经网络进行估计,每一个z代表的x的一个分布。

halcon 非监督学习 非监督模型_最小化_10


整体图:

halcon 非监督学习 非监督模型_数据_11


我们求概率最大化:

halcon 非监督学习 非监督模型_方差_12


我们需要另外的一个概率分布q(z|x)

halcon 非监督学习 非监督模型_halcon 非监督学习_13


然后有:

halcon 非监督学习 非监督模型_halcon 非监督学习_14


数学证明:

halcon 非监督学习 非监督模型_halcon 非监督学习_15


halcon 非监督学习 非监督模型_方差_16


halcon 非监督学习 非监督模型_halcon 非监督学习_17


halcon 非监督学习 非监督模型_halcon 非监督学习_18


VAE的问题:

halcon 非监督学习 非监督模型_数据_19


VAE生成的结果一般都是训练集的结果或者训练集结果的叠加,但是不能生成新的结果,我们可以总结为“一直在模型,从未被超越”。接下来我们简单介绍下GAN(我们以后会详细介绍)

3.GAN

从大自然蝴蝶的拟态演化,我们联想到GAN

halcon 非监督学习 非监督模型_halcon 非监督学习_20