问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Sigmoid 函数及其导数推导

创作时间:
作者:
@小白创作中心

Sigmoid 函数及其导数推导

引用
CSDN
1.
https://blog.csdn.net/qq_22841387/article/details/141614059

Sigmoid 函数及其导数推导

1. 了解 Sigmoid 函数

Sigmoid 函数是神经网络中常用的激活函数,因其平滑的S形曲线和将输入压缩至 (0, 1) 的特性,在神经网络的激活函数中扮演着重要角色。其定义如下:

$$
\sigma(x) = \frac{1}{1 + e^{-x}}
$$

其中,e 是自然常数,约等于 2.718。Sigmoid 函数的输出范围为 (0, 1),这使它特别适合作为二分类问题中输出层的激活函数。

Sigmoid 函数的图形如下所示:

2. 应用微分规则

为了推导 Sigmoid 函数的导数,我们需要对它进行微分。根据 Sigmoid 函数的定义:

$$
\sigma(x) = \frac{1}{1 + e^{-x}}
$$

接下来,我们将对这个函数进行微分,以计算其导数。

3. 引入中间变量u

为了简化求导过程,我们可以先引入一个中间变量u,定义如下:

$$
u = 1 + e^{-x}
$$

这样,Sigmoid 函数可以重新表示为:

$$
\sigma(x) = \frac{1}{u}
$$

4. 对 Sigmoid 函数求导

现在,我们通过链式法则求解 Sigmoid 函数的导数。链式法则告诉我们,如果一个函数是复合函数的形式,那么其导数可以通过对各个部分分别求导并相乘来得到。

4.1 对u = 1 + e − x 求导

首先对u进行求导:

$$
\frac{du}{dx} = \frac{d}{dx}(1 + e^{-x}) = 0 - e^{-x} \cdot (-1) = e^{-x}
$$

4.2 对σ ( x ) = 1 u 求导

接下来对σ ( x ) 进行求导:

$$
\frac{d\sigma(x)}{du} = \frac{d}{du}\left(\frac{1}{u}\right) = -\frac{1}{u^2}
$$

4.3 应用链式法则

根据链式法则,Sigmoid 函数的导数可以表示为:

$$
\frac{d\sigma(x)}{dx} = \frac{d\sigma(x)}{du} \cdot \frac{du}{dx} = -\frac{1}{u^2} \cdot e^{-x}
$$

将u = 1 + e − x 代入,得到:

$$
\frac{d\sigma(x)}{dx} = -\frac{e^{-x}}{(1 + e^{-x})^2}
$$

5. 简化表达式

为了进一步简化这个表达式,我们注意到 Sigmoid 函数的定义和性质:

$$
\sigma(x) = \frac{1}{1 + e^{-x}}
$$

以及:

$$
1 - \sigma(x) = \frac{e^{-x}}{1 + e^{-x}}
$$

因此,导数可以重写为:

$$
\frac{d\sigma(x)}{dx} = \sigma(x) \cdot (1 - \sigma(x))
$$

6. 最终结果

最终我们得到了 Sigmoid 函数的导数公式:

$$
\frac{d\sigma(x)}{dx} = \sigma(x) \cdot (1 - \sigma(x))
$$

这个公式表明,Sigmoid 函数的导数不仅依赖于输入x,更依赖于 Sigmoid 函数本身的输出值σ ( x )。这个性质在反向传播算法中尤为重要,因为它允许我们在计算误差梯度时,可以直接利用前向传播的结果,从而简化计算并提高效率。

应用和意义

在神经网络中,Sigmoid 函数的导数用于反向传播算法中计算误差的梯度。这种函数的形式使得在更新权重时,不仅能够考虑当前的输入值,还可以利用 Sigmoid 函数的输出,从而在训练过程中更加高效。

此外,由于导数的形式与输出值直接相关,因此可以避免重复计算,在反向传播时极大地节省了计算资源。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号