温故知新 | VAE 模型推导与总结

机器学习与生成对抗网络

共 1581字,需浏览 4分钟

 ·

2022-02-26 06:46


来源:知乎—胖西西  文仅分享,侵删

https://zhuanlan.zhihu.com/p/434394556

此总结首次完成于2021年4月25日,今日再次遇到vae模型推导问题,翻出一看,豁然开朗,故想分享于知乎社区,与大家共同分享,如有错误或不同见解请多多批评指正与交流。

摘要

VAE 模型 loss 的详细推导过程,变分自编码器的理解。


01

模型与说明

1.1 VAE模型基本网络结构

变分自编码器 (VAE) 由编码器和解码器两个部分组成。特征 x 输入编码器    生成编码特征 z,z 输入解码器    生成重构的 ; 通过生成角度来理解,该网络又可以分成推理网络和生成网络两部分。

图1:VAE模型, ( | )表示推断网络, ( | )表示的生成网络(公式格式存在问题)

1.2    与    的理解

   是编码器/推理网络,    该分布是真实的、复杂的,也是我们想去逼近的;而    是我们自己定的,用来逼近或者约束    的一个分布,    是简单的,可主观决定的。

1.3 说明

变分自编码器所谓变分,指的是该模型存在泛函    ,解决该泛函问题需要采用变分法,也就是寻找一个函数/参数    。


02

公式推导

首先需要明确VAE模型的目的就是为了使得似然函数    最大。

2.1 使得似然函数    最大,为什么转化成使得   (变分下界)最大?

由贝叶斯定理:

公式1变形有:

公式2左右对    取    有:

变形有,其中    为任一分布

公式3两端对    求期望:

将公式4期望展开有:

由kl散度定义,    有:

令    ,并且由定义知道    有:

当且仅当    时,    ,否则,    ,将    视为一个以    为参数的泛函有:

改变    并不能影响    的大小,而且    大于    ,那么欲似然    更大,可从    下手,当    越大的情况下,似然    就会更大

所以可以来最大化    使得似然最大,使用神经网络的时候要注意,对    进行优化,优化目标使得    最小即可

2.2 对    再推导

因为对于    ,    与    独立,所以为了与encoder    接近,故将    ,修改为    ,有:

设重构的x服从于高斯分布(    ),则有

设    服从于多元高斯分布    ,另    (认为设定的)服从于    的分布,有(15)式:

   二阶矩为   ,所以有:

根据重构项和KL散度项的约束,我们可以得出(19)式

!!!!注意,    我们想让他越大越好,但在神经网络优化中,我们对    先取负,转化成-    再优化,此时,-    越小越



03

总结

根据以往经验,容易犯错误的地方有,使用神经网络时候,一定要对ELBO先取负再优化!

很久之前发布的文件与代码

https://gitee.com/sulei_ustb/vae-model



猜您喜欢:

 戳我,查看GAN的系列专辑~!

一顿午饭外卖,成为CV视觉的前沿弄潮儿!

超110篇!CVPR 2021最全GAN论文汇总梳理!

超100篇!CVPR 2020最全GAN论文梳理汇总!

拆解组新的GAN:解耦表征MixNMatch

StarGAN第2版:多域多样性图像生成


附下载 | 《可解释的机器学习》中文版

附下载 |《TensorFlow 2.0 深度学习算法实战》

附下载 |《计算机视觉中的数学方法》分享


《基于深度学习的表面缺陷检测方法综述》

《零样本图像分类综述: 十年进展》

《基于深度神经网络的少样本学习综述》


浏览 64
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报