Convnets 中的 Sigmoid 与 Relu 函数

数据挖掘 卷积神经网络
2021-09-26 10:28:45

问题很简单:在卷积神经网络中使用 sigmoid 函数有什么优势吗?因为每个谈论 CNN 的网站都使用 Relu 功能。

1个回答

sigmoid 函数被整流线性单元取代的原因是因为它们的导数的性质。

让我们快速看一下sigmoid函数 σ 定义为 11+ex. sigmoid 函数的导数是

σ(x)=σ(x)(1σ(x))
的范围 σ 函数介于 0 和 1 之间。 σ 导函数等于 14. 因此,当我们有多个堆叠的 sigmoid 层时,通过反向传播导数规则,我们得到多个乘法σ. 随着我们堆叠越来越多的层,最大梯度呈指数下降。这通常被称为梯度消失问题。相反的问题是当梯度大于 1 时,在这种情况下梯度会向无穷大爆炸(梯度爆炸问题)。

现在让我们看看定义为的 ReLU 激活函数:

R(x)=max(0,x)
其中的图表看起来像

雷路

如果您查看函数的导数(图上的斜率),梯度是 1 或 0。在这种情况下,我们没有梯度消失问题或爆炸问题。并且由于神经网络的总体趋势越来越深,ReLU 成为激活的选择。

希望这可以帮助。