VAE和AAE的主要区别

141 篇文章 18 订阅
订阅专栏

转自:https://www.quora.com/What-is-the-main-difference-between-Adversarial-Autoencoder-AAE-and-Variational-Autoencoder-VAE,版权归原作者所有,本文只做个人记录学习使用。

The main difference between VAE and AAE is the loss computed on the latent representation.

First, let's consider the VAE model as shown in the following:

z is the unobserved representation that comes from a prior distribution pθ(z). Given input x, we want to model the posterior distribution pθ(z|x), however, this posterior distribution is intractable. The encoder network shown above is a probabilistic encoder that models qϕ(z|x).

First, VAE relies on KL divergence between the distribution qϕ(z|x) obtained from the encoder, and the prior pθ(z), in order to enforce that the probabilistic encoder yields the prior distribution pθ(z).

On the other hand, Adversarial Autoencoder (AAE) uses the adversarial loss similar to Generative Adversarial Networks (GANs), as shown below:

In AAE, the discriminator receives its  input from two sources:

1. the latent representation vector z which is generated by autoencoder,

2. samples which are directly drawn from the prior distribution of z(p(z))

and the job of discriminator is to distinguish between the two sources, while the encoder tries to generate z so that can fool the discriminator.

插播一条另外一个作者对VAE的解读,链接在这里 https://kexue.fm/archives/5253,版权同样归原作者所有。

分布变换

通常我们会拿VAE跟GAN比较,的确,它们两个的目标基本是一致的——希望构建一个从隐变量ZZ生成目标数据XX的模型,但是实现上有所不同。更准确地讲,它们是假设了ZZ服从某些常见的分布(比如正态分布或均匀分布),然后希望训练一个模型X=g(Z)X=g(Z),这个模型能够将原来的概率分布映射到训练集的概率分布,也就是说,它们的目的都是进行分布之间的变换

生成模型的难题就是判断生成分布与真实分布的相似度,因为我们只知道两者的采样结果,不知道它们的分布表达式
那现在假设 Z 服从标准的正态分布,那么我就可以从中采样得到若干个 Z1,Z2,…,ZnZ1,Z2,…,Zn ,然后对它做变换得到 X^1=g(Z1),X^2=g(Z2),…,X^n=g(Zn)X^1=g(Z1),X^2=g(Z2),…,X^n=g(Zn) 我们怎么判断这个通过g构造出来的数据集,它的分布跟我们目标的数据集分布是不是一样的呢? 有读者说不是有KL散度吗?当然不行,因为KL散度是根据两个概率分布的表达式来算它们的相似度的,然而目前我们并不知道它们的概率分布的表达式,我们只有一批从构造的分布采样而来的数据 {X^1,X^2,…,X^n} 还有一批从真实的分布采样而来的数据 {X1,X2,…,Xn} (也就是我们希望生成的训练集)。我们只有样本本身,没有分布表达式,当然也就没有方法算KL散度。虽然遇到困难,但还是要想办法解决的。 GAN的思路很直接粗犷:既然没有合适的度量,那我干脆把这个度量也用神经网络训练出来吧。 就这样,WGAN就诞生了,详细过程请参考 《互怼的艺术:从零直达WGAN-GP》 。而VAE则使用了一个精致迂回的技巧。

VAE漫谈

首先我们有一批数据样本{X1,…,Xn},其整体用X来描述,我们本想根据{X1,…,Xn}得到X的分布p(X),如果能得到的话,那我直接根据p(X)来采样,就可以得到所有可能的X了(包括{X1,…,Xn}以外的),这是一个终极理想的生成模型了。当然,这个理想很难实现,于是我们将分布改一改


这里我们就不区分求和还是求积分了,意思对了就行。此时p(X|Z)就描述了一个由Z来生成X的模型,而我们假设Z服从标准正态分布,也就是p(Z)=N(0,I)。如果这个理想能实现,那么我们就可以先从标准正态分布中采样一个Z,然后根据Z来算一个X,也是一个很棒的生成模型。接下来就是结合自编码器来实现重构,保证有效信息没有丢失,再加上一系列的推导,最后把模型实现。框架的示意图如下:

看出了什么问题了吗? 如果像这个图的话,我们其实完全不清楚:究竟经过重新采样出来的ZkZk,是不是还对应着原来的XkXk,所以我们如果直接最小化D(X^k,Xk)2D(X^k,Xk)2(这里DD代表某种距离函数)是很不科学的,而事实上你看代码也会发现根本不是这样实现的。 也就是说,很多教程说了一大通头头是道的话,然后写代码时却不是按照所写的文字来写,可是他们也不觉得这样会有矛盾~

VAE初现

其实,在整个VAE模型中,我们并没有去使用p(Z)(隐变量空间的分布)是正态分布的假设,我们用的是假设p(Z|X)(后验分布)是正态分布!!

具体来说,给定一个真实样本Xk,我们假设存在一个专属于Xk的分布p(Z|Xk)(学名叫后验分布),并进一步假设这个分布是(独立的、多元的)正态分布。为什么要强调“专属”呢?因为我们后面要训练一个生成器X=g(Z),希望能够把从分布p(Z|Xk)采样出来的一个Zk还原为Xk。如果假设p(Z)p是正态分布,然后从p(Z)中采样一个Z,那么我们怎么知道这个Z对应于哪个真实的X呢?现在p(Z|Xk)专属于Xk,我们有理由说从这个分布采样出来的Z应该要还原到Xk中去。

事实上,在论文《Auto-Encoding Variational Bayes》的应用部分,也特别强调了这一点:

In this case, we can let the
variational approximate posterior be a multivariate Gaussian with a diagonal covariance structure:

(注:这里是直接摘录原论文,本文所用的符号跟原论文不尽一致,望读者不会混淆。)

论文中的式(9)是实现整个模型的关键,不知道为什么很多教程在介绍VAE时都没有把它凸显出来。尽管论文也提到p(Z)是标准正态分布,然而那其实并不是本质重要的。

回到本文,这时候每一个Xk都配上了一个专属的正态分布,才方便后面的生成器做还原。但这样有多少个X就有多少个正态分布了。我们知道正态分布有两组参数:均值μ和方差σ2(多元的话,它们都是向量),那我怎么找出专属于Xk的正态分布p(Z|Xk)的均值和方差呢?好像并没有什么直接的思路。那好吧,那我就用神经网络来拟合出来吧!这就是神经网络时代的哲学:难算的我们都用神经网络来拟合,在WGAN那里我们已经体验过一次了,现在再次体验到了。

于是我们构建两个神经网络μk=f1(Xk),logσ2k=f2(Xk)来算它们了。我们选择拟合log⁡σk2而不是直接拟合σ2k,是因为σk2总是非负的,需要加激活函数处理,而拟合log⁡σk2不需要加激活函数,因为它可正可负。到这里,我能知道专属于Xk的均值和方差了,也就知道它的正态分布长什么样了,然后从这个专属分布中采样一个Zk出来,然后经过一个生成器得到X^k=g(Zk),现在我们可以放心地最小化D(X^k,Xk)2,因为Zk是从专属Xk的分布中采样出来的,这个生成器应该要把开始的Xk还原回来。于是可以画出VAE的示意图

 
 
 
 
 
 
理解:用变分推断统一理解深度生成模型(VAE、GAN、AAE、ALI(BiGAN))
花梦飞的博客
12-25 4431
参考文章:https://kexue.fm/archives/5716 https://zhuanlan.zhihu.com/p/40282714 本篇博客主要是参照上述两个博文,另外加入了一些自己的理解,也为了和自己学习或者常见的知识做一个对照,因为在学习过程中总有一个问题困扰,就是符号,前后的符号对照不好,还得想半天。所以有些符合可能跟原文章对不上,但跟我之前的博客可以对上。 特意将常用...
深度学习的学习与实践(1):从AE,VAE,到AAE
weixin_43910007的博客
11-10 1192
前置知识:自编码器入门 前段时间在改论文的过程中,审稿人给出了关于使用对抗自编码器算法的建议。那么作为从(ruo)善(xiao)如(wu)流(zhu)的菜鸡,自然是要准备言听计从。虽然最后在讨论的过程中把这一部分工作还是删掉了(。。。),但是学过的知识不能白费,一定要装作认真的样子记录下来。 以上算是序 自编码器(autoencoder)是一种无监督学习神经网络 本质上来说,自编码器是一种所谓...
AutoEncoder, VAE and AAE
hellozhxy的博客
07-12 174
��(�(�|�)‖�(�)) 比较大的时候,意味着 �(�|�) 充分包含了 � 的信息,这个时候解码损失 −∫��(�|�)ln⁡�(�|�)�� 就会比较小。记 � 是输入, � 是 � 经过编码器后得到的隐变量, �(�|�) 是隐变量分布, �(�|�) 是解码分布, �(�) 是 � 的先验分布, ��(�) 是样本分布, �(�) 是 � 的真实分布。AAE选用了另外一条路——给定 � , ��(�(�|�)‖�(�)) 度量了编码分布 �(�|�) 和先验分布 �(�) 之间的误差,称为。
基于对抗自编码器(AAE)的图像生成模型 matlab代码
最新发布
NGvSezQQt的博客
07-06 426
综上所述,基于对抗自编码器(AAE)的图像生成模型是一种强大的图像生成技术。通过对编码器、解码器和鉴别器的交互训练,AAE能够学习到图像的分布特征,并可以生成与真实图像相似的图像。而鉴别器则试图区分真实图像和生成图像,从而训练生成器生成更逼真的图像。通过对编码器和解码器的交互训练,AAE能够学习到图像的分布特征,并可以生成与真实图像相似的图像。通过在潜在空间中进行向量操作,我们可以生成具有不同属性的图像,从而实现图像的多样性。通过多次迭代训练,AAE模型会逐渐学习到图像的分布特征,并能够生成逼真的图像。
Auto Encoder(AE),Denoising Auto Encoder(DAE), Variational Auto Encoder(VAE) 区别
Haulyn5的博客
02-24 1342
文章主要内容参考李宏毅老师的机器学习课程:https://www.bilibili.com/video/BV1Wv411h7kN?p=70 Auto Encoder: 是什么?有什么用? Auto Encoder 的思路特别简单,就是把高维信息编码为低维信息(encoder的工作),然后再尝试解码回原来的高维信息(decoder的工作),还要尽可能保证能恢复出原来的样子。其中,中间的低维信息被叫做 code, representation, bottleneck, Embedding等等,这里提一嘴,后
东南大学 崇志宏:VAE和GAN技术要点(部分内容)
08-18
变分自动编码和对抗生成网络在深度学习领域取得广泛的影响力,其背后思想和方法技巧可以在wake-sleep框架下进行统一和相互改进。本来希望能够这方面的工作做个总结,但是发现这是一个大的topic,涉及的文献源远流长,很难把握其中的要义,只要做成一个部分的ppt,需要继续努力完整这个讨论!
vaeaae区别是什么
05-17
VAE(Variational Autoencoder)和AAE(Adversarial Autoencoder)都是自编码器(Autoencoder)的变种,它们的区别主要在于训练方式和损失函数的设计。 VAE使用变分推断(Variational Inference)来训练模型,它将...
AAE 讨论总结1
08-08
4. **与AE和VAE区别**:与传统的自编码器相比,AAE通过对抗训练增强了编码器学习到的编码表示的特性。而变分自编码器(VAE)利用变分贝叶斯框架,尝试使编码后向量的分布逼近先验分布,但其编码器和解码器的优化目标...
[论文阅读]Adversarial Autoencoders(aae)和代码
weixin_55982578的博客
05-05 1176
本文提出的"对抗式自动编码器"(AAE)是一种概率自动编码器,它使用最近提出的生成对抗网络(GAN),通过将自动编码器隐藏代码向量的聚集后验与任意先验分布相匹配来执行变异推理。将聚合后验与先验相匹配可确保从先验空间的任何部分生成有意义的样本。因此,对抗式自动编码器的解码器会学习一个深度生成模型,将强加的先验映射到数据分布上。我们展示了对抗式自动编码器如何应用于半监督分类、图像风格和内容分离、无监督聚类、降维和数据可视化等领域。
全新视角:用变分推断统一理解生成模型(VAE、GAN、AAE、ALI)
Paper weekly
07-19 2276
作者丨苏剑林单位丨广州火焰信息科技有限公司研究方向丨NLP,神经网络个人主页丨kexue.fm摘要:本文从一种新的视角阐述了变分推断,并证明了 EM 算法、VAE、GAN...
对抗自编码器(AAE)
Facico的博客
09-20 1万+
对抗自编码器(AAE) 自编码器转换成生成模型 通过两个目标训练:传统的重构误差函数和对抗训练函数—>将AE隐藏层向量表示的聚合后验分布与任意先验分布匹配。训练准则和VAE很像 1、编码器学到将数据分布转换成该先验分布 2、解码器学到一个模型,可以将强加的先验映射到数据分布上 聚合后验分布 与VAE不同的是,AAE采用的是聚合后验分布 q(z)=∫xq(z∣x)pd(x)dx(q(z∣x):编码分布;p(x∣z):解码分布;pd(x)数据分布;p(x)数据模型分布;q(z):z的聚
AAE 对抗自编码(一)
开飞机的小毛驴儿
06-24 6529
转载自:https://kingsleyhsu.github.io/2017/10/10/AAE/ 摘要 在本文中,我们提出了一种概率自动编码器——“adversarial autoencoder”(AAE),它使用了最近提出的生成对抗网络(GAN),通过任意先验分布与VAE隐藏代码向量的聚合后验匹配,来实现变分推理。将聚合后的后验与先验相匹配,为了确保从先验空间的任何部分产生的样本均是有意义...
浅谈AAE
zeronose的博客
02-12 2170
文章目录前言一、AAE结构二、损失函数1.公式2.推导过程3.KL(q(z|x)||p(z))分解总结 前言 文章:Adversarial Autoencoders AAE,对抗性自动编码器,从名字就可以看出来,就是将AE与GAN相结合。 原文中AAE介绍了挺多的东西,无监督的,有监督的,半监督的,聚类,降维等等。本文中,只简单的介绍一下AAE在disentanglement方面的东西,形成一个系列。 一、AAE结构 AAE的结构如图所示,分为两部分。上面是标准的AE,下面是一个判别器。判别器的作用是
VAE全面理解(下)
热门推荐
与贰的博客
09-02 1万+
在上一篇中,我自认为用浅显的语言向诸位介绍了VAE的整个发展的过程,在这篇中,将较多的涉及框架构建以及公式推导部分。 那么,开始吧 1)框架构建 首先我们有一批数据样本 x1,…,xn},其整体用 X 来描述,我们本想根据 {x1,…,xn} 得到 X 的分布 p(X),如果能得到的话,那我直接根据 p(X) 来采样,就可以得到所有可能的 X 了(包括 {x1,…,xn} 以外的),这是一个...
谈谈Adversarial Autoencoders
加勒比海鲜王
09-04 1万+
保留初心,砥砺前行 最近看了Adversarial Autoencoders(以下简称AAE)这篇paper,就随便写几句笔记。paper链接,点我1. 概述:GAN和VAE是近年来很火的生成模型(关于GAN,我之前写过几篇了,需要的话点击文末的相关链接即可),对于这两个模型的研究层出不穷,变体无数,而将这两者结合也是一种优秀的思路。GAN说白了就是对抗,VAE就是一种Autoencoders,而本
[EverString收录]机器学习中分类评估方法简介 - 1
EverString官方技术博客
05-13 876
机器学习中分类评估方法简介
用变分推断统一理解生成模型(VAE、GAN、AAE、ALI)隐变量的艺术
liangwqi的博客
12-04 1284
前言:我小学开始就喜欢纯数学,后来也喜欢上物理,还学习过一段时间的理论物理,直到本科毕业时,我才慢慢进入机器学习领域。所以,哪怕在机器学习领域中,我的研究习惯还保留着数学和物理的风格:企图从最少的原理出发,理解、推导尽可能多的东西。这篇文章是我这个理念的结果之一,试图以变分推断作为出发点,来统一地理解深度学习中的各种模型,尤其是各种让人眼花缭乱的GAN。本文已经挂到arxiv上,需要读英文原稿的...
深度学习AAEGan学习笔记,keras版
u011311291的博客
10-25 2001
写文章

热门文章

  • 关于transforms.Normalize()函数 75182
  • 英语聊天时“好的”、“我知道了”、“收到”、“嗯嗯”之类的怎么说? 54008
  • C++中左移<<和右移>>的使用 44065
  • ROC曲线详解及matlab绘图实例 41511
  • matlab中的mat2cell及cellfun使用 39913

分类专栏

  • 计算机视觉 41篇
  • 机器学习 14篇
  • 数学积累 44篇
  • C++ 85篇
  • MATLAB 31篇
  • 论文总结 19篇
  • 工具辅助 45篇
  • 科研感悟 4篇
  • QT 7篇
  • 深度学习 141篇

最新评论

  • 关于sparse autoencoder的实现与理解

    m@zda: 您好,这个问题解决了吗

  • 关于transforms.Normalize()函数

    H.Y.: 这里是变成标准正太分布吧,均值为0,方差为1,而不是取值范围变成[-1, 1]

  • numpy.rollaxis函数

    访风景于崇峨: 太强了,简洁明了

  • TILT:Transform Invariant Low-Rank Textures

    linjiangxian168: 请问代码都下载下来了,该怎么运行呢?

  • 关于matlab中find函数失效的问题

    SayGiao: 很棒,立马解决

最新文章

  • 禁用rocky linux锁屏避免输入密码无法进入桌面
  • 关于使用Pycharm远程调试的一个bug
  • linux下新建pycharm快捷方式
2024年1篇
2023年1篇
2022年7篇
2021年38篇
2020年84篇
2019年73篇
2018年19篇
2017年49篇
2016年88篇
2015年77篇

目录

目录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

天下网标王梁子湖网站关键词排名优化如何洛阳网站优化费用桐城关键词网站优化优化大师网站刷pc网站优化排名网站关键词优化公司官网优化排名网站哪家好东莞网站优化技巧焦作优惠网站优化公司零售业网站优化宣传湖北搜索引擎网站优化外包巩义优化网站排名收费情况莱西网站优化公司教育网站优化联系方式网站主题及样式优化老网站优化凌海网站seo优化推广武汉网站优化学习谷歌网站优化推荐哪个横琴网站优化无锡做网站优化价格广州增城网站推广优化鄂城区网站关键词排名优化如何图片怎么优化网站排名.网站优化后的效果网站优化方案重点深圳专业网站优化服务人才类网站优化麻涌家具网站优化哪个公司好南京雅克网站优化有限公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化