变分自编码VAE

1 )损失函数 推导

encoder 是要拟合一个p(z)

由 p(x,z)=p(z|x)*p(x) 得到p(x)=p(x,z)/p(z|x),上下同时除以一个q(z) 得到

p(x) =(p(x,z)/q(z))/(p(z|x)/q(z)) 求极大似然是要对两边取log 得到:

lnp(x)= ln(p(x,z)/q(z))-ln(p(z,x)/q(z)) .

用q(z) 积分得到:

因为p(x) 与z无关,所以左边的式子可以提出来得到

 等于1 , 为KL(q(z)||p(z|x) ),

第一项减去第二项为ELBO,KL >=0

优化是 KL 尽可能小,ELBO 尽可能大。

接下来是最大化ELBO: ELBO=ln(px)-KL(q(z)||p(z|x))

又因为p(x,z)=p(x|z)p(z),

其中 对q(z) 的积分就是q(z) 的期望。

ELBO=

=第二项为KL(q(z)|p(z))

=第一项为reconstruction loss 对于分类问题是交叉熵函数,假设q的分布为多元高斯分布,要让q 无限逼近于p,p(z) 为真实的z的分布。多元高斯分布可以通过复杂变化逼近任何一个其它的分布

autoencoder :https://blog.csdn.net/changyuanchn/article/details/15681853

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值