变分自编码器:球面上的VAE(vMF-VAE)

©PaperWeekly 原创 · 作者|苏剑林

单位|追一科技

研究方向|NLP、神经网络

变分自编码器:VAE + BN = 更好的 VAE 中,我们讲到了 NLP 中训练 VAE 时常见的 KL 散度消失现象,并且提到了通过 BN 来使得 KL 散度项有一个正的下界,从而保证 KL 散度项不会消失。事实上,早在 2018 年的时候,就有类似思想的工作就被提出了,它们是通过在 VAE 中改用新的先验分布和后验分布,来使得 KL 散度项有一个正的下界。

该思路出现在 2018 年的两篇相近的论文中,分别是《Hyperspherical Variational Auto-Encoders》[1] 和《Spherical Latent Spaces for Stable Variational Autoencoders》[2],它们都是用定义在超球面的 von Mises–Fisher(vMF)分布来构建先后验分布。某种程度上来说,该分布比我们常用的高斯分布还更简单和有趣。

KL散度消失

我们知道,VAE 的训练目标是:

其中第一项是重构项,第二项是 KL 散度项,在变分自编码器:原来是这么一回事中我们就说过,这两项某种意义上是“对抗”的,KL 散度项的存在,会加大解码器利用编码信息的难度,如果 KL 散度项为 0,那么说明解码器完全没有利用到编码器的信息。

在 NLP 中,输入和重构的对象是句子,为了保证效果,解码器一般用自回归模型。然而,自回归模型是非常强大的模型,强大到哪怕没有输入,也能完成训练(退化为无条件语言模型),而刚才我们说了,KL 散度项会加大解码器利用编码信息的难度,所以解码器干脆弃之不用,这就出现了 KL 散度消失现象。

早期比较常见的应对方案是逐渐增加 KL 项的权重,以引导解码器去利用编码信息。现在比较流行的方案就是通过某些改动,直接让 KL 散度项有一个正的下界。将先后验分布换为 vMF 分布,就是这种方案的经典例子之一。

vMF分布

vMF 分布是定义在 d-1 维超球面的分布,其样本空间为 ,概率密度函数则为:

其中 是预先给定的参数向量。不难想象,这是 上一个以 为中心的分布,归一化因子写成 的形式,意味着它只依赖于 的模长,这是由于各向同性导致的。由于这个特性,vMF 分布更常见的记法是设 ,从而:

这时候 就是 的夹角余弦,所以说,vMF 分布实际上就是以预先为度量的一种分布。由于我们经常用余弦值来度量两个向量的相似度,因此基于 vMF 分布做出来的模型,通常更能满足我们的这个需求。当 的时候,vMF 分布是球面上的均匀分布。

从归一化因子

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值