敬请关注 YOLO Vision 2025!
2025年9月25日
英国夏令时 10:00 - 18:00
混合活动
Yolo Vision 2024
词汇表

Sigmoid 函数

探索 Sigmoid 函数在 AI 中的强大功能。了解它如何实现非线性、辅助二元分类并推动 ML 进步!

Sigmoid 函数是机器学习 (ML)深度学习 (DL)中常用的激活函数。它是一个数学函数,产生一个特征性的“S”形或 sigmoid 曲线。它的主要目的是获取任何实数值并将其“压缩”到 0 到 1 之间的范围内。此输出通常被解释为概率,使 Sigmoid 在目标是预测结果可能性的模型中特别有用。通过将非线性引入神经网络 (NN),它使模型能够从数据中学习复杂的模式,否则简单的线性变换是不可能实现的。

作用与应用

Sigmoid 函数将输入映射到类似概率的输出的能力使其成为某些类型任务的基石。虽然它在现代深度神经网络的隐藏层中已变得不太常见,但它仍然是特定场景中输出层的标准选择。

主要应用

  • 二元分类:在二元分类问题中,目标是将输入分类为两个类别之一(例如,垃圾邮件或非垃圾邮件,存在疾病或不存在疾病)。 输出层的 Sigmoid 函数提供一个介于 0 和 1 之间的单个值,表示输入属于正类的概率。 例如,一个医学图像分析模型可以使用 Sigmoid 输出 0.9 的概率,表明肿瘤有 90% 的可能性是恶性的。
  • 多标签分类:与输入仅属于一个类别的多类别分类不同,多标签任务允许将输入与多个标签同时关联。例如,像目标检测模型(如Ultralytics YOLO)可能会分析图像并同时识别出“汽车”、“行人”和“红绿灯”。在这种情况下,Sigmoid函数会独立应用于每个输出神经元,从而给出每个可能标签的概率。您可以了解更多关于目标检测的演变
  • RNN 中的门控机制: Sigmoid 函数是 循环神经网络 (RNN)(例如 长短期记忆 (LSTM)门控循环单元 (GRU))的门控机制中的核心组件。这些门使用 Sigmoid 来控制信息的流动,决定在每个步骤中保留或丢弃哪些数据。这种机制对于学习序列数据中的长期依赖关系至关重要,如这篇关于 理解 LSTM 的详细博客文章中所述。

与其他激活函数的比较

区分 Sigmoid 函数与其他激活函数非常重要,以便了解何时使用它。

  • Softmax: Softmax 函数通常用于多类分类问题,其中每个输入恰好属于几个可能的类中的一个。与 Sigmoid 为每个输出计算独立概率不同,Softmax 计算所有类的概率分布,总和为 1。例如,对来自 MNIST 数据集的手写数字进行分类的模型将使用 Softmax 为从 0 到 9 的每个数字分配一个概率。
  • ReLU(修正线性单元): ReLU 已成为深度网络中隐藏层的实际标准。它在计算上更有效,并且有助于缓解梯度消失问题——Sigmoid 的一个重大问题,其中梯度在反向传播期间变得非常小,从而减慢或停止学习过程。您可以在这篇DeepLearning.AI 文章中阅读更多关于梯度挑战的信息。
  • SiLU (Sigmoid Linear Unit): SiLU 也被称为 Swish,是一种源自 Sigmoid 的更现代的激活函数。在更深的模型中,它通常比 ReLU 表现更好,包括高级计算机视觉架构。Ultralytics 模型通常利用高级激活函数来实现速度和准确性的更好平衡。

现代用法与可用性

虽然 Sigmoid 今天在隐藏层中不太常见,但它仍然是二元和多标签分类任务中输出层的标准选择。它还在处理顺序数据的复杂架构中构成门控机制的核心组件。

Sigmoid 在所有主要的 深度学习框架,包括 PyTorch (作为 torch.sigmoid) 和 TensorFlow (作为 tf.keras.activations.sigmoid) 的平台,例如 Ultralytics HUB 支持利用各种激活函数的模型,允许用户 训练部署 先进的计算机视觉解决方案。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入
链接已复制到剪贴板