Sampling Generative Networks-2016
Sampling Generative Networks-2016
(抽样生成网络)
摘要:
我们介绍了几种用于采样和可视化生成模型潜在空间的技术。 用球面线性插值替换线性插值可防止与模型的先前分布产生偏差,并产生更清晰的样本。 引入了J-图和MINE网格,作为类比和最近邻居创建的流形的可视化。 我们演示了两种用于导出属性向量的新技术:具有数据复制的偏差校正向量和具有数据增强的合成向量。 提出了使用属性向量的二进制分类,作为支持对潜在空间进行定量分析的技术。 大多数技术旨在独立于模型类型,并且在变式自动编码器和生成对抗网络上均显示了示例。
介绍:
生成模型是无监督机器学习的一种流行方法。 训练了生成神经网络模型,以产生类似于训练集的数据样本。 由于模型参数的数量明显少于训练数据,因此模型被迫发现有效的数据表示形式。 这些模型是从高维空间中的一组潜在变量(这里称为潜在空间)中采样的。 可以对潜在空间进行采样以生成可观察的数据值。 学习的潜在表示通常还允许使用向量空间算法进行语义运算(图1)。
图1:生成模型的潜在空间示意图。 在一般情况下,生成模型包括一个编码器,用于从特征空间(此处为人脸图像)映射到高维潜在空间。 向量空间算术可用于潜在空间中以执行语义运算。 该模型还包括一个解码器,用于从潜在空间映射回特征空间,在该空间中可以观察到语义操作。 如果潜在空间变换是恒等函数,我们将编码和解码称为通过模型的输入重构。
生成模型通常应用于图像数据集。 两种流行的图像数据生成模型是变分自动编码器(VAE,Kingma&Welling,2014)和生成对抗网络(GAN,Goodfellow等,2014)。 VAE使用概率图形模型的框架,以最大程度地降低数据可能性的下限为目标。 GAN而是将培训过程正式化为生成网络与单独的歧视网络之间的竞争。 尽管这两个框架有很大的不同,但它们都构造了高维潜在空间,可以对其进行采样以生成类似于训练集数据的图像。 此外,这些潜在空间通常是高度结构化的,并且可以通过潜在空间中的简单矢量空间算法对生成的图像进行复杂的操作(Larsen等人,2016)。
生成模型开始逐渐摆脱学术界并进入创造性应用。 在本文中,我们介绍了用于提高生成模型的视觉质量的技术,这些技术通常独立于模型本身。 其中包括球面线性插值,可视化与J-图的类比以及生成带有MINE网格的局部流形。 可以组合使用这些技术,以生成靠近已训练流形的低维图像嵌入。 这些可用于可视化并在潜在空间上创建相对插值。 同样通过标准化这些与模型类型无关的操作,不同生成模型的潜在空间可以更直接地彼此比较,从而揭示了各种方法的优缺点。
另外,介绍了两种用于构建潜在空间属性矢量的新技术。 在带有相关标签的标签数据集上,数据复制可用于创建偏差校正的向量。 合成属性向量也可以通过对未标记数据进行数据扩充而得出。 通过将属性向量用作属性二进制分类器的基础,可以对属性向量进行定量分析。
2 Sampling Techniques(采样技术)
生成模型通常通过检查来自潜在空间的样本来评估。 经常使用的技术是随机采样和线性插值。 但是通常这些可能会导致从可能位置的集合之外很远的位置对潜在空间进行采样。
在对生成模型的潜在空间进行采样时,我们的工作遵循两个有用的原则。 首先是要避免从给定模型先验条件的位置进行采样。 该技术已经非常完善-包括在原始VAE论文中使用,该论文通过高斯逆CDF调整采样以适应高斯先验(Kingma&Welling,2014)。 第二个原则是要认识到,潜在空间的维数通常是人为地高的,并且可能包含死区,这些死区不在训练期间学习的流形上。 VAE模型已经证明了这一点(Makhzani等,2016),这意味着仅匹配模型的先验条件并不总是足以产生看起来是从训练集中提取的样本。
2.1 Interpolation(插值)
插值用于在潜在空间中的两个已知位置之间移动。 对生成模型的研究通常使用内插法来证明生成模型并不仅仅是记住训练示例(例如:Radford等人,2015年,第6.1节)。 在创造性的应用中,可以使用插值来提供两个解码图像之间的平滑过渡。
通常使用线性插值,这很容易理解和实现。 但这通常是不合适的,因为大多数生成模型的潜在空间是高维(> 50维)且具有高斯或统一先验。 在这样的空间中,线性插值遍历的位置在先前情况下极不可能。 举一个具体的例子,考虑一个高维先验μ= 0,σ= 1的100维空间。 在这里,所有随机向量的长度通常都非常接近10(标准偏差<1)。 但是,在任意两个之间进行线性插值通常会导致“帐篷极”效应,因为矢量的大小在中点处从大约10减小到7,这比预期长度超出了4个标准差。
我们提出的解决方案是使用球面线性插值slerp代替线性插值。 我们使用(Shoemake 85)引入的公式在旋转动画之间存在很大弧度的情况下:
这会将插值视为n维超球体上的大圆路径(高度会发生变化)。 这项技术在VAE和GAN生成模型上以及在先验和高斯先验下均显示出令人鼓舞的结果(图2)。
图2:具有相同端点和统一先验的DCGAN(Radford 15)插值对。 在每对中,顶部序列是线性插值,而底部是球形。 注意在中心由线性插值产生的弱代,在球形插值中不存在。
2.2 Analogy(类比)
已经显示出类比可以捕获连续空间模型中的规律性。 在某些语言模型的潜在空间中,“国王–男人+女人”产生的向量非常接近“女王”(Mikolov等人,2013)。 这项技术也已经在深度生成模型的背景下用于解决视觉类比(Reed等人,2015)。
类比通常以以下形式编写:
这种形式回答了“将A:B转换为C的结果是什么?”的问题,在向量空间中,通常提出的解决方案是使用向量数学来解决类比:
请注意,此解决方案的一个有趣属性是隐式对称:
因为可以重新排列相同的术语:
生成模型包括一个编码器,用于在给定新样本的情况下计算潜在矢量,从而可以进行视觉类比。== 我们设计了一种视觉表示形式,用于描述称为“ J-Diagram”的视觉生成网络的类比。 J图使用二维插值法,从而暴露了类比的多样性。==这也使类比的对称性清晰可见(图3)。
J-Diagram还可以用作跨不同模型设置的参考可视化,因为它确定性地从可以保持恒定的图像生成。 这使其成为在训练期间,调整超参数之后甚至在完全不同的模型类型之间跨时期比较结果的有用工具(图4)。
图3:J-图 三个角图像是系统的输入,左上角是“源”(A),另外两个是“模拟目标”(B和C)。 与每个图像相邻的是通过模型的编码器和解码器运行图像而产生的重构。 右下方的图像显示了应用类比运算(B + C)– A的结果。所有其他图像均为使用slerp运算符的插值。 (型号:CelebA的Lamb 16的VAE)
图4:相同的J-图重复使用不同的模型类型。 为了便于比较(并证明结果并非挑剔),选择的输入是验证集的前3张图像。 (型号:CelebA的Dumoulin 16的GAN)
2.3 Manifold Traversal(歧管遍历)
生成模型会产生未紧密堆积的潜在空间,并且该潜在空间的维数通常是人为设置的。 结果,经过训练的示例的流形可能是经过训练的潜在空间的子集,从而导致在预期的先验中出现死区。
如果模型包含编码器,则保留在流形上的一种简单方法是仅在潜空间中使用样本外编码(即,训练中未使用的任何数据)。 这是一种有用的诊断方法,但是在创造性的应用程序上下文中过于严格,因为它阻止了模型建议模型中的新样本和新样本。 但是,我们还可以通过包括对这些编码样本保持接近流形的运算结果(例如插值,外推和类比生成)来恢复此功能。
理想情况下,将存在一种机制来发现潜在空间中的该歧管。== 在具有编码器和大量样本外数据的生成模型中,我们可以预先以足够的密度预先计算流形上的位置,然后从该已知集中查询潜在空间中的附近点。 ==这提供了一种导航机制,该机制基于跨大型已编码样本数据库跳到最近的邻居。 当与插值结合使用时,我们将此可视化称为歧管插值邻居嵌入(MINE)。 MINE网格对于可视化潜在空间的局部补丁很有用(图5)。
图5:使用30k CelebA验证和测试图像作为样本外特征数据集构建的本地VAE歧管示例。 生成的MINE网格代表较大的潜在空间的小连续流形。 (型号:CelebA的Lamb 16的VAE)
3 Attribute Vectors(属性向量)
即使在纯无监督的数据集上,许多生成模型也会导致高度结构化的潜在空间(Radford等人,2015)。 当与标记的数据组合时,可以使用简单的算法来计算属性向量。 例如,可以计算出代表微笑属性的向量,简写为称呼为微笑向量。 随后(Larsen et al。,2016),可以通过简单地从具有微笑属性的图像的平均矢量中减去不具有微笑属性的图像的平均矢量来计算微笑矢量。 然后可以将这个微笑向量应用于正向或负向,以对从潜伏空间中获取的样本操纵此视觉属性(图6)。
3.1 Correlated Labels(相关标签)
从标记的数据中构建属性向量的方法已被指出具有相关的标记(Larsen等,2016)。== 虽然可以从基本事实中获得许多相关性(例如:浓妆和戴口红),但我们发现其他一些似乎来自采样偏差。== 例如,男性和微笑属性具有出乎意料的负相关性,因为CelebA数据集中的女性比男性更容易微笑。 (表格1)。
图7:建立微笑矢量的初始尝试遭受了采样偏差。 效果是,从重建中消除笑容(左)也增加了男性属性(中)。 通过在计算属性向量之前使用复制在两个属性之间平衡数据,消除了性别偏见(右)。 (型号:CelebA的Lamb 16的VAE)
在一个在线服务中,我们设置为自动添加和删除图像中的笑容1,我们发现这种性别偏见在结果上是显而易见的。== 我们的解决方案是对训练数据使用复制,以使数据集在各个属性之间保持平衡。== 之所以有效,是因为在计算属性向量时,最终将向量简单地加在一起(图7)。
该平衡技术还可以应用于由于地面事实而相关的属性。 解耦属性允许单独应用各个效果。 例如,在CelebA训练集中,微笑和张开两个属性高度相关(表2)。 这并不奇怪,因为实际上大多数被拍到微笑的人也会张开嘴。 但是,通过强制这些属性平衡,我们可以构造两个解耦的属性向量。 这样可以在不同程度分别应用每个属性时提供更大的灵活性(图8)。
图8:用于微笑(x轴)和张开(y轴)的去耦属性向量允许更灵活的潜在空间转换。 输入显示在左侧,重建区域相邻。 (型号:CelebA的Lamb 16的VAE)
3.2 Synthetic Attributes(综合属性)
3.3 Quantitative Analysis with Classicication(分类定量分析)
4 Future Work
见原文:Sampling Generative Networks