一. Generative Model
生成新数据应用:
生成超高解析度成像,将低分辨率的照片转化成高分辨率;
艺术创作:图像转换、文字到图像的转换;消费市场。
二. Auto-Encoder
将输入先进行编码,然后经过多层感知器的神经网络,相当于进行了降维和数据压缩。
而在生成模型中,我们仅适用压缩后编码到解码器的这一后半部分。
三. Variational Auto-Encoder
1. 改进自动编码器(Auto-Encoder)
自编码器无法根据新编码生成数据,所以我们对Auto-Encoder做出改进,在他学习到输入数据的隐含变量,并让这些隐含变量服从高斯分布。
即是说,VAE希望通过输入数据学习到参数的概率分布。
2. 两个损失函数
在VAE问题中,涉及到两个问题也就是两个损失函数:
第一个是描述网络还原程度的损失函数,即是输出数据和输入数据之间的均方距离;
第二个是隐含变量与高斯分布相近程度的损失函数。
3. KL散度(相对熵)
KL越高,说明差异程度越大;KL低的时候,说明差异小。如果两者相同,KL=0.
4. 最终的损失函数
将上面两个损失函数相加,并优化这个最终的损失函数使得模型达到最优结果。
生成数据误差:
隐含变量误差:
最终误差:
5. VAE缺点
VAE模型本质在于使得输出数据与输入数据的均方误差最小化,使得VAE真正是倾向于学习得到与真实数据更接近的数据。
为了优化VAE,这里GAN效果更好。