1.介绍
在自动编码器一文中,我们已经简单介绍了基于隐藏神经元数量较小的假设,本文主要基于隐藏神经元数量较大的假设。此时,我们仍然通过给自编码神经网络施加一些其他的限制条件来发现输入数据中的结构。比如我们给隐藏神经元加入稀疏性限制。
稀疏性可以被简单地解释如下:假设神经元的激活函数时sigmoid函数,那么当神经元的输出接近于1的时候我们认为它被激活,而输出接近于0的时候认为它被抑制,那么使得神经元大部分的时间都是被抑制的限制则被称作稀疏性限制。如果使用tanh作为激活函数的话,当神经元输出为-1的时候,我们认为神经元是被抑制的。
2.KL散度
在介绍自动编码器之前,我们先看下KL散度:
,这个是离散概率分布的公式
,这个是连续概率分布的公式
KL散度可以很好地测量两个概率分布之间的距离,比如公式中的p和q。如果两个分布越接近,那么KL散度越小;如果越远,KL散度就会越大。
KL散度的实战——1维高斯分布
我们先来一个相对简单的例子。假设我们有两个随机变量x1,x2,各自服从一个高斯分布