《Deep Quotient Manifold Modeling》 阅读笔记

本文考虑了一种多生成器结构的生成式网络模型,思想在于对于存在某一连续流形特征的数据集,可以从连续流形等值线的法线方向挖掘新的流形特征,最终实现解耦,具体实现时,通过共享每个生成器中所有非线性层参数,以及每一个对应线形层之间的权值参数,再设计了一个针对线形层偏置项切线方向的正则化偏置项,确保每一个生成器对同一个z生成的映射x可以被逆映射回具有同一个流形特征的数据空间中,但由于偏置的法线方向是各自独立变化的,意味着每个生成器都具有潜力挖掘新流形特征的能力,这也就是其能够实现多模态图像生成的机制所在,个人感觉没有说明为什么不需要对法线方向做任何的约束就可以自动解出想要的模式,这点值得继续探讨。

1 思想详述

对于一个图像数据集,其中包含了多种数据特征,这也意味着每张图像数据或多或少都带有多个属性,比如上图中的五张图像,显而易见地具有猫、椅子、花瓶、以及上述几种特征各自的位置属性及两两之间的相对位置属性,假如要对这样一个数据集进行分析与处理,就需要考虑到每个属性的情况,计算量庞大,且引入新的对照数据也意味着可能会引入新的属性,十分不现实。假如将上面提到的每个属性都视为一个离散数据流形,我们可以从提供的数据中发现一个显而易见的连续流形结构,也就是猫的位置,这是每张图像都具有的共享属性,具体所体现出来的图像无非是这一流形与其他多个数据流形的组合,因此,作者提出,假如训练一个编码器编码“猫的位置”这一共享的连续流形特征,那无论对于哪张图像,编码器将会对处于同一位置的图像返回一个共同的编码,如上图中的右图所示,在数据空间中,每一根绿线就代表了猫的位置的等值线,与等值线相切的 M ( 1 ) , M ( 2 ) M^{(1)}, M^{(2)} M(1),M(2),则代表了与之组合的两种离散特征的变化,假如我们充分挖掘了等值线的信息,当一张具有新的属性(紫色线)的图像进来时,我们可以很容易定位出其属于哪一条等值线。

那么,对于多生成器生成对抗网络来说,对于输入的一个随机噪声 z z z,通过不同生成器将其映射到数据空间上的不同位置,假如有一个编码器可以将这些生成器对于同一个 z z z生成的不同 x i x_i xi的逆映射返回到同一个编码表示中,则认为这些生成器潜在地提取到了某一个数据流形的特征,这也就意味着这些生成器对于同一个 z z z产生的映射在某一个流形上等价。这篇文章的核心内容就是如何构造这样的生成器,即这篇文章的思路在于训练生成器在某个维度或流形上的等价性,逆推出没有被挖掘到的属性则存在差异性,最终实现解耦。

2 商流形模型

2.1 编码器兼容性(等价性挖掘)

假定有一个编码器映射 H : X → Z \mathcal{H}: X \rightarrow Z H:XZ,假如对于多生成器每个生成器的映射 { f G ( i ) : Z → M ( i ) ⊂ X } i = 1 A \left\{f_{G}^{(i)}: Z \rightarrow M^{(i)} \subset X\right\}_{i=1}^{A} {fG(i):ZM(i)X}i=1A,都有 h E ∈ H h_E \in \mathcal{H} hEH时,满足 ( f G ( i ) ) − 1 ( x ) = h E ( x ) {(f_{G}^{(i)})^{-1}}(x) = h_E(x) (fG(i))1(x)=hE(x)成立,则意味着这个编码器具有等价性。对于编码器而言,挖掘数据特征是其基本功能,假如图像真的具有某一个共享属性,挖掘出这个属性完全可以实现,而对于图像来说,这意味着由不同生成器生成的图像之间存在一种等价关系 x ( 1 ) ∼ h E x ( 2 ) ⟺ h E ( x ( 1 ) ) = h E ( x ( 2 ) ) x^{(1)} \sim_{h_{E}} x^{(2)} \Longleftrightarrow h_{E}\left(x^{(1)}\right)=h_{E}\left(x^{(2)}\right) x(1)hEx(2)hE(x(1))=hE(x(2))。这就是这篇文章所谓商流形的来源,实际上并没有利用商空间的理论知识辅助计算,而是使用商空间的概念阐明论文的动机和思路。

2.2 偏置校准正则化

从上一步我们已经知道,只要生成器能够满足要求,这种挖掘等价关系的编码器是很好找的,但是通常多生成器模型之间只共享部分或者完全不共享参数,这就无法控制不同生成器对同一个 z z z的映射可以获得某个潜在特征了,因为彼此都是随机初始化,谁也不知道谁是做什么的(部分参数共享的生成器还是可以做到一些共性挖掘的),为了解决这个问题,作者提出了针对网络线形层的偏置校准正则化,来保证生成器生成数据分布之间的等价性。

考虑一个生成器的映射过程 { f G ( i ) : Z → M ( i ) ⊂ X } \left\{f_{G}^{(i)}: Z \rightarrow M^{(i)} \subset X\right\} {fG(i):ZM(i)X},对于一个线性分类器,可以很容易地写出其映射过程的具体表达形式 f G ( i ) ( z ) : = U ( i ) z + a ( i ) f_{G}^{(i)}(z):=U^{(i)}z+a^{(i)} fG(i)(z):=U(i)z+a(i),其中, U ( i ) ∈ R d x × d z ( d x > d z ) U^{(i)} \in \mathbb{R}^{d_x ×d_z}(d_x > d_z) U(i)Rdx×dz(dx>dz)代表权值, a ( i ) ∈ R d x a^{(i)} \in \mathbb{R}^{d_x} a(i)Rdx 代表偏置项,这里作者做了一个假设,它认为生成器对每个 z z z都会映射到一个独一无二的 x x x上,也就是单射关系,因此,权值 U ( i ) U^{(i)} U(i)是满秩的(秩为 d z d_z dz),对于这个假设没有给出理论说明,因此被ICLR审稿人指出来作为论文的不足之处之一。事实上,这个假设是有些问题的,由于数据集存在偏见,我们已经可以知道GAN是很容易模式崩塌的,因此可能有很多个 z z z都映射到同一个 x r e a l x_{real} xreal上了,不过,倘若GAN网络挖掘了非常丰富的数据结构,可以认为不同的 z z z确实能够生成不同的 x f a k e x_{fake} xfake。假设暂且按下不表,我们以及知道了映射的表达式,自然就可以写出逆映射的表达式:
( f G ( i ) ) − 1 : = ( U ( i ) ) + ( x ( i ) − a ( i ) ) {(f_{G}^{(i)})}^{-1}:=(U^{(i)})^{+}(x^{(i)} - a^{(i)}) (fG(i))1:=(U(i))+(x(i)a(i))
,这里的 ( U ( i ) ) + (U^{(i)})^{+} (U(i))+代表的是 U ( i ) U^{(i)} U(i)的伪逆,计算方法为 ( U ( i ) ) + : = ( ( U ( i ) ) T U ( i ) ) − 1 ( U ( i ) ) T (U^{(i)})^{+} :=((U^{(i)})^{\mathrm{T}}U^{(i)})^{-1}(U^{(i)})^{\mathrm{T}} (U(i))+:=((U(i))TU(i))1(U(i))T,概念近似逆运算理解即可,不作过多说明。我们现在希望对于每一个生成器,它们在以相同的 z z z为输入时,其输出都能够被编码成同一个形式,即逆映射的结果都相同,那编码器 h E h_E hE对于所有的生成器都会有如下的编码形式:
( f G ( i ) ) − 1 = U + x − U + ( a ∥ + a ⊥ ( i ) ) = U + x − U + a ∥ = W ⊤ x + b . \begin{aligned} \left(f_{G}^{(i)}\right)^{-1} &=U^{+} x-U^{+}\left(a_{\|}+a_{\perp}^{(i)}\right)=U^{+} x-U^{+} a_{\|} \\ &=W^{\top} x+b . \end{aligned} (fG(i))1=U+xU+(a+a(i))=U+xU+a=Wx+b.
上面作者将偏置项分解成了切线方向的 a ∥ a_{\|} a和法线方向的 a ⊥ a_{\perp} a两部分,并且当权值乘以法线方向偏置的结果为0,剩下的变量只包括权值 U + U^+ U+和切线方向的偏置 a ∥ a_{\|} a,对于权值,作者简单地将所有生成器对应线性层地权值共享满足一致性,对于切线方向的偏置,则通过正则化约束达成一致性条件,这就是本文的核心内容。

具体在实现时,以协方差矩阵的迹作为正则化项,即 trace ⁡ ( cov ⁡ ( a ∥ ( i ) ) ) \operatorname{trace}\left(\operatorname{cov}\left(a_{\|}^{(i)}\right)\right) trace(cov(a(i))),由于 a ∥ ( i ) = U ( U T U ) − 1 U T a_{\|}^{(i)} =U(U^{\mathrm{T}}U)^{-1}U^{\mathrm{T}} a(i)=U(UTU)1UT涉及到求逆过程,比较困难,作者找了一个正则化项的上界作为最终的正则化约束项,以避免复杂的求逆运算:
trace ⁡ ( cov ⁡ ( U ⊤ a ( i ) ) ) ≥ 1 d z H ( { λ k } k = 1 d z ) trace ⁡ ( cov ⁡ ( a ∥ ( i ) ) ) \operatorname{trace}\left(\operatorname{cov}\left(U^{\top} a^{(i)}\right)\right) \geq \frac{1}{d_{z}} H\left(\left\{\lambda_{k}\right\}_{k=1}^{d_{z}}\right) \operatorname{trace}\left(\operatorname{cov}\left(a_{\|}^{(i)}\right)\right) trace(cov(Ua(i)))dz1H({λk}k=1dz)trace(cov(a(i)))
在此基础上,使用对数函数对这一正则化项进行缩放,得到最终的BA正则化项:
R B A = log ⁡ ( trace ⁡ ( cov ⁡ ( U ⊤ a ( i ) ) ) ) R_{BA}=\operatorname{log}\left(\operatorname{trace}\left(\operatorname{cov}\left(U^{\top} a^{(i)}\right)\right)\right) RBA=log(trace(cov(Ua(i))))

2.3 多层网络偏置正则化处理

对于多层网络,往往含有BN、激活函数、卷积层等非线性层,同时可能含有不止一个线性层,针对这种情况,作者令,每个生成器具有完全相同的网络结构,共享非线性层的所有参数,对于线性层,每一对应层之间共享权值参数,并分别使用BA正则化约束使偏置项的切向方向尽可能相等。

3 深度商生成模型

本文的目标在于解耦,上面的步骤提出了构造具有某种等价关系的多个生成器的正则化方法,每个生成器大部分参数都是相同的,只有线性层偏置的法线方向保持了独立性,回到最开始那张图,每条绿色的等值线即代表了由一个 z z z所映射得到的具有某种等价关系的数据分布,通过偏置法线方向的变异,找到多条与等值线正交的数据流形,也就是多个模态的体现。

在这里,作者又做了一个假设,即对于想要解耦的模态,每个模态出现的概率都是 1 / A 1/A 1/A,这里 A A A是生成器的个数。 z z z的处理与传统GAN网络何VAE相同,都是从某一分布中采样得到的。

需要注意的时,在训练GAN和VAE时,实际上不需要用到一个实体的编码器 h E h_E hE,只是为了辅助说明使用,不过作者也给出了这样的编码器的损失函数:

3.1 Q-WGAN

对于GAN网络模型,作者基于DC-GAN架构的WGAN网络进行设计,生成器与鉴别器损失与传统无异,不够生成器上,加了每一个线性层的正则化项:

上式中的 λ \lambda λ是权重系数。

对于鉴别器,本文使用谱归一化作为满足Lipschitz连续的方法。

3.2 Q- β \beta β-VAE

对于VAE模型,也采用EM算法进行训练,损失函数也是直接增加了一个正则项

4 实验

本文在MNIST、3D-Chair和UT-Zap50k三个数据库上进行了实验,生成器数量分别是10,20,4。所有图像都被缩放到32*32大小。

评价指标为FID和本文提出来的Disentangle Score。

4.1 Disentangle Score

这里的Disentangle Score,首先获取真实图像数据集中的500张图像,然后根据模型生成的结果,人工选择了一个子流形特征(比如数字类型、数字粗细、倾斜度等等),分别给这500张图像设置11组不同的值(比如不同的倾斜度),一共得到5500张共11组图像,送进训练好的编码器之中,返回11组潜码,取这11组潜码组内的均值作为这一组的典型值,接着,利用潜码和图像进行主成分分析,作者认为,如果图像被很好地解开,主成分分析后的维度应该尽量接近1(个人感觉是图像通过很简单的变换即能够对应到潜码上),因此,作者计算主成分分析的协方差矩阵第一个特征值与第二个特征值的比值,比值越大则意味着解耦效果越好。

4.2 定性评价结果

作者给出了三个数据集上的图像生成结果,图中每一列代表同一个 z z z每一行代表不同生成器的生成结果,MNIST上第一组是VAE的结果,第二组是GAN的结果。

可以看到确实存在解耦效果,但是有些模态并没有完全解开。

作者还进行了一些其他维度的解耦实验:

对于上面那张图,明显看出实现了效果较好的连续变换能力,但是每一行代表的还是同一个生成器生成的结果,说明生成器解到的还是类别特征,那是如何通过变换 z z z来实现连续特征解耦的,论文里没有明确说明,感觉存在疑问。

4.3 定量评价结果

作者在MNIST与3D-Chair上进行了定量评估,结果如下:

其baseline是完全无解耦效果的WGAN,使用部分参数共享方法的DMWGAN和InfoGAN,从数据上看本文方法确实有较好的解耦能力,但是根据其评测结果,WGAN的结果甚至普遍好于InfoGAN的结果,这个地方有点令人迷惑。。。

4.4 泛化能力评价

比较有意思的是本文的泛化能力评估部分,由于本文的思路在于挖掘数据中的一致性特征,获取等价类,因此当其他流形发生变化时,不会对模型性能产生影响,也就是说,只要准确挖掘到了共享的连续特征,在其法线方向可以挖掘到丰富的其他特征信息,而无视噪声或其他变化的影响,这是本文的一个理论优势和特点所在。

5 总结

本文的思路比较新颖,而且挖掘等价一致性的理论具有可行性,但是本文的loss没有对偏置的法线方向变量进行任何的约束,对于各个生成器之间也没有其他损失约束,这意味着每个生成器在除了等价流形维度上的维度是一致的之外,无法控制其他维度的变化,如何保证其解耦效果与数据真实特征一致?换句话说,怎么确定在等值线上的法线方向的流形就是我们需要的呢?另外,FID提升的原因是什么本文并未说明,rebuttal中审稿人提出FID方差变大的问题也值得考虑。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值