原理
Sigmoid函数是深度学习中常用的一种激活函数,其数学表达式为: 该函数将输入值映射到(0, 1)区间内,常用于二分类问题中作为输出层的激活函数,模拟概率输出。

导数
Sigmoid函数的数学表达式为: 对Sigmoid函数求导,我们首先应用链式法则。Sigmoid函数的导数可以表示为: 为了简化这个过程,我们可以使用以下技巧:将原函数重写为,然后对其求导。根据链式法则,我们得到: 这可以进一步简化为: 注意到原始的Sigmoid函数,我们可以将其导数表示为: 这是因为: 因此,Sigmoid函数的导数具有一个非常简洁的形式: 这意味着一旦你知道了某个点的Sigmoid函数值,你就可以直接计算出该点的导数值,而无需再次执行指数运算。这种性质使得Sigmoid函数在神经网络中的反向传播算法中特别有用。
优点和缺点
优点
- 输出值介于0和1之间
- 非常适合用于二分类问题。
- 光滑且可导
- 函数曲线光滑,导数计算简单,易于理解。
- 可解释性强
缺点
- 梯度消失问题
- 当输入远离原点时,Sigmoid函数的梯度接近零,导致权重更新缓慢或停止更新,即所谓的“梯度消失”问题。
- 非零中心化输出
- Sigmoid函数的输出始终为正,这可能会影响后续层的训练。
- 计算量较大
- 由于指数运算的存在,相较于其他简单的激活函数(如ReLU),Sigmoid的计算成本较高。