趋近智
尽管原始的生成对抗网络 (GAN)框架提供了一个强大的理念,但早期的尝试常常面临训练不稳定,并生成低分辨率、不真实的图像。Radford、Metz和Chintala在2015年引入的深度卷积生成对抗网络 (DCGANs) 标志着一项显著的进步,它提供了一套架构指导原则,使得基于卷积的深度生成模型训练更加稳定和有效。DCGANs表明CNN可以成功地用于无监督学习 (supervised learning) (unsupervised learning),尤其是图像生成。
DCGANs的成功主要归因于一些特定的架构选择,这些选择解决了常见的训练问题:
用步长卷积替代池化:DCGAN鉴别器在空间下采样时,不使用确定性池化层(如最大池化),而是使用步长卷积。同样,生成器使用分数步长卷积(常称为转置卷积或“反卷积”)进行空间上采样。这使得网络能够学习其自身的空间下采样和上采样,从而获得比固定池化方法可能更好的特征表示。
引入批量归一化 (normalization):批量归一化(BatchNorm)应用于生成器和鉴别器。它通过归一化每层输入来帮助稳定学习,减轻了不良初始化相关问题,并改进了梯度流动。这在深度模型中尤为重要。也有例外:BatchNorm通常不应用于生成器的输出层或鉴别器的输入层。
在较深架构中移除全连接层:传统的CNN在最终输出前通常会有一个或多个全连接层。DCGANs在较深的卷积架构中大部分取消了这些层。在生成器中,输入噪声向量 (vector)可能通过一个全连接层进行投影,但随后的层都是卷积层。在鉴别器中,最终卷积层的特征通常会被展平并直接送入单个Sigmoid输出节点。这减少了参数 (parameter)数量,并可能促进学习到更多与空间相关的特征。
使用合适的激活函数 (activation function):生成器主要使用修正线性单元 (ReLU) 激活函数,,用于除输出层外的所有层。输出层使用 Tanh 激活函数,,它将输出缩放到 的范围。这很方便,因为图像像素值在训练期间通常被归一化到此范围。
在鉴别器中使用LeakyReLU:鉴别器所有层都使用Leaky修正线性单元 (LeakyReLU) 激活函数。LeakyReLU定义为,其中是一个小的正常量(例如0.2),它允许在单元不活跃()时产生一个小的非零梯度。这能防止梯度消失并帮助学习,尤其是在对抗环境中,鉴别器需要向生成器提供有用的梯度。
DCGAN生成器将随机噪声向量 (vector)(通常从标准正态分布或均匀分布中采样)作为输入,并将其转换为图像。该过程通常遵循以下步骤:
描述了DCGAN生成器的一个典型流程图,通过学习到的上采样将噪声向量转换为图像。
DCGAN鉴别器接收图像(来自数据集的真实图像或来自生成器的虚假图像)作为输入,并输出一个表示图像是真实还是虚假的概率。其结构本质上是一个标准CNN,适用于二元分类,与生成器架构相反:
描述了DCGAN鉴别器的一个典型流程图,通过学习到的下采样将输入图像分类为真实或虚假。
DCGANs具有重要影响,因为它提供了一种可靠且相对稳定的架构,用于在图像数据上训练GAN。它表明GAN可以无监督地从图像中学习有意义的特征表示,并生成视觉上合理的图像。许多后续的GAN架构都建立在DCGAN所确定的原则之上,融入了修改和改进,但通常保留了使用卷积、批量归一化 (normalization)和仔细选择激活函数 (activation function)的核心思路。了解DCGAN为后续研究更复杂的生成模型(如条件GAN或StyleGAN)奠定了坚实的根基。
这部分内容有帮助吗?
© 2026 ApX Machine LearningAI伦理与透明度•