激活函数总结

激活函数:

激活函数在神经元中非常重要的。为了增强网络的表示能力和学习能力,激活函数需要具备以下几点性质:

     1. 连续并可导(允许少数点上不可导)的非线性函数。可导的激活函数可以直接利用数值优化的方法来学习网络参数。
     2. 激活函数及其导函数要尽可能的简单,有利于提高网络计算效率。
     3. 激活函数的导函数的值域要在一个合适的区间内,不能太大也不能太小,否则会影响训练的效率和稳定性。

Logistic 函数

                              

装备了Logistic 激活函数的神经元具有以下两点性质:1)其输出直接可以看作是概率分布,使得神经网络可以更好地和统
计学习模型进行结合。2)其可以看作是一个软性门(Soft Gate),用来控制其它神经元输出信息的数量。

Tanh 函数 

                                 

Tanh 函数可以看作是放大并平移的Logistic 函数,其值域是(−1, 1)。

                                       

Tanh 函数的输出是零中心化的(Zero-Centered),而Logistic 函数的输出恒大于0。非零中心化的输出会使得其后一层的神经元的输入发生偏置偏移(Bias Shift),并进一步使得梯度下降的收敛速度变慢。     激活函数总结_第1张图片

Hard-Logistic 和Hard-Tanh 函数

以Logistic 函数σ(x) 为例,其导数为σ′(x) = σ(x)(1−σ(x))。由其在0附近的一阶泰勒展开,得到 

                激活函数总结_第2张图片                     

 激活函数总结_第3张图片

修正线性单元(Rectified Linear Unit,ReLU)

                  激活函数总结_第4张图片 

优点:x>0时缓解了梯度消失问题,加速梯度下降收敛速度。有很好的稀疏性(使一部分输出为0),大约50%神经元处于激活状态。

缺点:有的神经元可能永远不能激活

带泄露的ReLU

带泄露的ReLU(Leaky ReLU)在输入x < 0 时,保持一个很小的梯度λ。这样当神经元非激活时也能有一个非零的梯度可以更新参数,避免永远不能被激活[Maas et al., 2013]。带泄露的ReLU的定义如下:

激活函数总结_第5张图片

带参数的ReLU

带参数的ReLU(Parametric ReLU,PReLU)引入一个可学习的参数,不同神经元可以有不同的参数[He et al., 2015]。对于第i 个神经元,其PReLU的定义为

激活函数总结_第6张图片

Softplus 函数

Softplus 函数其导数刚好是Logistic 函数。Softplus 函数虽然也有具有单侧抑制、宽兴奋边界的特性,却没有稀疏激活性。

激活函数总结_第7张图片

还有一些不常见的激活函数。 

参考:https://nndl.github.io/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(DeepLearning)