【专栏 2】激活函数(一)浅谈激活函数以及其倒退
激活函数是神经网络的相当重要的一部分,在神经网络的发展史上,各种激活函数也是一个钻研的方向。咱们在学习中,往往没有思考过——为什么用这个函数以及它们是从何而来?
生物神经网络曾给予了人工神经网络相当多的启发。如上图,来自树突信号一直累积,如若信号强度超过一个特定阈值,则向轴突持续传递信号。如若未超过,则该信号被神经元“杀死”,无奈持续流传。
在人工神经网络之中,激活函数有着殊途同归之妙。试想,当咱们学习了一些新的货色之后,一些神经元会产生不同的输入信号,这使得神经元得以连贯。
sigmoid 函数兴许是大家初学神经网络时第一个接触到的激活函数,咱们晓得它有很多良好的个性,诸如能将间断的实值变换为 0 到 1 的输入、求导简略,那么这个函数是怎么失去的呢?本文从最大熵原理提供一个角度。
1 sigmoid 函数与 softmax 函数
1.1 最大熵原理与模型
最大熵原理是概率模型学习的一个准则[](#refer-anchor)。最大熵原理认为,学习概率模型时,在所有可能的概率模型中,熵最大的模型是最好的模型。
假如离散随机变量 的概率分布是 ,则其熵是
熵满足下列不等式:
式中,是 的取值个数,当且仅当 的散布是均匀分布时左边的等号成立。这就是说,当 遵从均匀分布时,熵最大。
直观而言,此原理认为要抉择的概率模型首先必须满足已有的条件,在无更多信息的条件下没其余不确定的局部都是等可能的。
假如分类模型是一个条件概率分布 ,给定一个训练集,能够确定 的教训散布和边缘散布 的教训散布,别离以 和示意。
用特征函数(feature function)形容输出 和之间的某一个事实,定义为:
由上述信息,能够假如 对于教训散布 的期望值和对于模型 与教训散布 的期望值相等,即:
联合条件,该问题等价于束缚最优化问题:
由拉格朗日乘子法,问题转换为求如下式子的最小值
此时,咱们对 求的导数:
令其导数值为 0,在 的状况下,解得:
因为 ,得:
由下面两式可得:
仔细的同学不难发现,这和 softmax 函数非常相近,定义 ,即可失去 softmax 函数:
那么 sigmoid 函数呢?其实该函数就是 softmax 函数的二分类特例:
说完了推导,就来谈谈这两函数的特点。sigmoid 函数的长处前文已提到,但 sigmoid 在反向流传时容易呈现“梯度隐没”的景象。
能够看出,当输出值很大或很小时,其导数靠近于 0,它会导致梯度过小无奈训练。
2 ReLU 函数族的崛起
如图所示,ReLU 函数很好防止的梯度隐没的问题,与 Sigmoid/tanh 函数相比,ReLU 激活函数的长处是:
- 应用梯度降落(GD)法时,收敛速度更快。
- 相比 ReLU 只须要一个门限值,即能够失去激活值,计算速度更快。
毛病是:ReLU 的输出值为负的时候,输入始终为 0,其一阶导数也始终为 0,这样会导致神经元不能更新参数,也就是神经元不学习了,这种景象叫做“Dead Neuron”。
为了解决 ReLU 函数这个毛病,又呈现了不少基于 ReLU 函数的倒退,比方 Leaky ReLU(带透露单元的 ReLU)、RReLU(随机 ReLU)等等,兴许你有一天也能发现成果更好的 ReLU 函数呢!
援用
[1] [李航. 统计学习办法[M]. 清华大学出版社, 2012.]