更快或更低是一个相对术语,必须在与之比较的上下文中加以理解。因此,为了理解这一点,我们必须首先考虑梯度下降如何与其他类型的激活函数一起工作。
示例设置
n
z1=W1x+b1
a1=f(z1)
...
zn=Wnan−1+bn
y=f(zn)
f
Tanh和Sigmoid-消失梯度
ff′(x)∈(−1,1)x
yW1
dfdW1=dfdWndWndWn−1...dW2dW1
0<i<n
dXidXi−1=f′(Wi−1ai−2+bi−1)×ai−2∈(−1,1)
(−1,1)f′ai−2(−1,1)
dfdW1ndfdW1
RELU和Dead Neuron
ai>0f
dXidXi−1=ai−2
dfdW1=a1a2a3...an−1
x>0x<0
泄漏的RELU和ELU
x>0x<1
我引用了原始纸来说明两者之间的区别。
尽管LReLU和PReLU也具有负值,但它们不能确保稳健的去噪状态。ELU在输入较小的情况下饱和到负值,从而减少了前向传播的变异和信息。
直观的解释如下。在ELU中,每当x变得足够小时,梯度就会变得非常小且饱和(以与Tanh和Sigmoid相同的方式)。小梯度意味着学习算法可以专注于其他权重的调整,而不必担心与饱和神经元的交互作用。
考虑一次2的多项式,它可以表示为3-d空间中的光滑表面。为了找到局部最小值,梯度下降算法将需要考虑x和y方向的陡度。如果梯度在x方向和y方向上均为负,则不清楚哪种方法更好。因此在两者之间的某个位置选择一条路径是明智的。但是,如果我们已经知道x方向上的一切都是平坦的(零梯度),那将成为y方向的必然选择。换句话说,您的搜索空间变得更小。
特别说明
在深度学习中,有很多主张没有足够的经验证据或深入的理解来支持它。在ELU的情况下,虽然确实可以使某些数据集更快收敛,但也可以使学习算法陷入不同数据集的局部最大值。我们只是还不够了解。