Generative Adversarial Nets
生成对抗网络是一个需要生成模型和判别模型共同参与的一个复合模型。好,下面进入正文,同样不整复杂的数学公式。
整个过程,就是生成模型(印钞机)学习到了真实世界的数据(央行印出来的真钞),然后按照真实世界数据的概率分布生成新的数据(假钞),然而判别模型(验钞机)需要把鉴别出那些是真实世界存在的数据,那些是生成的数据(鉴别真钞和假钞)
生成对抗网络的概念图
于是我们就可以真实感受到对抗了,在印钞机和验钞机两者的对抗中,印钞机越来越能够模仿出真正的钞票了。
实际机器学习的案例中,生成模型通过不断学习真实数据的特征和概率分布,生成模型的目标就是生成以假乱真的数据,而判别模型同步学习出真实数据集和生成数据集越来越细微的差异。两个模型交替更新参数。
在论文中Generative adversarial nets.中作者给出了一个结构略有些复杂的公式,为了不违背不整复杂公式的承诺,就还是用比较简单的语言转述一下好了,想看全文以及目标函数可以点击链接。
论文作者设定了有一个目标函数,用于衡量印钞机和验钞机两者在这场游戏中的表现。验钞机即判别模型需要最大化这个分数(而分数和判断真假钞的正确个数正相关),印钞机即生成模型需要最小化这个分数(而分数和假钞被判断正确的个数负相关)
Reference/参考
Goodfellow, Ian, et al. "Generative adversarial nets." Advances in neural information processing systems. 2014.