软件学报  2020, Vol. 31 Issue (4): 1002-1008   PDF    
条件概率图产生式对抗网络
李崇轩 , 朱军 , 张钹     
清华大学 计算机科学与技术系, 北京 100084
摘要: 产生式对抗网络(generative adversarial networks,简称GANs)可以生成逼真的图像,因此最近被广泛研究.值得注意的是,概率图生成对抗网络(graphical-GAN)将贝叶斯网络引入产生式对抗网络框架,以无监督的方式学习到数据的隐藏结构.提出了条件概率图生成对抗网络(conditional graphical-GAN),它可以在弱监督环境下,利用粗粒度监督信息来学习到更精细而复杂的结构.条件概率图生成对抗网络的推理和学习遵循与graphical-GAN类似的方法.提出了条件概率图生成对抗网络的两个实例.条件高斯混合模型(conditional Gaussian mixture GAN,简称cGMGAN)可以在给出粗粒度标签的情况下从混合数据中学习细粒度聚类.条件状态空间模型(conditional state space GAN,简称cSSGAN)可以在给定对象标签的情况下学习具有多个对象的视频的动态过程.
关键词: 深度生成模型    产生式对抗网络    概率图模型    弱监督学习    条件模型    
Conditional Graphical Generative Adversarial Networks
LI Chong-Xuan , ZHU Jun , ZHANG Bo     
Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China
Abstract: Generative adversarial networks (GANs) have been promise on generating realistic images and hence have been studied widely. Notably, graphical generative adversarial networks (graphical-GAN) introduce Bayesian networks to the GAN framework to learn the underlying structures of data in an unsupervised manner. This study proposes a conditional version of graphical-GAN, which can leverage coarse side information to enhance the graphical-GAN and learn finer and more complex structures, in weakly-supervised learning settings. The inference and learning of conditional graphical-GAN follows a similar protocol to graphical-GAN. Two instances of conditional graphical-GAN are presented. The conditional Gaussian mixture GAN can learn fine clusters from mixture data given a coarse label. The conditional state space GAN can learn the dynamics of videos with multiple objects given the labels of the objects..
Key words: deep generative model    generative adversarial network    graphical model    weakly-supervised learning    conditional model    

如何在无监督或者弱监督环境中学习到可解释的抽象特征是机器学习乃至人工智能领域非常重要的课题.产生式对抗网络(generative adversarial networks, 简称GANs)[1]可以无监督地建模图像数据的分布[2, 3], 因此最近被广泛加以研究.进一步地, 一些工作[4, 5]希望引入额外的正则化项和先验知识, 提高GAN模型学习到的特征的可解释性, 并控制生成图像的语义.传统的深度神经网络的层次化特征提取过程是完全“黑盒”的, 这是由于这种网络完全忽略了特征之间的结构化先验知识, 特征的不同维度之间相对于模型来说是等价的.解决这一问题, 往往需要引入监督信号或者结构化归纳偏见(inductive bias), 其中一种可行的方法便是利用图(graph)的拓扑结构来刻画特征之间的依赖关系, 进而学习到可解释特征.基于这种思想, 概率图生成对抗网络(graphical- GAN)[5]将贝叶斯网络(Bayesian network)和产生式对抗网络相结合, 可以灵活地表达随机变量之间的依赖结构, 同时拟合变量之间的复杂函数.概率图生成对抗网络提出了结构化的变分推理网络和基于期望传播算法[6]的局部对抗学习方法, 可以用无监督的方式学习到数据的隐藏结构.但是, 概率图生成对抗网络没有形式化地考虑如何利用粗粒度的额外监督信号, 因此无法直接应用在更加复杂的数据上.

为了解决这个问题, 本文考虑存在粗粒度监督信号的弱监督学习环境, 提出一种新型的条件概率图生成对抗网络(conditional graphical-GAN), 可以在任何贝叶斯网络中利用粗粒度信号信息来学习到更精细而复杂的结构.为了解决隐藏变量的推理问题和模型参数的学习问题, 我们提出了基于粗粒度监督信号信息的条件结构化推理网络和期望传播启发的局部对抗学习方法.其主要思想和概率图生成对抗网络(graphical-GAN)的推理和学习方法相一致, 但是能够利用额外监督信号, 因此结果优于概率图生成对抗网络.

为了解释如何使用条件概率图生成对抗网络(conditional graphical-GAN)进行学习和推理, 我们提出了两个实例, 分别处理混合数据和时序数据.其中条件高斯混合模型(conditional Gaussian mixture GAN, 简称cGMGAN)可以在给出粗粒度标签的情况下从混合数据中学习到细粒度聚类, 条件状态空间模型(conditional state space GAN, 简称cSSGAN)可以在给定对象标签的情况下学习具有多个对象的视频的动态过程.

本文第1节形式化描述一般的条件概率图生成对抗网络理论框架, 包括产生式模型和推理模型的定义以及局部对抗学习算法.第2节列出两个实例, 包括应用场景描述和具体的变量和网络定义.第3节展示实验, 包括具体的实验环境和两个实例对应的结果.第4节总结本文的贡献.

1 理论框架

我们考虑弱监督学习环境, 假设(X, Y)表示可观测变量, 其中, X表示数据, Y表示粗粒度的监督信息, Z表示隐藏变量, 其语义与Y无关.这里, XYZ均可能为高维随机变量.我们希望在给定Y的情况下, 学习一个条件产生式模型(也就是一个从ZX的映射)能够产生和隐藏语义相对应的数据.与贝叶斯网络类似, 这个产生式模型中语义的对应关系是通过一个有向无环图G引入的.这里的条件产生式模型的严格定义为

$ P(X, Z|Y) = \mathop \prod \limits_{i = 1, \ldots , |Z|} P{\rm{(}}{z_i}|{\pi _G}({z_i}))\mathop \prod \limits_{j = 1, \ldots , |X|} P({x_j}|{\pi _G}({x_j}), Y), $

其中, πG(zi)表示节点zi在图G中的所有父亲节点的集合.需要注意的是, 这里任意两点之间的关系都通过神经网络来连接.同时, 每个可观测变量xj的概率分布都与GAN一样通过确定性映射变换而来, 从而保证了模型的拟合能力.

在上述生成式模型中, 由于神经网络和高维随机变量的存在, 隐藏变量Z的后验分布是难以计算的.为了解决推理问题, 我们提出了条件结构化推理网络模型(也就是一个从XZ的映射), 能够在给定Y的情况下, 推断出数据对应的隐藏变量.这种结构也是通过一个有向无环图H引入的.H的结构由概率图模型中的经典方法[7, 8]基于产生式模型的图G得出, 具体构建方法参见文献[5].这里的条件推理模型的严格定义为

$ Q(X, Z|Y) = Q(X)Q(Z|X, Y) = Q(X)\mathop \prod \limits_{i = 1, \ldots , |Z|} Q{\rm{(}}{z_i}|{\pi _H}({z_i}), Y), $

其中, O(X)表示训练数据的经验分布.在推理模型中, 两点之间的依赖关系也可以用神经网络建模, 网络大小与产生式模型中对应因子的网络相当.我们在图 1中对比了graphical-GAN和conditional graphical-GAN的混合模型实例(详细内容见第2节)的图模型.Conditional graphical-GAN可以利用粗粒度弱监督信息.

Fig. 1 Graphical models to compare graphical-GAN and conditional graphical GAN 图 1 概率图生成对抗网络和条件概率图生成对抗网络的图模型对比

为了同时训练条件产生式模型和条件推理模型, 我们最小化两者之间的琴生-香侬散度(JS-divergence).这个优化问题可以严格地描述为$\mathop {\min }\limits_{P, Q} J(P(X, Z|Y)||Q(X, Z|Y)), $直接利用对抗训练方法[9, 10]优化上述目标函数在结构复杂的情况下可能无法收敛[5].因此, 我们基于期望传播算法[6]开发了局部对抗训练方法, 其思想与概率图产生式对抗网络一致[5].具体地, 我们按照G中的拓扑关系, 考虑一组因子集合FG, 其中每一个因子A表示{zi, πG(zi)\Y}或者{xj, πG(xj)\Y}, 即枚举图G去掉条件变量Y之后的所有节点和父亲的因子.我们将上述全局优化问题转化为若干个局部因子优化问题, 其形式化描述如下:

$ \mathop {\min }\limits_{P, Q} \frac{1}{{|{F_G}|}}\mathop \sum \limits_{A \in {F_G}} J(P(A|Y)||Q(A|Y)). $

我们不知道某些因子A对应的条件概率分布P(A|Y)和Q(A|Y), 所以上述局部因子的琴生-香侬散度并不能直接优化.利用对抗学习的方法, 我们引入了若干局部条件因子判别器来判别两个模型产生的因子采样, 以估计上述局部琴生-香侬散度J(P(A|Y)||Q(A|Y)).最终的优化问题如下:

$ \mathop {\min }\limits_{P, Q} \mathop {\max }\limits_{{D_A}, \forall A \in {F_G}} {E_Q}\left[ {\mathop \sum \limits_{A \in {F_G}} \log {D_A}(A|Y)} \right] + {E_P}\left[ {\mathop \sum \limits_{A \in {F_G}} \log (1 - {D_A}(A|Y))} \right], $

其中, DA(A|Y)表示因子A对应的局部判别器, EQ表示依概率分布Q取期望.

2 两个实例

我们考虑两种典型的结构化数据以展示如何使用上述框架进行弱监督结构化数据建模.第1种情况, 我们考虑混合图像数据, 在给定粗粒度类别的情况下, 假设数据内还有细粒度的簇(cluster), 且没有细粒度监督信号.第2种情况, 我们考虑多物体的视频数据, 给定物体的类别信号, 但是物体的位置等信息均为未知.我们提出条件概率图产生式对抗网络的两个重要实例, 即条件高斯混合产生式对抗网络(conditional Gaussian mixture GAN, 简称cGMGAN)和条件状态空间产生式对抗网络(conditional state space GAN, 简称cSSGAN), 以分别处理上述这两种情况.

2.1 条件高斯混合产生式对抗网络

在条件高斯混合模型中, 我们假设每个粗粒度类别下的图像有K个细粒度簇, 因此引入高斯混合模型作为先验分布, 为了让隐藏变量的语义信息独立于粗粒度监督信号, 我们假设两者相互独立, 共同生成数据.形式化的生成过程如下:

$ k \sim Cat(K, \theta ), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} h|k \sim N({\mu _k}, {\Sigma _k}), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} x|h, y = {G_{net}}(h, y). $

Cat(·)表示范畴分布, N(·, ·)表示高斯分布, Gnet表示产生器, 是一个确定性神经网络映射.对应于上述理论框架, 我们有:X=x, Y=y, Z=(k, h).

在条件高斯混合模型中, 我们首先用条件推理网络推理隐藏变量h, 然后用贝叶斯公式直接得到k的后验分布.形式化的推理过程如下:

$ h|x, y = {I_{net}}(x, y), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} k|h = \frac{{{\theta _k}N({\mu _k}, {\Sigma _k})}}{{\mathop \sum \nolimits_{k'} {\theta _{k'}}N({\mu _{k'}}, {\Sigma _{k'}})}}. $

Inet表示条件推理网络.模型示意图如图 1所示.其中, 左侧所示为概率图生成对抗网络的混合模型实例对应的产生式模型和推理模型, 右侧所示为条件概率图生成对抗网络的混合模型实例对应的两个模型.在局部因子对抗训练中, 我们引入两个局部条件判别器, 分别处理因子(x, h, y)和(h, k).

2.2 条件状态空间产生式对抗网络

在条件状态空间模型中, 我们假设每个视频有两个物体, 并且物体类别给定, 视频的长度为T.视频的隐藏变量分为两种, 其中一种为语义不随时间变化而变化, 用h表示; 另一种语义随时间变化, 用vt表示.我们仍然假设隐藏变量的语义信息独立于粗粒度监督信号, 共同生成数据.形式化的生成过程如下:

$ {v_1} \sim N(0, I), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} h \sim N(0, I), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\varepsilon _t} \sim N(0, I), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {v_{t + 1}}|{v_t} = {O_{net}}({v_t}, {\varepsilon _t}), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {x_t}|{v_t}, h, {y_1}, {y_2} = {G_{net}}(h, {v_t}, {y_1}, {y_2}). $

N(0, I)表示标准高斯分布, εt为辅助随机变量, Onet表示时间序列产生器, Gnet表示视频帧的生成器, 二者均为确定性神经网络映射.对应于上述理论框架, 我们有:X=(x1, ..., xT), Y=(y1, y2), Z=(h, v1, …, vT).

在条件高斯混合模型中, 我们引入两个条件推理网络, 分别得到不变隐藏变量和变化隐藏变量.形式化的推理过程如下:

$ h|{x_1}, ..., {x_T}, {y_1}, {y_2} = {I_{net}}({x_1}, ..., {x_T}, {y_1}, {y_2}), {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {v_t}|{x_t}, {y_1}, {y_2} = {I'_{net}}({x_t}, {y_1}, {y_2}). $

注意, 在上述过程中, 时间序列产生器Onet、视频帧的生成器Gnet和条件推理网络I'net均在时间序列上共享.

在局部因子对抗训练中, 我们引入两个局部条件判别器, 分别处理因子(xt, h, vt, y1, y2)和(vt, vt+1).

3 实验

我们使用TensorFlow库实现条件概率图产生式对抗网络的两个实例.采用无结构的产生式对抗网络ALI[9, 10], 与概率图生成对抗网络(graphical-GAN)[5]作为基准模型.为了进行公平比较, 我们延续基准模型的设定, 在所有实验中使用经典模型DCGAN[2]的网络结构和ADAM优化器[11].以SVHN数据的条件高斯混合产生式对抗网络为例, 具体网络结构如下:(1)生成器的隐变量为128维, 级联10维的类别标注信息, 经过全联接层变换到4 096维, 形状变换为4×4×256, 通过3个5×5的反卷积操作依次变为8×8×128、16×16×64、32×32×3;(2)推理网络使用和生成器相反的网络结构; (3)判别器将输入图像通过3层5×5卷积映射到4 096维, 然后级联隐变量和类别标注信息, 通过两层512维的全连接网络映射到1维二值输出.生成器和推理网络的非线性为RELU, 判别器的非线性为Leaky-RELU, 斜率为0.2.其余超参数若未加说明也均与graphical-GAN[5]一致(具体参数可以参考graphical-GAN附录D).我们在MNIST、SVHN和CIFAR10数据集上测试条件高斯混合产生式对抗网络(cGMGAN), 在移动MNIST数据集上测试条件状态空间产生式对抗网络(cSSGAN).

我们希望通过实验验证如下假设.

(1) 条件高斯混合产生式对抗网络, 可以在混合数据中学习到细粒度的数据簇, 与已有模型相比, 可以避免类别混淆和不平均的问题, 同时提高推理模型的准确程度.

(2) 条件状态空间产生式对抗网络, 可以在多物体视频中学习到动态信息和固定信息, 完成数据生成和动态模仿等任务.

3.1 条件高斯混合产生式对抗网络

我们首先展示条件高斯混合产生式对抗网络(cGMGAN)在MNIST、SVHN和CIFAR10数据集上的结果.其中, MNIST为手写数字, 粗粒度类别为0~9, SVHN为街景拍摄门牌号, 粗粒度类别为数字0~9, CIFAR10为自然场景图像, 粗粒度类别为汽车、鸟等10类.

在给定类别的情况下, cGMGAN可以学习到细粒度的数据簇表示.如图 2所示, 我们展示了cGMGAN在数字2和数字6上的结果.以数字2为例, 最左侧的图像展示了聚类中心对应的代表字体, 我们发现对应了数字2的两种写法, 即左下角有没有环.随后我们随机产生了5×2张采样, 其中每一列的采样对应同一个聚类, 即k值, 我们发现其类型与聚类中心的代表字体相同, 这表示cGMGAN可以在混合数据中学习到细粒度的数据簇.随后, 我们可视化了聚类中心周围邻域内的隐藏变量, 发现其隐藏空间是连续的, 并且处处对应于合理的图片.cGMGAN在SVHN和CIFAR10上的结果如图 3图 4所示.我们可视化了第1个聚类中心周围的隐藏空间.在这两个数据集上, 聚类的语义主要表现在色彩和物体姿态上.与GMGAN[5]的结果相比, cGMGAN的细粒度数据簇没有类别混淆和类间不平均的问题.

Fig. 2 cGMGAN results on the MNIST dataset, K=2. Left penal: Digit 2, right penal: Digit 6 图 2 条件高斯混合模型在MNIST数据上的结果, K=2.左侧:数字2, 右侧:数字6

Fig. 3 cGMGAN results on the SVHN dataset, K=5. Left penal: Digit 2, right penal: Digit 7 图 3 条件高斯混合模型在SVHN数据上的结果, K=5.左侧:数字2, 右侧:数字7

Fig. 4 cGMGAN results on the CIFAR10 dataset, K=5. Left penal: Horse, right penal: Bird 图 4 条件高斯混合模型在CIFAR10数据上的结果, K=5.左侧:马, 右侧:鸟

我们在MNIST数据集上定量测试了cGMGAN的推理模型的准确程度.用cGMGAN和两个基准模型对测试数据进行了重建, 即先推理隐藏变量, 再把这些变量给产生式模型恢复原始输入, 并计算了重建图像和原始输入的均方误差.表 1给出了与无结构的产生式对抗网络和高斯混合产生式对抗网络进行比较的情况, cGMGAN取得了最好的结果.为了公平比较, 我们使用了无结构的产生式对抗网络[9]中提出的全局学习算法.

Table 1 RMSE results of reconstruction on the MNIST dataset (the smaller, the better) 表 1 MNIST数据集上重建数据和输入的均方误差结果(越小越好)

3.2 条件状态空间产生式对抗网络

我们随后来展示条件空间状态产生式对抗网络(cSSGAN)在移动MNIST数据集上的结果.该数据是从MNIST数据合成而来.首先随机采样两个MNIST数据, 放在一个64×64大小的画布上, 然后随机采样速度大小和方向, 让数据在画布上进行移动, 数据遇到边界会反弹, 我们截取了长度为16的视频作为数据.为了更好地可视化结果, 我们将两个数字放在了不同的信道上.

图 5展示了随机生成的3个视频, 可以发现, cSSGAN可以非常好地建模多物体的时序关系, 并且保证物体的固有特征不变, 完成像素级别的生成.

Fig. 5 cSSGAN results on the moving MNIST dataset. Each row presents the frames of a generated video 图 5 条件空间状态模型在移动MNIST数据上的结果.每一行表示一个生成的视频的所有帧

图 6展示了动作模仿的结果.在图中, 奇数行表示一个输入视频, 我们将输入视频的变化特征即vt利用推理模型推理出来, 然后随机产生一个不变特征h, 并令y1=y2=1, 结合推理出来的vt, 生成对应偶数行的视频, 我们发现, 偶数行视频可以生成不同形态的两个数字1, 并且保留了与输入视频一致的变化信息, 即每一帧的数字未知.这表明, cSSGAN可以在无位置监督信号的情况下, 自动解耦合不变特征和变化特征, 可以用可解释的因子合成符合需求的视频.

Fig. 6 cSSGAN motion analogy results on the moving MNIST dataset 图 6 条件空间状态模型在移动MNIST数据集上动作模仿的结果

上述图 5图 6的结果表明, 在引入弱监督信号的情况下, cSSGAN可以建模多物体视频, 而SSGAN[5]的结果仅局限在单物体视频上, 这体现了本文提出的条件概率图产生式对抗网络的优势.

4 结论

综上所述, 本文的主要贡献如下.

(1) 提出了一种新型普适的面向弱监督学习的条件概率图产生式对抗网络, 旨在利用粗粒度监督信号, 进一步刻画数据中潜在的细粒度无标定结构信息, 提高产生式对抗网络提取特征和生成图像的可解释性.

(2) 提出了条件高斯混合产生式对抗网络, 可以在混合数据中学习到细粒度的数据簇, 避免了类别混淆和不平均的问题, 同时提高了推理模型的准确率.

(3) 提出了条件状态空间产生式对抗网络, 可以在多物体视频中学习到动态信息和固定信息, 完成数据生成和动态模仿等任务.

参考文献
[1]
Goodfellow I, Mirza M, Xu B, Farley D, Ozair S, Courville A, Bengio Y. Generative adversarial nets. In: Advances in Neural Information Processing Systems. Montreal: MIT Press, 2014, : 2672-2680.
[2]
Radford A, Metz L, Chintala S. Unsupervised representation learning with deep convolutional generative adversarial networks. In: Proc. of the Int'l Conf. on Learning Representations. San Diego: Journal of Machine Learning Research, 2015
[3]
Arjovsky M, Chintala S, Bottou L. Wasserstein GAN. In: Proc. of the Int'l Conf. on Machine Learning. Sydney: Journal of Machine Learning Research, 2015, : 214-223.
[4]
Chen X, Duan Y, Houthooft R, Schulman J, Sutskever I, Abbeel P. InfoGAN: Interpretable representation learning by information maximizing generative adversarial nets. In: Advances in Neural Information Processing Systems. Barcelona: MIT Press, 2016, : 2172-2180.
[5]
Li C, Welling M, Zhu J, Zhang B. Graphical generative adversarial networks. In: Advances in Neural Information Processing Systems. Montreal: MIT Press, 2018, : 6073-6083.
[6]
Minka T. Expectation propagation for approximate Bayesian inference. In: Proc. of the 17th Conf. on Uncertainty in Artificial Intelligence. Washington: Morgan Kaufmann Publishers Inc., 2001, : 362-369.
[7]
Jordan M, Ghahramani Z, Jaakkola T, Saul L. An introduction to variational methods for graphical models. Machine Learning, 1999, 37(2): 183-233. [doi:10.1023/A:1007665907178]
[8]
Stuhlmüller A, Taylor J, Goodman N. Learning stochastic inverses. In: Advances in Neural Information Processing Systems. Lake Tahoe: MIT Press, 2013, : 3048-3056.
[9]
Donahue J, Henbühl P, Darrell T. Adversarial feature learning. In: Proc. of the Int'l Conf. on Learning Representations. Toulon: Journal of Machine Learning Research, 2017
[10]
Dumoulin V, Belghazi I, Poole B, Lamb A, Arjovsky M, Mastropietro O, Courville A. Adversarially learned inference. In: Proc. of the Int'l Conf. on Learning Representations. Toulon: Journal of Machine Learning Research, 2017
[11]
Kingma DP, Ba J. Adam: A method for stochastic optimization. In: Proc. of the Int'l Conf. on Learning Representations. San Diego: Journal of Machine Learning Research, 2015