生成对抗网络(GAN)是一种深度学习框架,旨在生成与训练数据集相似的新数据。GAN 由伊恩-古德费洛(Ian Goodfellow)和他的同事于 2014 年首次提出,由两个神经网络(生成器和判别器)组成,在竞争环境中共同训练。生成器创建新的数据实例,而鉴别器则评估它们的真实性。这两个网络之间的相互作用促使生成器生成越来越逼真的数据,从而使 GANs 成为生成合成数据的强大工具。
GAN 背后的核心思想是生成器和判别器之间的对抗过程。生成器的目标是创建数据,让鉴别器无法将其与真实数据区分开来。鉴别器的目标是正确识别接收到的数据是真实数据还是生成数据。这种动态变化形成了一个反馈循环,两个网络都会随着时间的推移而不断改进。
训练过程首先由生成器生成随机数据。然后根据训练数据集中的真实数据和生成器中的虚假数据对判别器进行训练。鉴别器学会区分真实数据和虚假数据,并向生成器提供反馈。生成器利用这些反馈改进其输出,创建更有可能骗过鉴别器的数据。这个过程会不断迭代,每个网络都会推动另一个网络发挥更好的性能。
生成器是一种神经网络,它将随机噪声作为输入,并将其转换为数据样本,如图像、文本或音频。生成器的结构通常采用上采样技术,例如在生成图像的情况下采用转置卷积技术,以便从初始噪声逐步建立所需的输出。
判别器是另一种充当二元分类器的神经网络。它将真实或生成的数据样本作为输入,并输出输入为真实数据的概率。判别器使用标准的监督学习技术进行训练,目的是最大限度地提高预测的准确性。
GAN 在各个领域都有应用,展示了其多功能性和潜力。以下是一些著名的例子:
GANs 最受欢迎的应用之一是图像生成。GAN 可以生成高度逼真的人脸、物体和场景图像。例如,NVIDIA 的 StyleGAN 已被用于生成栩栩如生的人脸图像,而这些图像在现实中并不存在。这种能力对娱乐、艺术和设计等领域具有重要意义。
通过生成新的合成数据样本,GAN 可用于扩充现有数据集。这在收集大量真实数据具有挑战性或成本高昂的情况下尤其有用。例如,在医学成像领域,GANs 可以生成罕见疾病的合成图像,从而帮助训练出更强大的诊断模型。
GAN 可以进行图像到图像的转换,即将一个领域的图像转换成另一个领域的图像。例如,CycleGAN 已被用于将照片转换成具有特定艺术家风格的绘画,或将卫星图像转换成地图视图。
虽然 GAN 是一种强大的数据生成工具,但它并不是唯一的生成模型类型。其他著名的生成模型包括变异自动编码器(VAE)和自回归模型。
VAE 是另一类使用概率方法生成数据的生成模型。与 GAN 不同,VAE 将输入数据编码到一个潜在空间,然后将其解码回原始数据空间。VAE 通常用于图像去噪和异常检测等任务。与 GANs 相比,VAE 生成的图像更平滑,但有时也更模糊,而且通常更容易训练,不易出现模式崩溃。
自回归模型,如GPT(生成式预训练变换器),按顺序生成数据,每次生成一个元素。这些模型对文本生成特别有效,已被用于创建高度连贯和上下文相关的文本。与 GAN 不同,自回归模型不涉及对抗过程,而是侧重于根据前一个元素预测序列中的下一个元素。
尽管 GAN 的功能令人印象深刻,但它也面临着一些挑战:
GANs 领域发展迅速,目前正在进行的研究旨在应对挑战并扩大其应用范围。改进的训练技术、新的架构以及将 GANs 的优势与其他生成模型相结合的混合模型等创新技术,正在为开发更稳定、用途更广泛的 GANs 铺平道路。
访问Ultralytics 博客,了解计算机视觉和生成式人工智能的最新进展。要了解更多相关术语,请访问Ultralytics' 人工智能和计算机视觉词汇表。