ReLU

作者: e6fa7dc2796d | 来源:发表于2018-08-03 20:36 被阅读185次

    1 修正线性单元(ReLU)

    ReLU 激活函数 ReLU 导数

    从上图可以看到,ReLU 是从底部开始半修正的一种函数。数学公式为:

    ReLU

    当输入 x<0 时,输出为 0,当 x> 0 时,输出为 x。该激活函数使网络更快速地收敛。它不会饱和,即它可以对抗梯度消失问题,至少在正区域(x> 0 时)可以这样,因此神经元至少在一半区域中不会把所有零进行反向传播。由于使用了简单的阈值化(thresholding),ReLU 计算效率很高。但是 ReLU 神经元也存在一些缺点:

    1. 不以零为中心:和 Sigmoid 激活函数类似,ReLU 函数的输出不以零为中心。

    2. 前向传导(forward pass)过程中,如果 x < 0,则神经元保持非激活状态,且在后向传导(backward pass)中「杀死」梯度。这样权重无法得到更新,网络无法学习。当 x = 0 时,该点的梯度未定义,但是这个问题在实现中得到了解决,通过采用左侧或右侧的梯度的方式。

    为了解决 ReLU 激活函数中的梯度消失问题,当 x < 0 时,我们使用 Leaky ReLU——该函数试图修复 dead ReLU 问题。下面我们就来详细了解 Leaky ReLU。

    2 Leaky ReLU

    Leaky ReLU 激活函数

    该函数试图缓解 dead ReLU 问题。数学公式为:

    Leaky ReLU

    Leaky ReLU 的概念是:当 x < 0 时,它得到 0.1 的正梯度。该函数一定程度上缓解了 dead ReLU 问题,但是使用该函数的结果并不连贯。尽管它具备 ReLU 激活函数的所有特征,如计算高效、快速收敛、在正区域内不会饱和。

    Leaky ReLU 可以得到更多扩展。不让 x 乘常数项,而是让 x 乘超参数,这看起来比 Leaky ReLU 效果要好。该扩展就是 Parametric ReLU。

    3 Parametric ReLU

    PReLU 函数的数学公式为:

    其中

    是超参数。这里引入了一个随机的超参数

    ,它可以被学习,因为你可以对它进行反向传播。这使神经元能够选择负区域最好的梯度,有了这种能力,它们可以变成 ReLU 或 Leaky ReLU。

    总之,最好使用 ReLU,但是你可以使用 Leaky ReLU 或 Parametric ReLU 实验一下,看看它们是否更适合你的问题。


    链接:https://www.jianshu.com/p/53bbb4ed78f3

    來源:简书

    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

    相关文章

      网友评论

        本文标题:ReLU

        本文链接:https://www.haomeiwen.com/subject/dviuvftx.html