前置知识:
1.多层感知机(MLP)
有博客说它的别名叫:人工神经网络。具体可以看:多层感知机(MLP)简介-CSDN博客,原来get到一点点的人工神经网络居然是MLP。
MLP也可以理解为机器自己教自己去干某些事情。参考视频:极简教程,关于多层感知机(MLP)你需要知道的一切_哔哩哔哩_bilibili
一切事物都可以建模为自由落体模型。这个三段论还蛮有意思的。
(以下照片截自B站视频)
下图第三点:如果错误,考虑到自由落体,将黑盒子的状态设置为18楼的意义在于,犯过一次错后,再犯一次错误的概率会减小,同理,如果正确,再次推测正确的概率会提升。
将照片性别识别机器类比为多层感知机。
那么此时,三段论的结果:MLP可以自己去解决问题。
2.香农熵+交叉熵+KL散度
推荐视频:【10分钟】了解香农熵,交叉熵和KL散度_哔哩哔哩_bilibili
(以下照片截自B站视频)
首先,指的是所包含的信息,当一个事物越容易发生时,它所能展现出的信息就越少(eg.太阳照常升起带来的信息很少,太阳不升起了那带来的信息可就太大了...)所以我们对取倒数并放到了里面。那么第一行公式大家就理解了~。下面开始举例子,有投掷均等的硬币(正反概率都是),他们所蕴含的信息公式就在fair coin的两行计算式中。h--硬币正面,t--硬币反面。uneven coin就是不均等的硬币,正面概率较小,反面概率较大。信息这一概念就说到这里啦
接下来这段是香农熵,香农熵可以理解为对信息求个数学期望。下面的两个例子还是两种硬币。
这一段来到了交叉熵,第一行是硬币投掷正反两面的原本概率,第二行是我们猜测的概率,交叉熵就是对原本的概率*猜测的信息量进行求和,可以简单说成交叉相乘再求和。例子在最后四行,可以简单理解橙色文字。
Here,来到了KL散度,KL散度是对两个分布的difference进行的衡量,图片的第一行即为真实的p和我们生成的q的分布的差值。KL散度有两个性质:KL散度一定大于等于0,KL散度不是对称的。这里解释一下最后一行公式,实验中,我们希望KL散度的值越小越好,即生成的q和原本的p的分布越接近越好。那么对KL散度中的做梯度下降,因为与无关,最后只剩下,对其做梯度下降。
论文:
title:
我们先来看题目:generative,形容词,有生产能力的,生成的;adversarial,形容词,对抗性的,敌对的;nets,名词,网。那么题目就是:生成对抗性网络。
abstract:
GAN是一个新的框架,在这个框架中,我们要训练两个模型,分别是generative model(生成模型),discriminative model(辨别模型)。我们希望解决什么问题呢?我们希望生成一个generative model,使它生成的图片与测试集里的图片无限的接近,让discriminative model无法辨别。也就是说在训练两个模型的过程中,generative model希望discriminative model无法分开自己生成的图片和测试集中的图片,而discriminative model希望自己可以分清,在训练的过程中,两种模型相互促进,最后得到了一个较好的generative model。
橙色方块中提到了相关的结论,我们后续再说。在摘要的最后,作者提出了该模型的特点:在G和D由多层感知机构成的情况下,整个系统可以适应反向传播进行训练,并且不需要任何马尔科夫链或展开推理网络。
introduction:
对于上文提到的希望解决什么问题,原来的解决方案的不足是:在最大似然估计和相关策略中难以逼近许多棘手的概率计算,在生成上下文中难以利用分段线性单元的好处。为了回避这些问题,新的框架被提出。
在introduction的最后,作者提出对抗性网络的定义:G模型(generative)和D模型(discriminative)都是多层感知机MLP。并且,在对抗性网络下,可以只使用非常成功的反向传播和退出算法来训练这两个模型,只使用正向传播从生成模型中提取样本。不需要近似的推理或马尔可夫链。
adversarial nets:
首先看生成器G,是data,是指数据的生成分布,是噪音,是指噪音的分布,模型G是想要通过来映射到,其中是可微函数G中的一个参数。
再来看分辨器D,是D的一个参数,输入放入D中会得到一个标量,该标量会帮助我们判断该图片来自还是生成器G生成的。表示来自于数据而不是的概率。即如果判断该图片是生成器生成的话,;即如果判断该图片来自测试集,。
作者训练G:,生成器想让分辨器D分辨错误,即希望,即。
接下来,作者提出了价值函数,加号的前半部分是有关于真实数据的,如果D足够准确,那么,;加号的后半部分,如果D足够准确,后半部分公式会趋于0,反之,后半部分公式会趋于无穷小。从生成器G的角度看,只和后半部分公式有关,即希望公式无穷小。从分辨器D的角度看,和前后两部分公式都有关,都希望两部分公式趋于0,即取到最大值。
theoratical results:
先看图片,四张图片的指的是真实数据,数据是去映射到的噪音,蓝色线是分辨函数D,黑色点线是测试数据集的分布,绿色线是生成函数G生成图片的分布。随着生成函数G慢慢调整,绿色线条和黑色点线慢慢重合,直到分辨函数D无法识别。
4.1
全局最优解
此时令G函数固定住,来证明D函数是时有全局最优解,如果是最优解,则D函数的值是。因为G函数固定住了,那么我们就需要使函数取得最大值。
这里对adversarial nets中的公式进行展开:
这里,第二行由此替换,并进行合并。另,,。则有:
该函数是凸函数,在处有最大值,即。把求出的最优函数带回去,即为:
此时的D函数已经确定,现在从G函数的角度来讲,要求整个函数的最小值。