VAE的损失函数的拆分

本文深入探讨了VAE(变分自编码器)的损失函数,特别是其Disentangle概念,即解纠缠,旨在寻找数据中可解释的、分离的因子。文章详细介绍了VAE的损失函数的不同形式,以及如何通过分解目标函数来理解各部分的作用,包括后验分布的近似、条件分布的一致性和边际分布的匹配。通过移除目标函数的不同项,分析了它们对模型学习行为的影响。
摘要由CSDN通过智能技术生成

「Structured Disentangled Representations」这篇文章对VAE的损失函数提出了一个统一化的解释,根据这个解释可以很好的分析近几年来对VAE的各种变形。

什么是Disentangle

Disentangle 的意思是解纠缠,所谓解纠缠,也叫做解耦,就是将原始数据空间中纠缠着的数据变化,变换到一个好的表征空间中,在这个空间中,不同要素的变化是可以彼此分离的。
比如,人脸数据集经过编码器,在潜变量空间Z中,我们就会获得人脸是否微笑、头发颜色、方位角等信息的分离表示,我们把这些分离表示称为Factors。 解纠缠的变量通常包含可解释的语义信息,并且能够反映数据变化中的分离的因子。在生成模型中,我们就可以根据这些分布进行特定的操作,比如改变人脸宽度、添加眼镜等操作。(转自知乎用户:大象)

VAE 要做的就是要找到这些隐式的解纠缠变量,当然也有很多其他方法能做到这一点,比如狄利克雷过程。
这篇文章主要讲了自动编码机上的应用。

VAE损失函数的不同形式

  1. VAE的目标以往被定义成每个数据点ELBO(Evidence Lower Bound)的期望值在数据点X上的集合,或者被定义为一个用有限个数的数据点来接近实际分布的经验性的分布。个人理解就是如果你有这个要求的分布的很多点的话,就能拿来定义这个分布。
    即:
    L V A E ( θ , ϕ ) : = E q ( x ) [ E q ϕ ( z ∣ x ) [ l o g p θ ( x , z ) q ϕ ( z ∣ x ) ] ] L^{VAE}(\theta,\phi):=E_{q(x)}[E_{q\phi(z|x)}[log \frac{p_\theta(x,z)}{q_\phi(z|x)}]] LVAE(θ,ϕ):=Eq(x)[Eqϕ(zx)[logqϕ(zx)pθ(x,z)]]
    q ( x ) : = 1 N ∑ N n = 1 δ x ( ) x q(x) := \frac{1}{N} \sum_{N}^{n=1}\delta_x()x q(x):=N1Nn=1δx()x
    这里的分布q和分布p分别被 ϕ \phi ϕ θ \theta θ参数化。
  2. 把VAE的损失函数定义为KL散度。这个KL散度是生成模型(generative model) p θ ( z , x ) p_\theta(z,x) pθ(z,x)与推测模型(inference model) q ϕ ( z , x ) = q ( z ∣ x ) q ( x ) q_\phi(z,x)= q(z |x)q(x) q
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值