作者:禅与计算机程序设计艺术
1.简介
19世纪末期,Deep Learning技术受到广泛关注,得到迅速的发展,其在图像处理、自然语言理解、模式识别等领域都扮演着越来越重要的角色。当时,一些研究者提出了一种无监督学习方法——Generative Adversarial Network(GAN),用来生成新的数据样本,并且希望通过对抗训练的方法让生成模型和真实模型之间进行博弈,使得生成模型更加逼真。这项工作极大的推动了计算机视觉、自然语言处理、模式识别等领域的进步。
GAN 是一种无监督学习方法,由两个互相对抗的网络组成——生成器 Generator 和判别器 Discriminator。通过不断调整两个网络的参数,训练 GAN 模型可以生成新的图像、文本或数据样本,并据此评估生成模型的质量。
在这篇文章中,我将详细介绍一下 GAN 的基本原理和应用。
2.基本概念
概念
Generative Adversarial Networks (GAN) 是 2014 年 Ian Goodfellow 提出的一种无监督学习模型。GAN 可被认为是一种深度神经网络生成模型,由一个生成网络和一个判别网络两部分组成。生成网络负责产生虚假的训练样本,而判别网络则负责区分输入的训练样本是真实还是虚假的。
两者的主要区别是:生成网络用于模仿训练数据的分布,生成看起来像真实数据的样本;判别网络用于判断输入数据是否来源于训练集中的真实样本。
通过博弈的过程,生成网络不断优化自己的参数,使得生成的样本变得越来越接近真实的样本,而判别网络也会根据生成网络的输出做出相应调整,从而