Gen-ai 简明教程
Generative Adversarial Network - Architecture and Types
生成对抗网络 (GAN) 通常利用诸如卷积神经网络 (CNN) 的架构。生成对抗网络框架由两个神经网络组成: Generator 和 Discriminator 。这些网络扮演着重要的作用,其中生成器专注于创建新数据而判别器评估它。阅读此章节来了解生成对抗网络架构、它们的组件、类型以及让它们如此强大的机制。
The Role of Generator in GAN Architecture
生成对抗网络架构的第一部分是生成器。我们看看它的功能和结构 −
Generator: Function and Structure
生成器的主要目标是生成新的数据样本,这些样本旨在与数据集中的真实数据类似。它从一个随机噪声向量开始,并通过全连接层(如 Dense 或卷积层)对其进行转换以生成合成数据样本。
Generator: Layers and Components
以下是生成器神经网络的层和组件列表−
-
Input Layer − 生成器接受低维的随机噪声向量或输入数据作为输入。
-
Fully Connected Layers − FLC 用来增加输入噪声向量的维数。
-
Transposed Convolutional Layers − 这些层也称为反卷积层。它用于上采样,即生成一个具有比输入特征映射更大的空间维度输出特征映射。
-
Activation Functions − 两种常用的激活函数为: Leaky ReLU 和 Tanh 。Leaky ReLU 激活函数有助于减少激活函数的神经元死亡问题,而 Tanh 激活函数确保输出在一个特定范围内。
-
Leaky ReLU − 它生成最终的数据输出,如一定分辨率的图像。
The Role of Discriminator in GAN Architecture
GAN 架构的第二部分是判别器。让我们看一下它的功能和结构 −
Discriminator: Function and Structure
判别器的主要目标是将输入数据分类为真实数据或由生成器生成的数据。它将数据样本作为输入,并给出输出概率,表示样本是真实的还是假的。
Discriminator: Layers and Components
以下是判别器神经网络的层和组件列表 −
-
Input Layer − 判别器从真实数据集或生成器接收数据样本作为输入。
-
Convolutional Layers − 它用于对输入数据进行下采样以提取相关特征。
-
Fully Connected Layers − FLC 用于处理提取的特征并最终进行分类。
-
Activation Functions − 它使用 Leaky ReLU 激活函数来解决梯度消失问题。它还引入了非线性。
-
Output Layer − 如同名称所表示的那样,它输出一个介于 0 到 1 之间的值,表示样本是真实的还是假的。
Types of Generative Adversarial Networks
根据生成器和判别器网络相互作用的方式,我们可以构建出不同类型的 GAN 模型。以下是几个著名的变体 −
Deep Convolutional GANs (DCGANs)
DCGAN 是 GAN 最流行的实现之一。它在 ConvNets 中由 multi-layer perceptron 构成,以稳定 GAN 训练过程。这些指导方针显著稳定了 GAN 训练,尤其是在图像生成任务中。
DCGAN 的一些关键功能包括使用:
-
Strided Convolutions
-
Batch Normalization
-
取消完全连接的隐藏层