生成对抗网络与 WGAN

让生成器对抗判别器进行训练,并以 Wasserstein 距离判别器取代分类器以获得稳定梯度。

生成对抗网络(GAN)训练一个生成器 GG,把噪声 zpzz\sim p_z 映为样本 G(z)G(z),与之对抗的是试图区分生成样本与真实样本的判别器 DD。二者进行极小极大博弈:

z噪声 z ~ p_z生成器 GG(z) 假样本x真实数据判别器 / 评判器 D真 / 假 或 W 得分极小极大博弈G:使 D 误判生成样本D:区分真实与生成

模式坍缩的直观演示 —— 调节生成器覆盖的模式数:

真实数据生成样本

真实分布有 8 个模式(环上的簇)。健康的生成器应覆盖全部;坍缩的生成器把质量堆在少数几个模式上,漏掉其余——这就是模式坍缩。Wasserstein 距离(WGAN)会惩罚漏掉整片模式,从而缓解坍缩。

minGmaxD  Expdata[logD(x)]+Ezpz[log(1D(G(z)))].\min_{G}\max_{D}\; \mathbb{E}_{x\sim p_{\text{data}}}[\log D(x)] +\mathbb{E}_{z\sim p_z}[\log(1-D(G(z)))].

逐项读这个目标:D(x)(0,1)D(x)\in(0,1) 是判别器判定 xx 为真的概率;第一项 Expdata[logD(x)]\mathbb{E}_{x\sim p_{\text{data}}}[\log D(x)] 奖励 DD 对真实样本打高分;第二项里 G(z)G(z) 是把先验噪声 zz 解码出的假样本,log(1D(G(z)))\log(1-D(G(z))) 奖励 DD 对假样本打低分。DD 想把这两项一起拉大,GG 想把第二项压小——也就是让自己造的假样本骗过 DD

两个网络交替更新:DD 在固定 GG 时最大化该目标,而 GG 在固定 DD 时最小化它,二者由同一目标耦合成一个对抗回路,并不存在通常意义上的可最小化损失。在最优点处,生成器的分布与数据一致,且 D12D\equiv \tfrac12——判别器再也分不清真假,只能对每个样本输出 0.50.5。但原始目标在实践中很脆弱:当 DD 变得自信时,生成器的梯度趋于消失,训练还易陷入模式坍缩——GG 只产出少数能骗过 DD 的输出,而非覆盖整个数据分布。

直觉

把它想成造假者(GG)与鉴定师(DD)的拉锯。鉴定师每识破一种破绽,造假者就改进一处;造假者每学会一招,鉴定师就提高一档标准。理想终局是造假品与真品无从分辨,鉴定师只能靠掷硬币猜。难点在于这是两个目标相反的网络在同步移动,没有一个静止的损失曲面可供下降——一方进步会改变另一方的地形,于是博弈可能绕圈、可能一方碾压另一方,未必收敛。

由于 GGDD 的能力须保持均衡,这类博弈对学习率、网络容量与更新次数的配比都较为敏感。一个常见做法是每更新 GG 一次就先更新 DD 若干次,让评判一侧始终略强,从而给生成器提供方向更准的梯度;但 DD 太强又会把梯度推入饱和区。后续的多数改进,皆可视为对该回路施加约束、令其梯度更可靠的不同尝试。

极小极大博弈与纳什均衡

该对抗目标并非由任一网络单独最小化,其解是一个两人博弈的纳什均衡——一组联合配置 (G\*,D\*)(G^\*, D^\*),在另一方固定时任一方都无法通过改变自身参数而获益。对各网络参数施行普通梯度下降未必收敛到这样的不动点:耦合的动力学可能绕均衡点循环或发散,因为 GG 的下降方向依赖于一个本身也在移动的 DD。最简单的例子是双线性博弈 minxmaxyxy\min_x\max_y\, xy,其唯一均衡在原点,但梯度动力学会绕原点画圈、半径不减——这正是对抗训练里”目标在降、样本却越来越差”的根源。模式坍缩则是此种不稳定的另一征兆——生成器把概率质量集中到当前 DD 恰好给出高分的少数输出上,并随 DD 的适应而追逐其响应,始终无法收敛到完整的数据分布。当 GGDD 严重失配时,近乎完美的判别器把 log(1D(G(z)))\log(1-D(G(z))) 项推入平坦区域,生成器的梯度随之消失。这些病态促使人们以一种无论两个分布如何分布、梯度都仍可用的距离,取代 Jensen–Shannon 目标。

直觉

标准 GAN 损失度量的是一种 Jensen–Shannon 散度。当生成分布与真实分布几乎不重叠时(训练初期常见),该散度饱和,几乎给不出可用的梯度。打个比方:若两堆点完全不相交,“它们重叠多少”这个量恒为零,无论二者相距一寸还是一里都一样——它告诉你”不重叠”,却不告诉你”往哪挪能更近”。此时需要一种在支撑不相交时仍平缓退化、能指出靠拢方向的距离。

深入

把这一对照算到底。取两条平行分布(两个落在相距 θ\theta 的平行线上的 delta 分布)。只要 θ0\theta\neq 0 二者支撑不相交,Jensen–Shannon 散度便恒为常数 log2\log 2——与 θ\theta 无关,故其梯度处处为 00,生成器收不到任何把 θ\theta 推向零的信号,目标随支撑分离而饱和。Wasserstein-1 距离则为 θ|\theta|,梯度处处为 ±1\pm 1;即便支撑不相交,它仍随分布靠拢而平滑下降,生成器始终有可用的方向——这正是”平缓退化”的精确含义。这里的 θ\theta 即两分布的间距,log2\log 2 是 JS 散度在完全不重叠时取的最大值(以自然对数计);把任一具体数值代入便可验证:θ=2\theta=2θ=0.01\theta=0.01 给出的 JS 梯度都是 00,而 Wasserstein 梯度始终指向 θ\theta 减小的方向。

Wasserstein GAN(WGAN)以一个评判器(critic)ff 取代分类器,用以估计生成数据与真实数据之间的 Wasserstein-1 距离。由 Kantorovich–Rubinstein 对偶,

W1(pdata,pG)=supfL1  Expdata[f(x)]Ezpz[f(G(z))],W_1(p_{\text{data}}, p_G) = \sup_{\|f\|_L \le 1}\; \mathbb{E}_{x\sim p_{\text{data}}}[f(x)] -\mathbb{E}_{z\sim p_z}[f(G(z))],

上确界取遍所有 1-Lipschitz 函数 ff。逐项解释:ff 是评判器,把样本映为一个实值得分;fL1\|f\|_L\le 1 即 1-Lipschitz 约束,要求 ff 在任意两点上的取值之差不超过两点间距,等价于其斜率被限制在 ±1\pm 1 之间,从而 ff 不会任意陡峭;表达式 Epdata[f]EpG[f]\mathbb{E}_{p_{\text{data}}}[f]-\mathbb{E}_{p_G}[f] 是评判器给真实样本与生成样本打分的平均之差,取遍所有满足约束的 ff 之上确界,恰好等于两分布的 Wasserstein-1 距离。评判器输出实值得分而非概率,其目标即便在两个分布不重叠时也能给生成器提供有意义的梯度——因为 ff 的斜率被钉在 ±1\pm 1,无论真假样本分得多开,得分差都随它们靠拢而成比例减小。

深入

该对偶只有在 ff 保持 1-Lipschitz 时才成立,因此必须强制该约束。早期 WGAN 将评判器权重裁剪到一个小区间,这是一种会扭曲函数的粗糙手段:裁剪过紧则 ff 退化为近乎线性、表达力不足,裁剪过松则约束失效。梯度惩罚(WGAN-GP)转而加入一个软项,在插值点 x^\hat x 处把 ff 的梯度范数推向 11

λEx^[(x^f(x^)21)2].\lambda\,\mathbb{E}_{\hat x}\big[(\|\nabla_{\hat x} f(\hat x)\|_2 - 1)^2\big].

其中 x^\hat x 是在一对真实样本与生成样本之间随机插值得到的点(理论上最优传输路径上的 ff 处处梯度范数为 11,故只在这些连线上施加约束即可);x^f2\|\nabla_{\hat x} f\|_2ff 在该点的梯度模长;惩罚把它向 11 靠拢,λ\lambda 调节惩罚强度。它无需裁剪即可使 ff 接近 1-Lipschitz,从而显著提升训练稳定性。

密度比估计与判别器

标准 GAN 判别器与 Wasserstein 评判器代表了比较分布的两种不同策略。训练至最优的分类式 DD 会恢复出一个密度比:在其最优处 D\*(x)=pdata(x)/ ⁣(pdata(x)+pG(x))D^\*(x)=p_{\text{data}}(x)\big/\!\big(p_{\text{data}}(x)+p_G(x)\big),由此可读出 pdata/pGp_{\text{data}}/p_G,而把 D\*D^\* 代回目标即得 Jensen–Shannon 散度。直观地,密度比回答的是”在 xx 处真实样本比生成样本多出几倍”,这是个逐点的、需要两分布在同一点都有质量才有意义的量。同一密度比机制在隐空间中重现于对抗自编码器,那里由判别器把聚合后验匹配到先验。Wasserstein 评判器则全然不估计比值:它估计的是一种传输代价——把生成分布的质量搬成真实分布所需的最小”搬运功”,即便在 pdatap_{\text{data}}pGp_G 不共享支撑、比值 pdata/pGp_{\text{data}}/p_G 无定义之处,该代价仍保持有限且可微。这正是 Wasserstein 形式在支撑不相交时平缓退化、而密度比形式却饱和的原因:搬运代价问”要移动多远”,密度比问”在同一点上谁更多”,而后者在两堆点错开时根本无从作答。

这个对抗评判器正是 CryoGEN-I 的能量先验——在观测空间里把退化后的重构匹配到真实观测;而它所估计的 Wasserstein 距离,则是 CryoGEN-II 直接用最优传输(无需极小极大)去最小化的对象。这一从”对抗博弈”到”直接传输”的转变正对应本页主题:CryoGEN-I 沿用 GAN 的极小极大回路,承受其不稳定以换取灵活的能量先验;CryoGEN-II 则跳过博弈,直接最小化评判器所逼近的那个 Wasserstein 距离,得到一个稳定的单一解。(CryoWGEN 更进一步,用熵正则最优传输目标取代评判器,靠采样而非对抗训练求解。)在 Cryo-ET 重建里,这正是把缺角恢复变为分布匹配问题的入口:真实观测构成 pdatap_{\text{data}},退化重构构成 pGp_G,评判器或传输代价负责度量并缩小二者之差——详见方法总览。它也与自编码器的对抗式变体相联系。

← 生成与分布匹配