前言
本人对于深度学习算是小白一枚,之前有不懂的问题,时常会翻看大牛们的技术博客,看多了,自己心里也痒痒的,于是就有了把自己的学习和思考的结果写下来的想法。同时也希望能借此文章与深度学习的小白们共勉,你不是一个人在战斗。^_^
生成对抗网络
Goodfellow等人于2014年提出的模型,其特点是具有两个对立的网络,一个叫生成网络,另一个叫判别网络。
我们很容易顾名思义,简单来讲:
生成网络,就是一个从无到有的网络(当然也不绝对如此),把一些毫无规律的数据(我们称之为噪声)映射到和训练样本相同的空间,训练的目地就是学习两者之间的规则(我们称之为分布)。
判别网络,其输入既可以是训练样本,也可以是生成网络的输出(不如说必须如此),目的是区分数据是来自样本集还是来自生成网络,所以它的输出是表示输入是来自样本集的概率。
其实Goodfellow提出生成对抗网络的最初目的是为了得到一个好的生成模型,这个模型可以以真实数据的分布得出新的数据,当然要想得出真实数据分布这一点本身几乎不可能,更别说评判生成模型是否学到了真实的分布,所以才有了用另一个网络来评判的想法。
在这插一句,看过原文的思想之后觉得生成对抗网络其实原理和机器学习里的“EM算法”很相似,有兴趣的可以自学一下。
下面正式转述作者的想法
首先,一上来作者就对深度玻尔兹曼机一阵鄙