Abstract
- 传统GAN使用确定性生成器函数(通常是神经网络)将随机噪声输入z变换为鉴别器试图区分的样本x。
- 我们提出了一种新的GAN,称为贝叶斯条件生成对抗网络(BC-GAN),它使用随机生成器函数将确定性输入y'转换为样本x。
- 实验表明,所提出的BC-GAN优于现有技术。
Introduction
- 生成对抗网(GAN)是一类新的模型,用于解决机器学习中无监督学习长期存在的问题。
- 这些算法通过训练两个神经网络生成器和鉴别器来工作,以极小极大的方式玩游戏,以便生成器网络学习生成假样本,使其与真实样本“尽可能”相似。
- 另一方面,鉴别器学会区分真实样本和假样本。从信息论的角度来看,鉴别器是一种学习评估真假样本分布有多接近的度量。
- 原始GAN算法已经扩展到条件模型,其中除了生成器的输入噪声之外,还提供诸如标签的属性向量。
- 这有助于从特定类生成样本,并将此向量添加到生成器网络的任何层将影响性能。
- 在本文中,我们建议用随机函数替换确定性生成函数,这导致更简单和更统一的模型。如图2所示,我们省略了输入中随机向量的需要。
- 此外,生成器网络学习利用其中的不确定性来生成来自特定类的样本,其导致**每个类的某些权重。
- 这种生成器中不确定性的表示(也很容易扩展到鉴别器)允许我们引入贝叶斯条件GAN(BC-GAN) - 贝叶斯框架,用于在条件GAN中学习。
- 通过整合生成器和鉴别器功能,我们将贝叶斯方法的所有好处带给了GAN:代表模型中的不确定性并避免过度拟合。 我们使用dropout(伯努利和高斯)来构建我们的模型。
- 由于训练GAN涉及在鞍点问题中交替训练发生器和鉴别器网络,因此优化非常不稳定并且难以调谐。
- 我们相信利用贝叶斯方法,在蒙特卡罗方式中,我们对函数值的平均值将有助于稳定训练。
图1:本文提出的原始GAN和贝叶斯GAN之间的差异。 在我们的方法中,w作为原始GAN中的生成器的参数本身是随机变量。 此外,y'∈Y是进入生成器的确定性标签变量。每个数据样本都是从生成器函数的样本生成的。
我们做出以下贡献:
- 我们提出了一种条件GAN模型,它自然地处理监督学习,半监督学习和无监督学习问题。
- 与使用随机噪声变量用于生成器的传统方法不同,我们使用随机函数来获取确定性输入(参见图2)。 这使我们能够利用模型中的不确定性而不是输入中的噪声。
- 我们提供了一个贝叶斯框架来学习GAN,捕捉模型中的不确定性和从生成器中获取的样本。 由于贝叶斯方法整合了参数,因此它们不易过度拟合且更稳定。
- 我们将最大平均差异(MMD)度量结合到GAN中,与GAN中已经利用的不同,以进一步改善性能。
贝叶斯条件GAN
- 设
和
分别是
和
的真实数据集和假数据集
- 这似乎只适用于有监督的学习,但它实际上适用于GAN的半监督和无监督学习问题。
- 在监督学习设置中,K是所有数据的类的数目。
- 在我们有一些未标记数据的半监督设置中,我们可以通过为标签y = K + 1分配未标记数据来扩充实际集合S.
- 在无监督学习设置中(即我们所有的都是未标记的数据),真实集用y = 1标记,假的用y = 0。
- 在诸如Wasserstein GAN的许多GAN中,生成器是将随机噪声输入转换为鉴别器试图区分的样本的函数(参见图2)。
- 另一方面,在我们的方法中,我们将生成器建模为随机函数fG,将确定性输入y'转换为样本x,其分布类似于实际数据的分布(参见图2底部)。
- 我们将来自生成器的一组生成样本的分布定义为
- 其中w是生成器网络的参数/权重,p(w)是w上的先验。 fD是用于测量输入x和输出y的兼容性的鉴别器函数。
- 图二说明生成器和鉴别器在我们的方法中的作用。 而不是类似地,我们将来自鉴别器的一组实际样本的分布定义为:
- 其中theta是鉴别器网络的参数/权重。 这些类似于分类问题的高斯过程(GP)。 实际上,已经表明在鉴别器类型网络中使用丢失类似于GP中的后验估计。
- 在参数推理中使用贝叶斯方法的优势在于我们在方法中包含模型不确定性,并且能够更好地解决与GAN的收敛问题。
- 这是因为使用来自后方的权重并利用功能分布,学习者可以在复杂的参数空间中更好地导航。
- 我们观察到这有助于一般GAN由于发生器和鉴别器中的交替优化而未到达鞍点的问题。
- 为了估计期望并进行推理,我们转向常用的蒙特卡罗方法。
- 在下文中,我们将讨论并试验其中两种方法。一个是Markov Chain Monte Carlo,另一个是Gradient Langevin动态。
- 由于模型的不确定性和生成器功能的随机性,我们观察到多轮生成器更新在实践中表现更好。
- 换句话说,我们比更新鉴别器更经常地采样生成器。
- 通过生成器和鉴别器的分布定义,我们现在展示如何在下面学习它们。
2.1 MAP Estimate and SamplingMAP估计和采样
- 使用变换函数的分布和鉴别器的不确定性的简单方法是从权重分布中采样,然后执行GAN更新。
- 为此,我们对生成器和鉴别器的功能值进行采样,并相应地最小化网络损耗。
- 这种方法与执行顺序决策中使用的Thompson抽样相同,其中代理迭代地选择一个动作以最小化贝叶斯框架内的预期损失。
-
这里,生成器和鉴别器相互播放Thompson采样,其中在每次迭代时基于当前观察(来自伪造和真实数据的样本)更新鉴别器(奖励函数)的分布。
这里pdata是数据的真实底层分布,而pfake是由生成器表示的数据的虚假分布。
是鉴别器网络的损耗函数,
是发生器网络的丢失。
描述了(x,y)和(x',y')的差异。 我们方法的总体框架如图2所示。
- 由于蒙特卡罗是预期的无偏估计,我们对函数的参数执行MAP,然后按如下方式对函数本身进行采样,我们将此方法称为MAP-MC,
2.2 Full Bayesian using Stochastic Gradient Langevin Dynamics完全贝叶斯使用随机梯度朗之万动力学
- 在我们的GAN模型中进行推理的另一种方法是采用随机梯度Langevin动力学。
- 受Robbins-Monro算法的启发,该MCMC方法被提议用于在大型数据集中执行更有效的推理。
- 原则上,Langevian动力学通过注入噪声在最大后验方向上更新参数,使得轨迹覆盖整个后验。
- 因此,通过向模型更新的梯度添加噪声来更新鉴别器和生成器网络。
- 当损失LD,LG产生例如分布时,尤其使用这种方法。 在softmax损失的情况下。
-
Langevin动力学允许我们对参数进行完整的贝叶斯推断,并对先前的方法进行微小的修改。 为了使用Langevin动力学,我们用渐变的高斯噪声更新参数,即
- 这种增加的噪声将确保参数不仅遍历分布模式,而且还根据它们的密度对它们进行采样。
- 实际上,为了改善GAN模型的收敛性,我们使用较小的噪声分布方差。
3 Sampling Functions采样功能
- 在我们的算法的每一步,我们需要计算关于生成器和鉴别器的期望。
- 我们通过根据每个函数的分布对每个函数进行采样来完成此操作。
- 这是通过dropout这样的简单技巧完成的,这些技巧允许我们从神经网络中进行采样。
- 结果表明,dropout具有贝叶斯解释,其中后验是使用变分推理近似的。
- 高斯过程和dropout之间的连接用于分类是通过在模型中的变量上放置变分分布并最小化变量分布和变量的真实分布之间的KL差异来实现的。
- Dropout也可以作为一个正则化器,并且可以改善神经网络的泛化性能。
- 因此,我们使用dropout作为对生成器和鉴别器的各种功能进行采样的方法。
- 对于鉴别器,我们使用丢失变量来估计鉴别器在预测中的不确定性,使用预测分布的方差:
- 其中a表示**函数(我们略微误用了用于指示预测均值和方差的符号),T> 0是权重的先验的方差,I是单位矩阵。
- 这里,x *,y *表示来自真实或假数据集的测试实例及其对应的预测标签。
- 我们使用与使用dropout变体相同的技巧来获取生成器函数的样本。
- 虽然GP通过分析积分参数以非参数贝叶斯方式定义函数的分布,但我们对参数进行采样并使用蒙特卡罗方法来估计它们的期望。
4 Choice of discrepancy measure差异措施的选择
- 当生成器网络生成高质量的假样本时,假样本和实际样本之间的差异预计很小。
- 合适的差异度量应该捕获真实和伪造数据的统计特性。
- 我们选择最大平均差异(MMD)度量,当数据的维数很大并且输入空间中的力矩匹配不可能时断言,使用非线性特征图的两个分布的经验平均值之间的差异是接近度的度量 对于双样本问题。此度量中使用的要素图必须有界且紧凑。
- 通过约束权重来确保这种性质,即
我们的
函数定义为,
- 有趣的是,在该测量的神经网络实现中,我们只需要确保参数被标准化。神经网络中权重归一化的价值已经在。
- 在这里我们展示它可以在我们的GAN模型中以不同的方式用于密度比较。
5.Experiments
- 通常对生成模型和GAN的评估通常是困难的。
- 由于我们的方法也存在分类损失,因此我们针对半监督学习问题。
- 特别地,我们可以使用少量具有对数丢失的训练实例和用于训练我们的模型的鉴别器的输出的softmax层。
- 我们还观察到在丢失中添加伪图像的输出是很重要的(即,对于鉴别器网络具有K + 1输出)。
- 我们使用one-hot向量标签作为发生器的输入。
- 这种确定性输入可能导致整个生成器网络崩溃,尤其是在随机化不足的情况下。
- 我们从输入中为每一层添加了dropout和高斯噪声层。
- 对于所有实验,我们将随机梯度下降的批量大小设置为100。
- 我们随机选择标记示例的子集,并将其余部分用作未标记的数据进行训练。
- 我们执行这些实验5次并报告平均值和标准误差。
- 我们对MAP-MC方法使用恒定学习率,并且与Langevin动力学的训练时期成反比地降低学习率。
- 对于Monte Carlo样品,我们仅使用2个样品来提高效率。
- 我们在两个数据集上评估我们的方法:MNIST和CIFAR-10。 在我们的实验中,MAP-MC在准确性方面表现优于Langevin动力学,我们推测这是由于推理方法的性质。
- 直观地说,在Langevin动力学中,梯度是有噪声的,因此参数在具有极小极大目标的这种复杂空间中的移动是困难的。
- MNIST数据集:MNIST数据集1包含60; 000培训和10; 000个测试图像,大小为28X28的手写数字作为灰度图像。
- 由于图像像素是二进制的,我们使用具有sigmoid**的生成器网络来输出每个像素。
- 对于生成器,我们为所有类均匀地为输入采样单热标签向量y'(对于10个类,我们具有相等数量的样本作为生成器网络的输入)。
- 我们使用具有500个softplus**单元的三层发生器网络。 在这些完全连接的层之间,我们使用高斯和伯努利压差,方差分别为0.9和0.1。
- 我们还在每一层之后使用批量标准化,这显示是有效的。
- 鉴别器是完全连接的网络,其间具有高斯和伯努利丢失层,分别具有方差0.9和比率0.05。
- 我们在最后一层使用权重归一化(在所有层中使用它似乎可以提高收敛速度)。
- 如图3所示,我们可以从MNIST数据集中为每个标签生成实际图像的样本。
- 上面生成的图像的小数字分别是生成的标签和鉴别器的预测。
- 如所观察到的,在训练的最后阶段,鉴别器是如此强大,以至于可以基本上正确地预测几乎所有生成的标签。
- 还训练生成器以将生成的类与相应的图像匹配。
- 应当注意,这里的样本利用了期望的生成器网络功能的不确定性。
- 表1列出了使用我们的方法与现有技术相比的半监督学习的测试误差。
- 此外,如图4所示,当每个类仅使用10个标记实例时,鉴别器的预测方差作为其不确定性的度量。
- 正如预期的那样,通过训练,方差得以减少,鉴别器对其预测变得更加自信。
- CIFAR-10数据集:CIFAR-10数据集由10类自然32 X 32 RGB图像组成,其中50,000张图像用于训练,10,000张图像用于测试。
- 由于更高的尺寸,颜色和可变性,图像的复杂性使得这项任务更加困难。
- 我们在输入之后使用完全连接的层和三个反卷积层,这些层被批量归一化以生成样本。
- 同样,我们在0.9和0.2之间的层之间使用伯努利和高斯dropout来引起不确定性。
- 对于鉴别器网络,我们使用9层卷积网络,输出中有两个全连接层。
- 此外,我们在每一层使用权重归一化。我们在表2中报告了我们用于半监督学习的数据集方法的表现。
- 来自图5中所示的发生器的样本。如在MAP-MC的情况下观察到的,我们具有在图像具有相同标签的列之间具有相似性的不同图像。
- 另一方面,Langevin方法遭遇其中一个类似于左侧的第三列类似的模式崩溃。
- 它表明我们应该早些时候停止Langevin或在dropout中使用更高的方差或比率。
6 Related work
- 自从用于无监督学习的GAN开始以来,已经进行了各种尝试以更好地解释这些模型,将它们扩展到无监督学习之外或者生成更真实的样本。
- Wasserstein GAN和Loss-Sensitive GAN最近开发了理论上的基础方法,提供了这些模型的信息理论视图。
- 这些方法的目标被构造成比在鉴别器中完成的二进制分类更通用。
- 实际上,鉴别器可以作为生成样本的接近程度的衡量标准,也可以作为本文采用的类似方法。
- 此外,GAN已经成功地用于潜变量建模和半监督学习,其直觉是当标记实例的数量很小时,生成器协助鉴别器。
- 例如,InfoGAN建议学习一个代表数据集的潜变量,同时学习利用变分推理生成图像。
- 虽然它没有直接用于半监督学习,但其扩展分类GAN(CatGAN)利用互信息作为其损失的一部分已经发展出非常好的表现。
- 此外,已开发出启发式方法,以便在使用GAN的半监督学习中实现更好的培训和实现最先进的结果。
- 另一方面,与我们的方法不同,条件GAN通过将标签矢量添加到输入噪声来生成标记图像。
- 此外,MMD措施已在GAN中成功使用。但是之前必须明确定义内核函数,在我们的方法中,我们将其作为鉴别器的一部分来学习。
- 在GAN中使用贝叶斯方法通常限于将变分自动编码器与GAN组合。
- 另一方面,我们使用差分近似的变分推理对鉴别器和发生器采用贝叶斯视图。这使我们能够开发出更简单,更直观的模型。
7 Conclusion
- 与传统的GAN不同,我们提出了一种称为BC-GAN的条件贝叶斯模型,它利用生成器中的不确定性作为生成实际样本的随机源。
- 同样,我们评估可用作衡量其性能的鉴别器的不确定性。这使我们能够从功能的角度更好地分析好的生成器/鉴别器的行为,以便对未来有所了解并阐明GAN。
- 我们还在半监督学习问题中评估了我们的方法,并展示了其在实现最新结果方面的有效性。
- 在未来,我们计划探索其他推理方法,如哈密尔顿蒙特卡罗,可能会产生更好的性能。
- 此外,我们希望对我们的方法进行更多分析,以便在minimax模型中更好地解释其内部行为。