论文学习—VAE
VAE----Auto-Encoding Variational Bayes
- 2024年12月17日-2024年12月18日
- 摘要
- 引言
- 方法
- 例子:变分自动编码器
2024年12月17日-2024年12月18日
从今天开始,我准备记录自己学习的内容以此来检验我每天的学习量,菜鸡一枚,希望能够与大家进行沟通交流。我的第一篇论文学习选择的是VAE,因为我对于这种生成模型比较感兴趣。
论文链接: Auto-Encoding Variational Bayes
https://blog.csdn.net/a312863063/article/details/87953517
摘要
摘要告诉我们,作者引入了一种随机变分推理和学习的算法用于解决难以拟合后验分布的问题,即作者通过利用概率表述潜在空间进而拟合后验模型。
贡献: Our contributions are two-fold. First, we show that a reparameterization of the variational lower bound
yields a lower bound estimator that can be straightforwardly optimized using standard stochastic gradient methods. Second, we show that for i.i.d. datasets with continuous latent variables per datapoint, posterior inference can be made especially efficient by fitting an approximate inference model (also called a recognition model) to the intractable posterior using the proposed lower bound estimator. Theoretical advantages are reflected in experimental results.
摘自原文,一般来说论文会在两个地方写自己的贡献:摘要和引言,但是这篇论文只在摘要提到了自己的贡献,可能是因为觉得必要写吧。 (不愧是大神 )
作者的贡献表明,他们从理论上证明了变分下界的重新参数化会产生了一个下界估计量,它可以直接使用标准的随机梯度方法进行优化。而且对于对于每个数据点具有连续潜变量的数据集来说,他们通过使用所提出的下界估计量将近似推理模型可以拟合到难以处理的后验模型。
引言
这篇论文引言很短,只有两段话,第一段介绍了目前的研究希望可以拟合棘手的后验分布,但是目前的工作却难以解决,所以作者发现变分下界的重新参数化会产生下界的一个简单的可微无偏估计量,利用这个估计量可以拟合后验分布并且很容易进行优化。第二段则是简单介绍了他们提出的算法(AEVB)。(我觉得没什么东西,只是说了一下他们的方法可以只对少量数据抽样就可以进行学习然后拟合后验模型从而完成各种任务。)
方法
这部分涉及到了证明,如果感兴趣的同学可以仔细研究一下论文内容,我只做简单介绍,我这里就不再赘述了。(主要是我懒而且菜鸡不喜欢也学不会这种数学证明)
这篇论文确实挺奇怪,一般引言后面介绍是相关工作,但是作者直接开始讲方法却把相关工作放在了第四部分。可能是想让大家直接知道他们是怎么做的。(我猜的,毕竟大神的想法我这个菜鸡怎么懂 )
方法部分主要是用于推导各种具有连续潜变量的有向图形模型的下界估计量,即证明部分也是作者提到自己的第一个贡献点,他们选择每个数据点具有潜在变量的数据集。
这个图介绍了基于潜在变量的生成模型的流程,正如作者所示实线表示生成模型,虚线表示难以处理的后验的变分近似。
2.1介绍了问题定义,没什么东西,就是介绍采用什么变量表示什么内容,目前遇到的一些问题以及如何进行一些简化。我觉得大家可以重点读一下最后一段了解一些编码器和解码器就行。
2.2变分边界 这个涉及了对于下界估计量的推导,文中是一个简单的版本只是告诉我们最终的推导结果。
2.3 SGVB估计器和AEVB算法 介绍了整个算法的推导流程以及数学证明,作者通过推导告诉我们如何对这些参数进行优化,也介绍了如何进行这样的优化。
如果大家想进一步了解可以参考这篇博客,博客的这个图也很形象告诉我们为什么作者要这么做。(作者不愧为天才这都能想出来,膜拜膜拜)
2.4重新参数化技巧这一部分介绍了他们的方法是如何起效果,通过这一部分我发现这篇论文主要是为了告诉我们给定一个真实样本 Xk,我们可以假设存在一个专属于 Xk 的分布 p(Z|Xk)(后验分布),并假设这个分布是(独立的、多元的)正态分布。,那么从 p(Z) 中采样一个 Z,那么我们就可以知道这个 Z 对应于哪个真实的 X 了, p(Z|Xk) 专属于 Xk,我们有理由说从这个分布采样出来的 Z 应该还原到Xk 中去。
例子:变分自动编码器
这一部分作者介绍了一个例子,通过这个例子我们对作者的方法可以有更深入的了解,而且如果大家跟我一样不像看前面的推导过程的话,大家可以好好研究一下这一部分,毕竟直观的例子更方便我们理解。公式(9)告诉我们后验概率的分布定义,公式(10)告诉我们我们针对于这个例子的目标函数。通过优化我们可以实现拟合后验模型,而根据后验模型我们就可以得到原始分布即达到生成数据的目的。
可能文字不太直观,大家可以参考这篇知乎和这篇博客的内容。
之后就是相关工作、实验、结论等内容,大家可以看原文,我就不给大家献丑了。
本人水平有限肯定存在很多不足之处,欢迎大家进行交流。若是大家觉得看不懂我写的,推荐大家可以参考一下内容:
博客(强烈推荐!!!)
知乎
CSDN
相关文章:

论文学习—VAE
VAE----Auto-Encoding Variational Bayes 2024年12月17日-2024年12月18日摘要引言方法例子:变分自动编码器 2024年12月17日-2024年12月18日 从今天开始,我准备记录自己学习的内容以此来检验我每天的学习量,菜鸡一枚,希望能够与大…...

AI 智能体(AI Agent)到底什么原理?能干什么事情
智能体应用有哪些? 智能体在千行百业中有着广泛的应用,目前已经在 600 多个项目落地和探索,广泛应用于政府与公共事业、交通、工业、能源、金融、医疗、科研等行业。智能体是模拟人类智能的计算机系统,能自主感知环境、智能决策并…...

【mysql】如何查看大表记录行数
目录 1. 使用 ANALYZE TABLE 和 SHOW TABLE STATUS2. 查询 INFORMATION_SCHEMA 表3. 使用索引统计信息4. 维护行数缓存5. 使用分区计数 1. 使用 ANALYZE TABLE 和 SHOW TABLE STATUS 1.ANALYZE TABLE 可以更新表的统计信息,然后使用 SHOW TABLE STATUS 来查看估算的…...

Linux之网络配置
一、检查虚拟机和本机通不通 测试虚拟机和本机是否通不通 winR,运行本机cmd,输入ipconfig,拿到本机ip地址 在虚拟机上ping一下这个地址(ctrlshitv)可以把复制的文本粘贴进虚拟机。 可以看到,不通,解决方法在最后&am…...

SpringBoot集成JWT和Redis实现鉴权登录功能
目前市面上有许多鉴权框架,鉴权原理大同小异,本文简单介绍下利用JWT和Redis实现鉴权功能,算是抛砖引玉吧。 主要原理就是“令牌主动失效机制”,主要包括以下4个步骤: (1)利用拦截器LoginInterceptor实现所有接口登录拦…...

LabVIEW热电偶传感器虚拟仿真实验系统
在教学和科研领域,实验设备的更新和维护成本较高,尤其是在经济欠发达地区,设备的短缺和陈旧化严重影响了教学质量。基于LabVIEW的热电偶传感器虚拟仿真实验系统能够通过模拟实验环境,提供一个成本低廉且效果良好的教学和研究平台。…...

Centos7 部署ZLMediakit
1、拉取代码 #国内用户推荐从同步镜像网站gitee下载 git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit cd ZLMediaKit #千万不要忘记执行这句命令 git submodule update --init 2、安装编译器 sudo yum -y install gcc 3、安装cmake sudo yum -y install cmake 4…...

Docker搭建kafka环境
系统:MacOS Sonoma 14.1 Docker版本:Docker version 27.3.1, build ce12230 Docker desktop版本:Docker Desktop 4.36.0 (175267) 1.拉取镜像 先打开Docker Desktop,然后在终端执行命令 docker pull lensesio/fast-data-dev …...

wsl2-ubuntu安装docker后无法拉取镜像
如上是报错全部信息, 这个实际上是因为网络不通导致的, 由于我实在公司使用, 而公司上网需要使用代理, 因此把代理加上就行了. # 为docker服务添加代理 mkdir /etc/systemd/system/docker.service.d cat > /etc/systemd/system/docker.service.d/http-proxy.conf <<…...

Invalid bound statement (not found) 错误解决
出现这个错误提示:Invalid bound statement (not found): com.xxx.small_reservior.dao.WaterRainMapper.getWaterRainByRegion,通常表示 MyBatis 框架无法找到与给定的 getWaterRainByRegion 方法匹配的 SQL 映射语句。这种问题通常发生在以下几种情况中…...

深度学习的下一站:解锁人工智能的新边界
引言:新边界的呼唤 深度学习的诞生,犹如人工智能领域的一次革命,激发了语音助手、自动驾驶、智能医疗等前沿技术的飞速发展。然而,面对现实世界的复杂性,现有的深度学习模型仍然存在数据依赖、可解释性差、环境适应力不…...

搭建Tomcat(三)---重写service方法
目录 引入 一、在Java中创建一个新的空项目(初步搭建) 问题: 要求在tomcat软件包下的MyTomcat类中编写main文件,实现在MyTomcat中扫描myweb软件包中的所有Java文件,并返回“WebServlet(url"myFirst")”中…...

跟着AI 学AI开发二,本地部署自己的Chat GPT
这里要安装的是Open Web UI ,用一张架构图说明AI 前端与后端的关系。 之前的Python 的方法已经做过多次介绍,这里不做赘述。 顺序:1,Ollama。 2,Docker。 3,Open WebUI。 Ollama 安装下载地址࿱…...

XXE靶机漏洞复现通关
1.扫描XXE靶机的ip地址 将kali虚拟机和XXE靶机部署在同一局域网中,都采用NAT网络模式 搭建好后在kali终端中进行扫描XXE靶机的ip arp-scan -l 根据常识我们可以推断192.168.27.153为靶机的ip地址 2.访问靶机页面并扫描附录 进入页面后我们可以打开御剑扫描网页中…...

XS9922B 同轴RX芯片 四通道 多合一模拟高清解码器
XS9922B 是一款 4 通道模拟复合视频解码芯片,支持 HDCCTV 高清协议和 CVBS 标 清协议,视频制式支持 720P/1080P 高清制式和 960H/D1 标清制式。芯片将接收到的高清 模拟复合视频信号经过模数转化,视频解码以及 2D 图像处理之后,转…...

如何在谷歌浏览器中设置电子邮件通知
在现代互联网生活中,电子邮件已成为我们日常沟通的重要工具。为了更高效地管理邮件,您可以在谷歌浏览器中设置电子邮件通知。本文将详细介绍如何实现这一功能,并附带一些相关的Chrome使用技巧。(本文由https://chrome.google64.cn…...

利用Java获取淘宝商品详情API接口的深入指南引言
引言 在电商领域,数据的价值日益凸显,尤其是在淘宝这样的大型电商平台上。淘宝商品详情API接口允许开发者通过编程方式获取商品的详细信息,这对于市场分析、竞争对手研究等方面至关重要。本文将详细介绍如何使用Java编写爬虫程序,…...

3D工具显微镜的测量范围
一、测量尺寸范围 样品尺寸: 3D工具显微镜通常能够测量各种尺寸和形状的样品,从小至微米级别的微小结构到大至几厘米甚至更大的物体。具体的测量尺寸范围取决于显微镜的载物台大小、镜头焦距以及软件处理能力。测量精度: 3D工具显微镜的测量…...

WPF DataTemplate 数据模板
DataTemplate 顾名思义,数据模板,在 wpf 中使用非常频繁。 它一般用在带有 DataTemplate 依赖属性的控件中,如 ContentControl、集合控件 ListBox、ItemsControl 、TabControls 等。 1. 非集合控件中使用 <UserControl.Resources>&l…...

知道一个服务器IP地址,如何attack对方美国
CSDN提醒:亲爱的用户:你好! 你的账号于2024-12-17 19:04:04在美国美国登录,登录IP为:47.238.159.124。若非本人登录,请及时修改密码。 莫名其妙显示美国登录了我的CSDN博客 卧槽 简介 服务器的IP地址是一…...

lettuce 默认情况下连接池参数不生效,源码分析
先说结论: 1.LettuceConnectionFactory 属性 shareNativeConnection 默认为true,要想连接池生效,该参数设置为false; 2.使用redisTemplate模版封装的pipeline没有意义,autoFlashCommands 默认为true;spring2.0开始默认使用lettuc…...

《宇宙机器人》提示错误弹窗“找不到d3dx9_43.dll”是什么原因?“d3dx9_43.dll缺失”怎么解决?
电脑游戏运行时常见问题解析:《宇宙机器人》提示“找不到d3dx9_43.dll”的解决之道 TGA2024落幕,年度最佳游戏——《宇宙机器人》,作为一名在软件开发领域深耕多年的从业者,我深知电脑游戏在运行过程中可能会遇到的各种挑战&…...

应用于项目的 C++单例基类的设计、实现与应用
文章目录 应用于项目的 C单例基类的设计、实现与应用一、引言二、单例基类的设计2.1 线程安全的单例基类2.2 局部静态变量的单例基类 三、单例基类的实现3.1 配置管理单例类 四、单例基类的应用4.1 多线程环境下的配置管理 五、深入探讨5.1 单例的线程安全问题5.2 单例的延迟初…...

Mongodb 启用认证
MongoDB 启用认证的完整指南 启用 MongoDB 的认证功能需要按照以下步骤进行设置: 检查 MongoDB 配置文件 在 MongoDB 配置文件中(通常为 mongod.conf),需要启用认证功能。 修改配置文件 打开 mongod.conf 文件,找…...

QT:vlc出错处理及重新播放
这个问题一直想解决,昨天认真研究了一下。 要点 视频用的Widget不能重复使用,每次出错后,都要新建。 回调函数的处理。 代码1 关键在于libvlc_event_attach void VideoWidget::play() {libvlc_media_t* media;if (strstr(video_path, &…...

密钥管理系统在数据安全解决方案中的重要性
密钥管理系统在数据安全解决方案中占据着举足轻重的地位,其重要性体现在以下几个方面: 一、保障数据机密性 密钥管理系统通过生成、存储和管理加密密钥,确保了数据的机密性。这些密钥用于加密和解密数据,只有授权用户才能访问和…...

Docker的容器编排
目录 1. 什么是容器编排(Docker Compose)2. 容器编排的功能3. 容器编排文件(docker-compose.yml)的介绍3.1 文件语法版本3.2 文件基本结构及常见指令 4. Docker Compose命令详解4.1 Docker Compose命令清单4.2 命令格式和常见选项…...

Java Web项目部署教程简单实用
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默, 忍不住分享一下给大家。点击跳转到网站 学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把…...

推送本地仓库到远程git仓库
目录 推送本地仓库到远程git仓库1.1修改本地仓库用户名1.2 push 命令1.3远程分支查看 推送本地仓库到远程git仓库 删除之前的仓库中的所有内容,从新建库,同时创建一个 A.txt 文件 清空原有的远程仓库内容,重新创建一个新的仓库,…...

线性池学习
一、什么是进程?什么是线程? 1. 进程的定义 从操作系统的角度解释: 进程是操作系统分配资源和调度执行的基本单位。每个进程都是操作系统中一个独立的实体,拥有自己的内存空间、文件描述符、代码、数据等资源。进程是程序在执行…...