当ProGAN和StyleGAN等架构侧重于新颖的生成器设计和渐进式训练时,GAN发展中的另一个重要方向涉及规模化。目的是利用更大的模型和海量数据集(如ImageNet)生成高保真、多样化的图像,达到更高分辨率照片的复杂程度。这项工作促成了BigGAN的出现。然而,在大规模训练GAN会带来独特的难题。不稳定性问题变得更为突出。梯度更容易消失或爆炸,并且在分布式训练设置和庞大参数量下,生成器和判别器之间的平衡更难维持。BigGAN引入了几种方法,专门用于在这些严苛条件下实现稳定训练。大规模训练的方法BigGAN的成功得益于架构选择和针对规模化特点而调整的稳定化方法相结合:增加模型容量和批次大小: 相较于之前的模型,BigGAN大幅增加了生成器和判别器网络的宽度(通道数)和深度。也许更重要的是,它在训练期间使用了明显更大的批次大小(例如,2048或更多,分布在许多处理器上)。更大的批次为两个网络提供了更稳定、更具代表性的梯度估计,这对于稳定对抗性动态特别有益。然而,这需要大量的计算资源(TPU或大型GPU集群)。自注意力: 如前所述,自注意力机制让模型能够捕捉图像中的长程关联。BigGAN引入了自注意力层,这在更高分辨率下尤其有效,因为此时协调远距离空间位置的特征对于真实感变得重要(例如,确保生成动物身体上的皮毛纹理一致)。共享嵌入和条件批归一化: BigGAN擅长条件图像生成(根据类别标签生成图像,例如“柯基”或“火山”)。它使用共享嵌入来表示类别信息,这些信息被线性投射到生成器的批归一化层(条件批归一化)中。这使得类别信息能够有效地调节生成器中的特征图,而不会增加过多的参数。分层潜在空间: BigGAN不是将整个潜在向量$z$仅馈送到初始层,而是将$z$分割成块,并馈送到生成器的多个层中。这让模型能够更精细地控制不同抽象和分辨率级别上的特征,有助于提高多样性和保真度。正交正则化: 这是一个重要的稳定方法,主要应用于生成器的权重。其目的是促使权重矩阵$W$是(或接近)正交的,即$W^T W = I$。正交变换保留向量范数,这有助于防止在深度网络反向传播过程中梯度爆炸或消失。BigGAN应用了一个正则化项,对偏离正交性的权重进行惩罚: $$ R_{\beta}(W) = \beta ||W^T W - I||_F^2 $$ 其中,$||.||_F^2$是平方弗罗贝尼乌斯范数,$\beta$是一个控制正则化强度的小超参数。这个简单的约束在稳定非常深层生成器的训练方面表现出效果。谱归一化(在判别器中): 尽管正交正则化有助于生成器,但BigGAN(像许多高级GAN一样)在判别器中使用了谱归一化。这一方法将在第3章进一步说明,它通过根据判别器权重矩阵的最大奇异值来归一化它们,从而控制判别器的Lipschitz常数。这有助于防止判别器的梯度变得过大,显著提升了整体训练稳定性。截断技巧:以多样性换取保真度即使有了这些稳定化方法,从完整先验分布$z \sim \mathcal{N}(0, I)$生成的样本有时可能包含质量较低或非典型样本,这些样本位于分布的尾部。BigGAN引入了“截断技巧”作为一种后处理采样方法,旨在提高单个样本的保真度(视觉质量和真实感),尽管会牺牲整体样本多样性。BigGAN不是直接从标准正态分布中采样$z$,而是从$\mathcal{N}(0, I)$中采样$z$的分量,但如果其幅度$|z_i|$超过选定的阈值$\psi$,则会被拒绝并重新采样。较小的$\psi$意味着更严格的截断,这使得样本更接近学习分布的“平均”或高密度区域,通常会带来更高的视觉保真度但更少的多样性。将$\psi = 0$设置为理论上会生成“平均”图像,而非常大的$\psi$(或不截断)则使用完整的潜在空间,最大限度地提高多样性,但可能包含不太合理的输出。digraph G { rankdir=TB; node [shape=box, style=rounded, fillcolor="#e9ecef", fontname="Arial", fontsize=10]; edge [color="#495057", arrowhead=vee]; dist [label="潜在分布\nP(z)", shape=ellipse, fillcolor="#dee2e6"]; sampler [label="采样 z", fillcolor="#a5d8ff"]; truncation [label="应用截断\n(阈值 ψ)", shape=diamond, fillcolor="#ffd8a8"]; generator [label="生成器 G(z)", fillcolor="#b2f2bb"]; output [label="生成的图像", shape=ellipse, fillcolor="#e9ecef"]; dist -> sampler; sampler -> truncation [label="z ~ N(0, I)"]; truncation -> generator [label="截断后的 z'"]; generator -> output; } 截断技巧的图示。样本$z$从完整潜在分布$\mathcal{N}(0, I)$中提取。BigGAN应用阈值$\psi$来滤除来自此分布的低概率尾部(“低概率”)的值。只有中央“截断区域”(由蓝色曲线突出显示并标记为“高保真”)内的样本被保留并馈送到生成器。这通过避免异常值提高了图像保真度,但代价是生成输出的多样性降低。影响和计算成本BigGAN表明,通过足够的规模和适当的稳定化,GAN能够生成多样化、高分辨率(例如,256x256,512x512)的图像,具有出色的保真度,通常难以与ImageNet类别中的真实照片区分。它显著提升了图像生成质量的标准。然而,这却带来了巨大的计算成本。训练BigGAN需要数百个TPU或GPU核心以及数天或数周的训练时间,使得没有大型计算基础设施的研究人员和从业者无法使用。尽管成本高昂,BigGAN开创的方法(特别是正交正则化、截断技巧以及对大批次训练的理解)影响了许多后续的生成模型。理解BigGAN有助于了解模型规模、数据集大小、架构设计和稳定化方法之间的相互作用,这些都是推动生成建模进步所需的。它是一个案例,说明了如何应对在扩展深度生成模型时出现的工程和理论难题。