【科研基础】VAE: Auto-encoding Variational Bayes

[1]Kingma, Diederik P., and Max Welling. “Auto-encoding variational bayes.” arXiv preprint arXiv:1312.6114 (2013).

[2] [论文简析]VAE: Auto-encoding Variational Bayes[1312.6114]

[3] The Reparameterization Trick

[4] 变分法的基本原理是什么?

文章目录

    • 1-什么是VAE
      • 1.1-目标
      • 1.2-Intractability:
      • 1.3-Approximation use NN:
      • 1.4-最大化 L ( θ , ϕ ; x ) L(\theta,\phi;x) L(θ,ϕ;x):
      • 1.5-优化 E q ϕ ( z ∣ x ) [ log ⁡ ( p θ ( x ∣ z ) ) ] E_{q_\phi(z|x)}[\log(p_\theta(x|z))] Eqϕ(zx)[log(pθ(xz))] D K L ( q ϕ ( z ∣ x ) ∣ ∣ p θ ( z ) ) D_{KL}(q_\phi(z|x)||p_\theta(z)) DKL(qϕ(zx)∣∣pθ(z))
      • 1.6-重参数化技巧
      • 1.7-SGVB
      • 1.8-另外一种SGVB
      • 1.9.总结
      • 1.10-变分的含义

1-什么是VAE

1.1-目标

x \mathbf{x} x:为 z \mathbf{z} z的采样,生成自条件分布 p θ ∗ ( x ∣ z ) p_{\theta^*}(\mathbf{x}|\mathbf{z}) pθ(xz) θ ∗ \theta^* θ表示ground truth而 θ \theta θ表示解码器参数),;
z \mathbf{z} z x \mathbf{x} x更本质的描述(不可直接观测),来自先验分布 p θ ∗ ( z ) p_{\boldsymbol{\theta}^*}(\mathbf{z}) pθ(z)
在这里插入图片描述
目标是是根据 x \mathbf{x} x能够得到 z \mathbf{z} z:

1.2-Intractability:

  • p θ ( x ) = ∫ p θ ( z ) p θ ( x ∣ z ) d z \begin{array}{rcl}p_{\boldsymbol{\theta}}(\mathbf{x})&=&\int p_{\boldsymbol{\theta}}(\mathbf{z})p_{\boldsymbol{\theta}}(\mathbf{x}|\mathbf{z})d\mathbf{z}\end{array} pθ(x)=pθ(z)pθ(xz)dz,因为在实际情况下,潜在变量 z \mathbf{z} z的维度可能很高,或者先验分布 p θ ∗ ( z ) p_{\boldsymbol{\theta}^*}(\mathbf{z}) pθ(z)和条件分布 p θ ∗ ( x ∣ z ) p_{\theta^*}(\mathbf{x}|\mathbf{z}) pθ(xz)可能是复杂的非线性函数。因此,直接计算这个积分是不可行的。

VAE采用了一种变分推断的方法来近似计算这个积分。具体来说,VAE使用了变分下界(ELBO),通过优化ELBO来近似计算这个积分。这种方法将原本的推断问题转化为一个优化问题,并且通过优化方法(如随机梯度下降)来求解。尽管使用ELBO进行近似推断使得VAE的训练变得可行,但这仍然是一个近似方法,其精度取决于所选的变分分布族和优化算法的选择。

  • p θ ( z ∣ x ) = p θ ( x ∣ z ) p θ ( z ) / p θ ( x ) p_{\boldsymbol{\theta}}(\mathbf{z}|\mathbf{x})=p_{\boldsymbol{\theta}}(\mathbf{x}|\mathbf{z})p_{\boldsymbol{\theta}}(\mathbf{z})/p_{\boldsymbol{\theta}}(\mathbf{x}) pθ(zx)=pθ(xz)pθ(z)/pθ(x)中的 p θ ( x ) p_{\boldsymbol{\theta}}(\mathbf{x}) pθ(x)未知 (贝叶斯公式,在观察到数据后,对事件发生概率进行推断的过程,通过计算后验概率,根据观察到的数据进行推断,并更新对事件发生概率的认识)。

1.3-Approximation use NN:

p θ ( z ∣ x ) ≅ q ϕ ( z ∣ x ) p_\theta(\mathbf{z}|\mathbf{x})\cong q_\phi(\mathbf{z}|\mathbf{x}) pθ(zx)qϕ(zx),用KL散度评估两个分布的相似程度:
D K L ( q ϕ ( z ∣ x ) ∣ ∣ p θ ( z ∣ x ) ) = − ∑ z q ϕ ( z ∣ x ) log ⁡ ( p θ ( z ∣ x ) q ϕ ( z ∣ x ) ) = − ∑ z q ϕ ( z ∣ x ) log ⁡ ( p θ ( x , z ) p θ ( x ) q ϕ ( z ∣ x ) ) = − ∑ z q ϕ ( z ∣ x ) [ log ⁡ ( p θ ( x , z ) q ϕ ( z ∣ x ) ) − log ⁡ ( p θ ( x ) ) ] \begin{aligned} D_{KL}(q_{\phi}(\mathbf{z|x})||p_{\theta}(\mathbf{z|x}))&=-\sum_{\mathbf{z}}q_{\phi}(\mathbf{z|x})\log\left(\frac{p_{\theta}(\mathbf{z|x})}{q_{\phi}(\mathbf{z|x})}\right)\\ &=-\sum_{\mathbf{z}}q_{\phi}(\mathbf{z|x})\log\left(\frac{\frac{p_{\theta}(\mathbf{x,z})}{p_{\theta}(\mathbf{x})}}{q_{\phi}(\mathbf{z|x})}\right) \\ &=-\sum_zq_\phi(\mathbf{z|x})\left[\log\left(\frac{p_\theta(\mathbf{x,z})}{q_\phi(\mathbf{z|x})}\right)-\log(p_\theta(\mathbf{x}))\right] \end{aligned} DKL(qϕ(z∣x)∣∣pθ(z∣x))=zqϕ(z∣x)log(qϕ(z∣x)pθ(z∣x))=zqϕ(z∣x)log qϕ(z∣x)pθ(x)pθ(x,z) =zqϕ(z∣x)[log(qϕ(z∣x)pθ(x,z))log(pθ(x))]
log ⁡ ( p θ ( x ) ) \log(p_\theta(\mathbf{x})) log(pθ(x)) z \mathbf{z} z无关是常数,所以和 q ϕ ( z ∣ x ) q_\phi(\mathbf{z|x}) qϕ(z∣x)相乘可以提到求和符号外面,而 q ϕ ( z ∣ x ) q_\phi(\mathbf{z|x}) qϕ(z∣x) z \mathbf{z} z求和结果为1,等号左右换项:
log ⁡ ( p θ ( x ) ) = K L ( q ϕ ( z ∣ x ) ∣ ∣ p θ ( z ∣ x ) ) + ∑ z q ϕ ( z ∣ x ) log ⁡ ( p θ ( x , z ) q ϕ ( z ∣ x ) ) = D K L ( q ϕ ( z ∣ x ) ∣ ∣ p θ ( z ∣ x ) ) + L ( θ , ϕ ; x ) \begin{aligned}\begin{aligned}\log(p_\theta(x))&=KL(q_\phi(z|x)||p_\theta(z|x))+\sum_zq_\phi(z|x)\log\left(\frac{p_\theta(x,z)}{q_\phi(z|x)}\right)\\&=D_{KL}(q_\phi(z|x)||p_\theta(z|x))+L(\theta,\phi;x)\end{aligned}\end{aligned} log(pθ(x))=KL(qϕ(zx)∣∣pθ(zx))+zqϕ(zx)log(qϕ(zx)pθ(x,z))=DKL(qϕ(zx)∣∣pθ(zx))+L(θ,ϕ;x)
左边是常数,KL散度非负,所以最大化 L ( θ , ϕ ; x ) L(\theta,\phi;x) L(θ,ϕ;x)(称之为Variational lower bound)就可以实现 D K L ( q ϕ ( z ∣ x ) ∣ ∣ p θ ( z ∣ x ) ) D_{KL}(q_\phi(z|x)||p_\theta(z|x)) DKL(qϕ(zx)∣∣pθ(zx))最小化;\

1.4-最大化 L ( θ , ϕ ; x ) L(\theta,\phi;x) L(θ,ϕ;x):

L ( θ , ϕ ; x ) = ∑ z q ϕ ( z ∣ x ) log ⁡ ( p θ ( x , z ) q ϕ ( z ∣ x ) ) = ∑ z q ϕ ( z ∣ x ) log ⁡ ( p θ ( x ∣ z ) p θ ( z ) q ϕ ( z ∣ x ) ) = ∑ z q ϕ ( z ∣ x ) [ log ⁡ ( p θ ( x ∣ z ) ) + log ⁡ ( p θ ( z ) q ϕ ( z ∣ x ) ) ] = E q ϕ ( z ∣ x ) [ log ⁡ ( p θ ( x ∣

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/776211.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我的编程之路:从非计算机专业到Java开发工程师的成长之路 | 学习路线 | Java | 零基础 | 学习资源 | 自学

小伙伴们好,我是「 行走的程序喵」,感谢您阅读本文,欢迎三连~ 😻 【Java基础】专栏,Java基础知识全面详解:👉点击直达 🐱 【Mybatis框架】专栏,入门到基于XML的配置、以…

负荷频率控制LFC,自抗扰ADRC控制,麻雀SSA算法优化自抗扰参数,两区域二次调频simulink/matlab

红色曲线为优化结果,蓝色曲线为没有自抗扰和没有优化的结果!

基于springboot实现蜗牛兼职网平台系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现蜗牛兼职网平台系统演示 摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,蜗牛兼职网当然也不能排除在外。蜗牛兼职网是以实际运用为开发背景&#xff…

【C语言】多文件编程以及static关键字

1、多文件编程 把函数声明放在头文件xxx.h中&#xff0c;在主函数中包含相应头文件在头文件对应的xxx.c中实现xxx.h声明的函数 a、主文件 #include<stdio.h> #include "MyMain.h"//需要包含头文件&#xff0c;头文件包含我们自定义的函数int main(){int num…

6、鸿蒙学习-Stage模型应用程序包结构

基于Stage模型开发的应用&#xff0c;经编译打包后&#xff0c;其应用程序的结构如下图应用程序包结构&#xff08;Stage模型&#xff09;所示。开发者需要熟悉应用程序包结构相关的基本概念。 一、在开发态&#xff0c;一个应用包含一个或者多个Module&#xff0c;可以在DevE…

【管理咨询宝藏60】顶级咨询公司对医药行业的研究报告

【管理咨询宝藏60】顶级咨询公司对医药行业的研究报告 【格式】PDF 【关键词】医疗行业、战略咨询、行业洞察 【核心观点】 - 195页精品内容&#xff0c;让你彻底透视医疗行业的发展现状和未来趋势 - 前20大交易约占医疗交易总额的65%&#xff1b;医疗行业大部分为制药业投资交…

c++的学习之路:5、类和对象(1)

一、面向对象和面向过程 在说这个定义时&#xff0c;我就拿c语言举例&#xff0c;在c语言写程序的时候&#xff0c;基本上就是缺什么函数&#xff0c;就去手搓一个函数&#xff0c;写的程序也只是调用函数的&#xff0c;而c就是基于面向对象的开发&#xff0c;他关注的不再是单…

DFS算法(C/C++)(内含立例题)

DFS&#xff1a; DFS又称深度优先搜索&#xff0c;是一种图运算方法&#xff0c;它从第一个节点走起&#xff0c;一直往下走&#xff0c;一直走到不能继续再走&#xff0c;就返回上一个节点&#xff0c;继续搜索其他地方&#xff0c;直到找到目标节点为止。 DFS可以解决迷宫问…

每日一题 --- 有效的字母异位词[力扣][Go]

有效的字母异位词 题目&#xff1a;242. 有效的字母异位词 给定两个字符串 *s* 和 *t* &#xff0c;编写一个函数来判断 *t* 是否是 *s* 的字母异位词。 **注意&#xff1a;**若 *s* 和 *t* 中每个字符出现的次数都相同&#xff0c;则称 *s* 和 *t* 互为字母异位词。 示例 …

基于单片机多功能智能台灯设计

**单片机设计介绍&#xff0c;基于单片机多功能智能台灯设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的多功能智能台灯设计是一个集硬件与软件于一体的综合性项目&#xff0c;旨在为用户提供更加便捷、舒适和节…

安静:内向性格的竞争力 - 三余书屋 3ysw.net

精读文稿 这期我们介绍的这本书叫做《安静》&#xff0c;副标题是《内向性格的竞争力》。本书共有267页&#xff0c;我会用大约25分钟的时间为你讲述书中的精髓。内向性格具备什么样的竞争力&#xff1f;内向性格的人在人际交往和日常生活中似乎总是吃亏&#xff0c;因为他们不…

[AutoSar]BSW_ECUC模块介绍

目录 关键词平台说明一、ECUC 的定义二、Definition of Partitions三、Variant Resolver Description四、Definition of PDUs 关键词 嵌入式、C语言、autosar、OS、BSW 平台说明 项目ValueOSautosar OSautosar厂商vector &#xff0c; EB芯片厂商TI 英飞凌编程语言C&#xf…

YOLOv5 | 鬼魅(幽灵)卷积 | 改进Ghost卷积轻量化网络

目录 原理简介 代码实现 yaml文件实现 检查是否添加执行成功 完整代码分享 论文创新必备 启动命令 由于内存和计算资源有限&#xff0c;在嵌入式设备上部署卷积神经网络 (CNN) 很困难。特征图中的冗余是那些成功的 CNN 的一个重要特征&#xff0c;但在神经架构设计中很…

企业计算机服务器中了mkp勒索病毒怎么办,mkp勒索病毒解密流程步骤

在网络技术飞速发展的今天&#xff0c;越来越多的企业走向了数字化办公模式&#xff0c;网络为企业的生产运营提高了效率&#xff0c;为企业带来了极大便利&#xff0c;但网络是一把双刃剑&#xff0c;在为人们提供便利的同时也会带来数据安全问题&#xff0c;网络数据安全一直…

智能优化算法 | Matlab实现牛顿-拉夫逊优化算法Newton-Raphson-based optimize(内含完整源码)

文章目录 效果一览文章概述源码设计参考资料效果一览 文章概述 智能优化算法 | Matlab实现牛顿-拉夫逊优化算法Newton-Raphson-based optimize(内含完整源码) 源码设计 % ------------------------------------------------------------------------------------------------…

如何借用 NTFS 交换数据流 实现隐藏文件?如何使用【文件包含】PHP伪协议?不同操作系统如何实现文件隐藏和木马伪装?

如何借用 NTFS 交换数据流 实现隐藏文件?如何使用【文件包含】PHP伪协议?不同操作系统如何实现文件隐藏和木马伪装? NTFS交换数据流(Alternate Data Streams, ADS)是NTFS文件系统特有的一种功能,它允许在同一个文件名下存储多个数据流。除了默认的数据流(通常用于存储文…

29---Nor Flash电路设计

视频链接 Nor Flash硬件电路设计01_哔哩哔哩_bilibili NOR FLASH电路设计 1、NOR FLASH介绍 NOR Flash最早是由Intel公司于1988年开发出的。 NOR Flash虽容量小但速度快,最大特点是支持芯片内执行&#xff08;XIP&#xff09;&#xff0c;即程序可以直接在NOR flash的片内…

欧拉系统部署ftp服务器

1.先检查是否已经安装ftp vsftpd -v 2.安装vsftpd yum install vsftpd 3.修改ftp配置文件 vim /etc/vsftpd/vsftpd.conf 4.启动ftp systemctl start vsftpd 5.查看是否启动 systemctl status vsftpd 6.设置为开机自启 systemctl enable vsftpd 7.查看端口是否开启 net…

uniapp 微信小程序 canvas 手写板获取书写内容区域并输出

uni.canvasGetImageData 返回一个数组&#xff0c;用来描述 canvas 区域隐含的像素数据&#xff0c;在自定义组件下&#xff0c;第二个参数传入自定义组件实例 this&#xff0c;以操作组件内 组件。 // 获取目标 canvas 的像素信息 pixelData let canvas uni.createSelector…

Wireshark使用相关

1.wireshark如何查看RST包 tcp.flags.reset1 RST表示复位&#xff0c;用来异常的关闭连接&#xff0c;在TCP的设计中它是不可或缺的。发送RST包关闭连接时&#xff0c;不必等缓冲区的包都发出去&#xff08;不像上面的FIN包&#xff09;&#xff0c;直接就丢弃缓存区的包发送R…