当前位置: 首页 > news >正文

【漫话机器学习系列】142.Sigmoid 激活函数(Sigmoid Activation Function)

Sigmoid 激活函数详解

1. 概述

Sigmoid 激活函数(Sigmoid Activation Function)是一种常见的非线性激活函数,数学表达式如下:

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

该函数的值域介于 0 到 1 之间,因此在二分类任务中,它经常被用于神经网络的输出层,以表示某个类别的概率值。


2. Sigmoid 函数的性质
  • 平滑性:Sigmoid 函数是一个平滑的S型曲线,连续可导,确保了模型的可训练性。
  • 单调递增性:随着输入 xxx 增大,输出值也逐渐增大,但在极端值时变化趋于缓慢。
  • 值域:输出值始终位于 (0,1) 之间。
  • 中心对称性:关于点 (0, 0.5) 近似对称。

3. 数学推导

Sigmoid 函数的导数计算如下:

\frac{d\phi(x)}{dx} = \phi(x)(1 - \phi(x))dx

这意味着导数值也依赖于函数的输出值,在接近 0 和 1 的区域时,梯度非常小,接近于 0


4. 应用场景
  1. 二分类任务

    • 由于 Sigmoid 的输出范围为 (0,1),可以将其理解为概率值。
    • 例如,在二元逻辑回归(Logistic Regression)中,Sigmoid 用于计算类别 1 的概率:

      P(y=1 | x) = \frac{1}{1 + e^{-(wx + b)}}
    • 当输出> 0.5 时,通常预测为类别 1,否则预测为类别 0。
  2. 神经网络的激活函数

    • 早期的神经网络模型,如 MLP(多层感知机),常用 Sigmoid 作为激活函数。
    • 但由于梯度消失问题,在深度学习中,ReLU 逐渐取代了 Sigmoid。
  3. 概率预测

    • 在某些概率模型(如贝叶斯网络)中,Sigmoid 用于概率映射。

5. 缺点分析
  1. 梯度消失问题

    • Sigmoid 的梯度计算公式为: \phi(x)(1 - \phi(x))
    • 当 x 取值较大(正值或负值较大)时,梯度接近于 0,导致反向传播时权重更新缓慢,使得深层网络难以训练。
  2. 输出值非零均值

    • Sigmoid 的输出在 0 到 1 之间,非零均值会导致网络的输入分布偏移(偏置问题),影响模型收敛速度。
  3. 计算成本较高

    • Sigmoid 需要计算指数函数 e^{-x},相比 ReLU 等线性分段激活函数,计算较为昂贵。

6. 解决方案

由于上述缺点,在深度学习中,Sigmoid 逐渐被 ReLU(Rectified Linear Unit)Softmax 替代:

  • ReLU(Rectified Linear Unit):

    f(x) = \max(0, x)

    具有更好的梯度传播特性,避免了梯度消失问题,因此被广泛应用于深度神经网络。

  • Softmax:

    • 适用于多分类问题,它将输出值归一化为概率分布,使所有类别的概率和为 1

      \sigma(x_i) = \frac{e^{x_i}}{\sum_{j} e^{x_j}}
    • Softmax 常用于分类任务的输出层,如图像分类(Image Classification)

7. 结论

Sigmoid 作为一种经典的激活函数,因其良好的数学特性在二分类任务中广泛使用。然而,由于其存在梯度消失问题,在深度神经网络中已被 ReLU 替代。尽管如此,Sigmoid 在概率预测、逻辑回归、浅层神经网络等领域仍然具有重要价值。

相关文章:

  • Kubernetes 中metrics-server的采集周期,采集链路是什么样的?
  • 【Hestia Project 数据集】美国化石燃料 CO₂ 排放数据
  • 《论语别裁》第01章 学而(27) 无所适从的礼俗
  • uboot中的.config文件
  • superset部署记录
  • min_element用法
  • pytorch快速入门——手写数字分类GPU加速
  • python-数据类型字符串和列表
  • 【Qt】qrc机制介绍
  • Java实现【将Markdown格式文本转换为纯文本】
  • Python跳动的爱心
  • go数据结构笔记
  • Spring(5)——IoC DI
  • DevExpress WinForms 中 SwiftPlot 图表控件的使用指南
  • DeepSeek:技术教育领域的AI变革者——从理论到实践的全面解析
  • 修改 Macbook 终端窗口的显示信息
  • 【算法】用“龟兔赛跑”的思想原地移除元素
  • Go Context包详解与最佳实践
  • Vue学习笔记集--六大指令
  • f-string高级字符串格式化与string Template()
  • “三桶油”一季度净赚966亿元:业绩分化加剧,有人欢喜有人愁
  • 5月人文社科中文原创好书榜|巫蛊:中国文化的历史暗流
  • 对谈|《对工作说不》,究竟是要对什么说不?
  • 美乌签署协议建立美乌重建投资基金
  • AI世界的年轻人,如何作答未来
  • 中国海警位中国黄岩岛领海及周边区域执法巡查