Auto-Encoding Variational Bayes论文笔记

本文地址:http://blog.csdn.net/qq_31456593/article/details/77743840 
深度学习博客目录:http://blog.csdn.net/qq_31456593/article/details/69340697

introduce

这篇论文将变分贝叶斯和神经网络结合起来,用神经网络学习变分推导的参数,以得到后验推理p(z|x)的似然,并获得了一个效果不错的生成模型-变分自编码器。作者使用了重新参数化的变分下界,这样就可以通过随机梯度下界对模型进行优化。

 

method

如图z是一个隐变量,x是由z决定的一个客观事物,比如一类图片。z相当于决定x性质的内隐因素(神秘力量),那么给我们一组属于x的数据集(图片),想要得到z,我们就必须得到后验概率p(z|x)。因为这个后验概率不好求,作者使用一个神经网络作为后验推导q(z|x),来逼近p(z|x),当神经网络通过参数学习,使得q(z|x)接近于p(z|x)时,那么我们将通过神经网络获得接近于z的近似分布,即把隐变量z找了出来。

在数学上,KL散度可以求两个分布间的距离,KL越小,分布距离越近,即越相似。同时,KL距离是非负的。为了使q(z|x)与p(z|x)的KL距离最小,作者利用了变分下界的方法,如下面推导公式所示:

因为p(x)的对数是固定的,所以我们想要最小化q(z|x)与p(z|x)的KL距离,就是要最大化变分下界LVLV,而LVLV经推导可得

所以现在我们要做的是最小化第一项中q(z|x)和z的似然,最大化第二项中p(x|z)的对数似然。作者将是实现q(z|x)的神经网络叫做编码器,z一般符合高斯分布,所以最小化第一项就是让编码器尽量拟合出高斯分布,即最大化下面式子:

对于第二项,作者构建一个名为解码器的神经网络,用它对随机采样的z进行处理,最终生成x,并以最大化p(x|z)

由于随机采样的部分无法使用随机梯度下降,所以在这里作者使用了重新参数化的方法,让编码器只输出正太分布的均值和方差,用于一个高斯噪声通过输出的均值和方差来构造z 


至此,两个我们要优化的目标都明确了,现在就可以开始训练网络。附上变分自编码器图(图中缺失了高斯噪音部分)

最终训练好的解码器便可以通过输入的高斯分布生成想要的图像了。

 

my view

1、利用神经网络拟合统计推导计算后验概率的思路可以学习。 
2、是否可以认为变分自编码器就是同时学习,决定某个事物(图像)性质的特殊因素(个体因素)z和共同因素(类别因素)p(x|z),然后就可以通过类别因素p(x|z),也就是解码器,利用随机的高斯分布(随机的个体因素)生成同类别的图片。

参考文献: 
《Auto-Encoding Variational Bayes》 
Introduction to variational autoencoders VAE第二篇
--------------------- 
作者:Doit_ 
来源:CSDN 
原文:https://blog.csdn.net/qq_31456593/article/details/77743840 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值