本周阅读的是"β-VAE:Learning Basic Visual Concepts with a constrained variational framework"。
本文是Disentangled Representation领域中比较有代表性的文章,首先VAE模型本身有利于学习disentangled隐编码表示(由于Encoder,Decoder结构和变分下界损失),而作者提出的β-VAE,通过加强分量独立性限制的方式增强了VAE模型的disentangle能力,但是对β所起的作用分析还不够清楚。
PaperFrame
- Introduction: 介绍Disentangled Representation相关工作,尤其是现有的SOTA的模型:InfoGAN(无监督)、DC-IGN(半监督),介绍全文工作
- Methods:
- β-VAE 公式推导
- Disentanglement评价指标
- 实验
- 定性实验:不同模型disentangled Representation的效果定性比较。
- 量化实验:不同模型disentangled Representation的效果定量比较,β 的选取的影响。
- 结论
Methods
β-VAE frame
与原始VAE不同的是,作者将隐编码划分为v和w两个部分,这两部分别代表隐编码中条件独立(disentangled)的因子和非条件独立的因子,所以图像对隐编码的条件分布可以表示为:
pθ(x∣z)=pθ(x∣v,w)=Sim(v,w)。
和原始的VAE公式一样,通过最大边缘似然估计条件分布pθ(x∣z)的参数θ。
θmaxEpθ(z)[logpθ(x∣z)](Equation:marginal-likelihood)
用一个近似的后验分布qϕ(z∣x)代替后验分布。作者说为了确保近似后验分布qϕ(z∣x)能够以disentangled的方式捕捉到v,变成优化以下问题:
θ,ϕmaxEx∼D[Eqϕ(z∣x)(logpθ(x∣z))]subject toDKL(qϕ(z∣x)∣∣pz)≤ϵ(Equation:optimized-problem)
用拉格朗日乘子法将上述有约束的优化问题写为拉格朗日函数:
F(θ,ϕ,β;x,z)=Eqϕ(z∣x)[logpθ(x∣z)]−β(DKL(qϕ(z∣x)∥p(z))−ϵ)(Equation:optimized-problem2)
由KL散度非负可得ϵ非负,由KKT互补松紧条件可得β非负,则去掉常数项
可以转化成:
F(θ,ϕ,β;x,z)≥L(θ,ϕ;x,z,β)=Eqϕ(z∣x)[logpθ(x∣z)]−βDKL(qϕ(z∣x)∥p(z))(Equation:beta-VAE-main)
公式公式(Equation:beta-VAE-main)就是β-VAE的优化目标。注意到当 β=1时,β-VAE变为原始VAE模型。作者提出β作为超参数,通过改变近似后验分布qϕ(z∣x)分布限制(接近p(z)即标准正态分布)的约束强度,迫使 encoder 学习图像更有效的表述。
(我认为这里的直观上的解释是:p(z)通常取各向同性(isotropic)的高斯分布,每一个维度的分量都是独立的,近似后验分布向它靠近的同时,要求输出的隐编码分量是相互独立的,增大β加强了分量独立的限制。)
β对分布限制约束加强的同时,会减弱重建误差的约束强度,所以作者又认为β是一种在生成图像质量和学习到的隐编码的disentangled程度的trade off。
Quantative Disentanglement Metric
作者认为Disentanglement 要保持两种属性,一是隐编码分量间条件独立(conditionally independent),二是隐编码分量可解释(Interpretablility)。
也就是"Disentanglement=Independence+ Interpretablility"。从直观的生成图像的角度表现为:1. 对一组隐编码,保持一个分量不变,其他分量变化,而生成的图像保持一种相同的特征。2. 这种相同的特征十分明显,即使使用非常简单(低容量)的线性分类器预测这个特征种类,也可以取得鲁棒的结果。
基于以上观点,作者提出了一种Disentanglement评价指标,如算法(algorithms:metrics)表示。(该算法按原文的意思整理而成。)
Conclusions
在实验中,作者得到的比较重要的结论有:
1. 定性比较实验中,β-VAE学习到的表示比起InfoGAN看起来更加disentangled。定量实验中,在作者构建的数据集上(dSprites)β-VAE的表现和DC-IGN的表现一样,好于InfoGAN。InfoGAN由于GAN训练中
可能只学习到原始数据集的子集的原因,对不同形状的不同属性的图像生成表现不稳定。
2. Disentanglement和重建的图片质量存在trade-off。
3. 通常取β>1已经足够取得比较好的disentanglement效果,β过小和过大都会降低disentanglement效果,作者认为β太大,导致实际的隐编码的容量会小于用于图像生成的因子的数量,
所以为了生成图像,模型要学习entangled的隐编码。
一种直观解释是:β过大时,模型过于强调KL项的优化而忽略重建误差项的优化,模型学习到的编码已经完全偏离了图像的本意,更谈不上disentangled效果了。
4. 隐编码的维数越高,达到最佳disentanglement表现的最优β取值越大。
5. β-VAE的效果可能取决于训练集中图像的不同的因子的采样密度。
评价
1. β-VAE 本文中最大的不足是作者还没有对β的真正作用进行
详尽的理论分析,仅有idea层次的说明和实验性的结论。而且作者将β过大导致disentanglement表现
下降归咎于隐编码实际容量的下降,并没有说明为什么实际容量下降,我并不是很理解。
2. 从公式(Equation:marginal-likelihood)到公式(Equation:optimized-problem)的转换,作者直接说为了确保近似后验分布qϕ(z∣x)能够
以disentangled的方式捕捉到v,变成优化公式公式(Equation:optimized-problem)。虽然直观感觉上还是make sense的,但是好像和作者所说的v的编码没有什么关系,不够严谨。
3. 在Metrics一节,作者认为"Disentanglement = Independence + Interpretablility",但是显然β-VAE没有对 interpretablility 有任何限制。
本文是Disentangled Representation领域中比较有代表性的文章,首先VAE模型本身有利于学习disentangled隐编码表示(由于Encoder,Decoder结构和变分下界损失),而作者提出的β-VAE,通过加强分量独立性限制的方式增强了VAE模型的disentangle能力,但是对β所起的作用分析还不够清楚。
Ideas
Specfied in My repo。