Generative Adversarial Nets
概念
提出了一种模拟二人博弈的对抗模型,对抗双方分别为:
- 生成模型G:尽量使生成数据与训练集接近,使D无法区分
- 判别模型D:学习判断数据来自训练集还是由G产生
本文中用两个多层感知机作为生成模型和判别模型,生成模型加入了随机噪声。
对抗网络
生成模型,在参数Θg条件下根据噪音z生成数据。
判别模型,判断参数Θd条件下输入数据x来自数据集而不是由G生成的概率。
训练判别模型时最大化判断正确的概率,训练生成模型时最小化
总体而言,即为:
训练时每训练k次判别模型D后训练一次生成模型G:
变化过程如下图,其中蓝色虚线为判别分布,黑色点线为样本数据分布,绿色实线为生成数据分布,下半部分为z到x的映射x=G(z):
a状态为起始状态,经过对判别网络D的训练到达b状态,在经过对生成网络G的训练时生成数据分布接近样本数据分布到达c状态,最后经过多次训练后生成数据分布与样本数据相同,D(x)=1/2。
效果
经过训练后的生成网络效果: