什么是条件变分自动编码器?
条件变分自动编码器(Conditional Variational AutoEncoder)是变分自动编码器(VAE)的一个变体,引入了额外的条件从而生成更加丰富逼真的数据。要想了解CVAE,我们首先来了解VAE。
变分自动编码器VAE
变分自动编码器的目标是生成模型,意味着我们希望能够生成看起来像训练数据样本的虚假样本。变分自动编码器将提供一个空间,称为潜在空间,从中可以对点进行采样。
变分自动编码器通常包含两部分结构,编码器和解码器。编码器将输入压缩为一个更小的形式,然后再将其转换回输入的近似值。用于解压数据的函数称为解码器,这些函数可以是神经网络,也可以是其他。
只有在对潜在空间施加某种约束,变分自动编码器VAE才能够生成想要的数据。
VAE将样本映射为概率分布。即,输出分布的均值和方差,解码器将潜变量z解码。由于方差的引入,采样的潜变量具有一定的不确定性。因此,相对于自编码器,条件变分自动编码器相当于在潜空间中注入了噪声。
改进
条件变分自动编码器在编码器和解码器都引入了额外的条件,使得标签和特征是解耦的。