术语表

软磁

了解 Softmax 如何在人工智能分类任务中将分数转化为概率,为图像识别和 NLP 的成功提供动力。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

在机器学习中,尤其是在神经网络中,Softmax 是一种基本的激活函数,通常用于多类分类任务模型的输出层。它的主要作用是将原始输出分数向量(通常称为 logits)转换为概率分布。这种转换可确保输出值为非负值,且总和为 1,从而可将其解释为模型对每个潜在类别的置信度或概率。

Softmax 的工作原理

Softmax 函数对神经网络前一层生成的实值分数向量进行运算。它首先对每个分数进行指数化处理,使所有数值都为正值。然后,它将每个指数化分数除以向量中所有指数化分数的总和,从而对这些指数化分数进行归一化处理。这一归一化步骤保证了输出值共同形成一个有效的概率分布,其中每个值代表输入属于特定类别的概率,所有概率之和等于 1。这样,模型的输出结果就很容易解释,便于决策。

软磁的应用

在必须将输入分配到几个相互排斥的类别中的情况下,Softmax 是不可或缺的。下面是一些突出的应用:

Softmax 与其他激活函数的比较

必须将 Softmax 与神经网络中使用的其他激活函数区分开来:

  • ReLU(整流线性单元)ReLU 及其变体(如Leaky ReLU)主要用于网络的隐藏层,以引入非线性,帮助模型学习复杂的模式。它们不会产生概率分布。
  • 西格码Sigmoid 函数输出一个介于 0 和 1 之间的值,通常被解释为概率。它通常用于二元分类问题(一个输出节点)或多标签分类问题(多个输出节点,每个节点独立处理)。与 Softmax 不同的是,多个类别的 Sigmoid 输出值之和不一定为 1。
  • Tanh(双曲切线)Tanh 与 Sigmoid 相似,但输出值介于 -1 和 1 之间,也用于隐藏层以引入非线性。

在模型评估中的作用

Softmax 生成的概率输出对于评估分类模型的性能至关重要。这些概率用于计算准确率、精确度、召回率F1 分数等关键指标。这些指标可以帮助我们深入了解模型的性能,为超参数调整和整体模型评估等过程提供指导。像 PyTorchTensorFlow等框架提供了 Softmax 函数的高效实现。

总之,Softmax 是多类分类模型架构中的一个重要组成部分,可以在从计算机视觉到 NLP 等不同的人工智能领域实现可解释的概率输出。为了管理采用 Softmax 的模型的生命周期,Ultralytics HUB等平台提供了用于训练、部署和监控的工具。

阅读全部