来自Martin Arjovsky 100 等人的“Wasserstein GAN”。
本文关心的问题为无监督学习问题。学习 1 个概率分布意味着什么?传统的回答:学习概率密度。常通过定义密度 (Pθ)θ∈Rd 的参数化(parameterized)簇,并找到最大化我们数据上似然的参数来完成:若有真实数据样本 {x(i)}mi=1 ,求解问题:
不再估计可能不存在的 Pr 密度,可定义有固定分布 p(z) 的随机变量 Z ,传入 1 个参函数(parametric function) gθ:Z→X (典型为一神经网络),参函数按确定的分布 Pθ 来直接生成样本。改变 θ ,使模型分布 Pθ 接近真实数据分布 Pr 。有两点好处:
总之,给定任意高维的密度,计算上难以生成样本 [15] 。
变分自编码器(VAEs) [9] 和 生成的对抗网络(GANs)[4] 为参函数生成图像方法的范例。VAEs近似样本的似然,所以,受限标准模型,需耐心调整额外的噪声项;GANs定义目标函数(包括Jensen-Shannon [4],所有 f 散度 [16] 及奇异的(exotic)合并 [6])时更灵活,另一方面,众所周知,GANs的训练微妙且不稳定,原因见理论研究 [1]。
本文转而关注用不同的方法来度量模型分布接近真实分布的程度,或者说,定义距离或散度 ρ(Pθ,Pr) 。不同距离间主要区别是它们对概率分布序列收敛的影响。当且仅当存在分布 P∞ ,使 ρ(Pt,P∞) 趋于 0 时,分布 (Pt)t∈N 收敛,此时完全取决于距离 ρ 的定义。通俗地说,距离 ρ 引入更弱的拓扑,使分布序列更易收敛。第 2 节澄清概率距离在收敛上的不同。
当 ρ 下的收敛序列集为 ρ′ 下的收敛序列集的超集时, ρ 引入的拓扑弱于 ρ′ 引入的拓扑。
为优化参数 θ ,当然希望定义的模型分布 Pθ 可使映射 θ→Pθ 连续。连续性意味着当参数序列 θt 收敛至 θ 时,分布 Pθt 也收敛至分布 Pθ 。然而,分布序列 Pθt 收敛取决于如何计算分布间的距离。距离越弱,分布序列越易收敛,因此越易定义从 θ 空间到 Pθ 空间的连续映射。考虑映射 θ→Pθ 连续是因为:若 ρ 为两分布间的距离,希望损失函数 θ→ρ(Pθ,Pr) 连续,等价于使用分布 ρ 间的距离时,映射 θ→Pθ 连续。
本文的贡献有:
标记介绍。令 X 为紧度量集(如图像空间 [0,1]d )101,并令 Σ 为 X 所有Borel子集的集合。令 Prob(X) 为定义在 X 上的概率度量空间。
样本方差不为 0 ,所以为Borel子集 102 。
定义 2 个分布 Pr,Pg∈Prob(X) 间基本的距离和散度:
其中,假设 Pr 和 Pg 绝对连续,关于定义在 X 上用相同的度量 μ 输出密度。KL散度不对称,且当存在点使 Pg(x)=0且Pr(x)>0 时,KL散度可能为无穷大。
概率分布 Pr∈Prob(X) 输出关于 μ 的概率密度 pr(x) ,即, ∀A∈Σ,Pr(A)=∫APr(x)dμ(x) ,当且仅当 Pr(x) 关于 μ 绝对连续,即, ∀A∈Σ,μ(A)=0→Pr(A)=0 。
Jensen-Shannon(JS)距离
推土机(Earth-Mover,EM)距离
EM距离求下确界,即至少要转移多少“质量”。所以,原文中,作者用“must”描述。
后面举例说明用EM距离来收敛概率分布序列多简单,但上面定义的其它距离和散度无法收敛。
例1 (学习平行线)。令 Z∼U[0,1] (单位区间上的均匀分布)。令 P0 为 (0,Z)∈R2 的分布( x 轴上为 0 , y 轴上为随机变量 Z ,经过原点的垂直线段上的均匀分布)。令 gθ(z)=(θ,z),θ 为单个实参数。此时有:
已知: P0={1,if x=0,0≤y≤1,0,otherwise. , Pθ={1,if x=θ,0≤y≤1,0,otherwise.
θ≠0 时,
KL(P0||Pθ)=∑x,y∈R2P0(x,y)logP0(x,y)−∑x,y∈R2P0(x,y)logPθ(x,y)=0log0+1log1−(1log0+0log1)=0+0−(−∞)+0=+∞=KL(Pθ||P0)
θ=0 时,
KL(P0||Pθ)=KL(P0||P0)=0log0+1log1=0已知: Pm=Pr+Pg2=⎧⎩⎨0.5,if x=0,0≤y≤1,0.5,if x=θ,0≤y≤1,0,otherwise. , JS(P0||Pθ)=12KL(P0||Pm)+12KL(Pθ||Pm)
θ≠0 时,
KL(P0||Pm)=0log0+1log1−(1log0.5+0log0.5+0log0)=log2=KL(Pθ||Pm)→JS(P0||Pθ)=log2
θ=0 时,
KL(P0||Pm)=KL(P0||P0)=0→JS(P0||Pθ)=0- 本例的两条线段相距 θ,||x−y||≡θ→ 两条线段间距离的期望的下确界为 θ 。
- P0 和 Pθ 表示概率分布,范围为 [0,1]→|P0−Pθ| 的上确界为 1 ( θ≠0 时)或 0 ( θ=0 时)。
当 θ→0 时,EM距离使序列 (Pθt)t∈N 收敛至 P0 ,但用JS,KL,逆KL或TV散度时不会收敛。图 1 为EM距离和JS距离。
例 1 说明EM距离上梯度下降可学到低维流形上的概率分布。不可用其它距离,因它们的损失函数甚至不连续。即使该例基于不相交支集的分布,当支集非空但包含 0 测度集时,结论同样成立。当 2 个低维以任意位置相交时 [1],碰巧也成立。
因Wasserstein距离比JS距离更弱,问题变成:温和假设下, W(Pr,Pθ) 是否为关于 θ 的连续损失函数。
定理 1. 令 Pr 为 X 上的固定分布。令 Z 为另 1 个空间 Z 上的随机变量(如:高斯分布空间)。令 g:Z×Rd→X 为 1 个函数。用 z 作第 1 个坐标, θ 作第 2 个坐标来表示 gθ(z) 。令 Pθ 为 gθ(z) 的分布。那么,
1. 若 g 在 θ 上连续, W(Pr,Pθ) 在 θ 上也连续。
2. 若 g 为局部Lipschitz,并满足规则假设 1 ,则 W(Pr,Pθ) 处处连续,几乎处处可微。
3. 对JS散度和所有KL散度,声明 1−2 为假。
证明见附录 C 。
后面推论告诉我们:用神经网络来最小化EM距离(至少理论上)可行。
推论 1. 令 gθ 为任意用 θ 参数化的前向神经网络,且 p(z) 为 z 上的先验,使得 Ez∼p(z)[||z||]<∞ (如,高斯分布,均匀分布等)。则满足假设 1 ,因此, W(Pr,Pθ) 处处连续,几乎处处可微。
证明见附录 C 。
所有这些说明:对我们的问题,至少与JS散度相比,EM距离作损失函数更合理。后面定理描述这些距离和散度引入拓扑的相对强度:KL最强,紧随JS和TV,EM最弱。
推论 2. 令 P 为紧空间 X 上的分布,且 (Pn)n∈N 为 X 上的分布序列。那么,当 n→0 时,考虑所有的限制,
1. 下面声明等价
- σ(Pn,P)→0 , σ 为全变差距离;
- JS(Pn,P)→0 , JS 为Jensen-Shannon散度。
2. 下面声明等价
- W(Pn,P)→0 ;
- Pn⟶DP ,其中, ⟶D 表示关于随机变量的分布的收敛。
3. KL(Pn||P)→0 或 KL(P||Pn)→0 隐含(imply)声明 (1) 。
4. 声明 (1) 隐含声明 (2) 。
证明见附录 C 。
这里强调的事实:学习低维流形支撑的分布时,KL,JS和TV距离为不合理的损失函数。但此时EM距离却合理:
定理 2 指出, W(Pr,Pθ) 可能比 JS(Pr,Pθ) 有更好的属性。 (1) 中的下确界很难解。
另一方面,由Kantorovich-Rubinstein二重性(duality) [21] 知
定理 3. 令 Pr 为任意分布。令 Pθ 为 gθ(Z) 的分布( Z 为随机变量,该分布的概率密度为 p , gθ 为满足假设 1 的函数)。那么,对问题
证明见附录 C 。
接着,最大化方程 (2) 来找函数 f 。为近似求解 f ,用紧空间 X 中的权重 w 来参数化一神经网络,训练该网络。然后,同典型的GAN,用 Ez∼p(z)[∇θfw(gθ(z))] 反传。注意到 W 紧致,则对某些仅取决 W (而非个别网络权重)的 K ,所有函数 fw 将为 K -Lipschitz。因此,近似 (2) 至一无关的缩放因子和“评价者”(critic) fw 的容量。为使参数 w 落入紧空间,每次梯度更新后夹紧权重至固定的范围即可(假设 W=[−0.01,0.01]l )。方法 1 描述Wasserstein生成对抗网络(WGAN)过程。
注:“评价者”和“判别器”应是一回事,我更习惯用GAN框架来说明,所以后面统一用“判别器”替换“评价者”。原作者用两个不同的词,考虑到后面比较GAN判别器(判别器)和WGAN判别器(评价者)时便于说明。所以,这里,WGAN与GAN比较时,将“评价者”替换为“WGAN判别器”;无比较时,仍用“判别器”。
θ 为生成网络的参数,决定生成模型的分布与真实数据分布的距离; w 为判别网络的参数,最大化EM距离损失函数来获得最优判别网络的参数。
EM距离处处连续,且几乎处处可微,所以应该能训练判别器至最优。参数简单,训练判别器的时间越长,得到的EM距离的梯度越可靠。
判别器越好,JS散度的梯度越可靠。但会因JS散度局部饱和,真实梯度为 0 ,梯度消失,见图 1 和 [1] 中定理 2.4 。
图 2 中,为证明这点,训练GAN判别器和WGAN判别器至最优。GAN判别器很快学会区分真伪数据,同期望一样,并未提供可靠的梯度信息。然而,WGAN判别器不饱和,收敛至线性函数并处处给出很明确的梯度;约束梯度限制了函数,使其可能在空间不同部分至多线性增长。
训练WGAN判别器至最优不会破坏(collapse)模式。固定判别器来找最优生成器是指使判别器输出最大值的点上变量增量的和 [11]。
后面介绍新方法的实际效益,深入比较WGAN与传统GAN。
用Wasserstein-GAN方法生成图像,相比标准GANs,有显著的实际效益,主要有两点:
生成图像实验。真实数据分布为LSUN-卧室数据集 [23] - 室内卧室自然图像的集合。基线比较为DCGAN,DCGAN用 −logD ,标准的GAN过程训练一卷积网络结构的GAN。生成样本为分辨率 64×64 的 3 通道图像。
因每次生成器更新前(方法 1 的行 10 ),WGAN试图训练出相对较好的WGAN判别器 f (方法 1 的行 2−8 ),此时损失函数为估计EM距离,上界为某常数,该常数与我们约束 f 的Lipschitz常数有关。
实验 1 表明估计EM距离与生成样本密切相关。除卷积的DCGAN结构,用 4 层ReLU-MLP(每层包含 512 个隐含单元)只替换生成器或同时替换生成器和判别器来运行实验。
图 3 为 3 种结构的WGAN训练时,估计的EM距离的变化。该图清楚显示,曲线与生成样本的视觉质量密切相关。
然而,还不能定量评估生成模型。常数缩放因子取决于WGAN判别器的结构,所以,不同的WGAN判别器模型间难以比较。甚至,实际上判别器容量有限,所以,难以了解真实的EM距离与估计的EM距离多接近。可话说回来,用该损失度量重复且成功验证了实验,相比之前GAN的训练能力有巨大的提高。
相反,图 4 为GAN训练时,估计的JS散度的变化。更确切地,GAN训练时,训练判别器来最大化:
注: x∼Pr 时, x 为真实样本,希望 D(x)↑ ; x∼Pθ 时, x 为生成样本,希望 D(x)↓ 。
其中, L(D,gθ) 的下界为 2JS(Pr,Pθ)−2log2 。图中,值 12L(D,gθ)+log2 为JS距离的下界。
JS距离的下界与样本质量关系很差。估计的JS距离通常保持不变或上升(而非下降)。实际上,JS估计值常保持为接近 log2≈0.69 (JS距离的最大值)。换句话说,JS距离饱和,GAN判别器损失为 0 ,某些情况下(DCGAN生成器,右上图)生成样本有意义,其它情况下被破坏为无意义图像。该现象的理论解释见 [1],强调见 [11]。
用 −logD 时,判别器损失与生成器损失不同。附录的图 8 绘制相同的图,但用生成器损失(而非判别器损失)。结论不变。
负面结果:当对WGAN判别器用基于动量的优化方法(如Adam)或用很高的学习率时,训练WGAN会偶尔不稳定。因WGAN判别器的损失并非稳态,基于动量的方法可能会表现更糟。因损失爆炸和生成样本变差时,Adam步与梯度的余弦角变为负值,所以动量可能为潜在的原因。训练不稳定时,余弦角必为负值。很不平稳时,改用RMSProp效果不错。
可训练WGAN判别器至最优。训练判别器时,仅需为生成器提供训练其它网络时所用到的损失。不再需合理均衡生成器和判别器的容量。判别器越好,训练生成器所用梯度的质量越高。
改变生成器的结构时,WGAN比其它GANs更鲁棒。为此, 3 个不同的生成器结构上运行实验:(1)卷积DCGAN生成器;(2)卷积DCGAN生成器,不带块归一化,滤波器数目不变;(3) 512 个隐含单元组成的 4 层ReLU-MLP。后面 2 中用GANs表现很差。所以,为WGAN判别器和GAN判别器保留卷积DCGAN结构。
图 5 ,图 6 和图 7 显示用到WGAN和GAN时, 3 种结构生成的样本。整页的生成样本见附录 F 。样本未经优选。
实验中,从未见过用WGAN时模式被破坏。
积分概率度量(Integral Probability Metric,IPMs)上有很多工作。给定从 X 到 R 的函数集合,定义
介绍WGAN,可替换传统GAN的训练。新模型中,提高了学习的稳定性,克服了模式被破坏等问题,并提供方便调试和超参数搜索的学习曲线。进一步,显示对应的优化问题合理,并为分布间其它距离的深入关联提供理论工作。
全文未经他人校正,如有问题欢迎指出。
并不是数学出身,但后面的证明还是看了。考虑到最近贼忙以及附录部分的编辑量,所以先忘了它吧… 但附录部分如有问题欢迎讨论。嗯,共同进步… ٩(๑òωó๑)۶