跳到主内容
快讯直播
AI智模界
AI 词典

Sigmoid 与多标签分类:别把互斥当成独立

一句话定义:Sigmoid 是一个把任意实数压到 0 到 1 之间的函数,在分类模型里常被放在输出层,为每一个标签单独算一次“成立的概率”——这正是多标签分类(multi-label classification)的标准做法。

原理:四个独立门卫,不是一个裁判

打个比方。一篇稿子要判断是否属于“科技”“财经”“体育”“娱乐”四个栏目。用 Sigmoid,相当于门口站了四个互不通信的门卫,每人手里只有一张考卷:这篇像不像我这一类?他们各自打分,谁也不参考别人的结论。于是可能得到“科技 0.9、财经 0.7、体育 0.05、娱乐 0.02”——同一篇文章既是科技又是财经,完全合理。

数学上 σ(z) = 1 / (1 + e^(−z)),把每个标签的原始分数单独压成概率,标签之间互不影响。训练时每个标签各算一份二元交叉熵(binary cross-entropy),再把损失相加或平均。

和相邻概念的区别:AI 词典:Softmax">Softmax 是分蛋糕

Softmax 处理的是另一件事:把一组互斥选项的分数归一化成总和为 1 的分布,输出的是“相对概率”。它像一个只能选出一个冠军的裁判,多给科技一点,就必须少给财经一点。

Sigmoid(多标签)Softmax(互斥多分类)
输出含义每个标签各自的概率互斥选项的相对概率,总和为 1
标签关系互不影响,可同时成立此消彼长,只能选一个
损失函数每标签一份二元交叉熵一份多类交叉熵
决策方式自己定阈值取最大项
典型场景一张图里既有猫又有沙发这张图是猫、狗还是鸟

用错就是指标注水

最常见的坑是把互斥任务按 Sigmoid 训练:模型会给好几个类别都输出接近 1 的分数,然后有人把“每个类别都预测得挺准”写进汇报——其实模型没学会区分,只学会了“全都举手”。反过来,多标签任务误用 Softmax,会强迫模型在“猫”和“狗”之间二选一,召回率被系统性压低,还很难查出原因。

还有个细节:Sigmoid 输出的几个概率加起来不等于 1,别把它当概率分布去算期望或做“互斥解释”。

实际意义

动手前先问一句:一个样本能不能同时属于多个类?能,用 Sigmoid;不能,用 Softmax。用 Sigmoid 就得自己定阈值,而阈值该按业务成本调——漏检贵还是误报贵,在验证集上定,别在测试集上反复试。评估也别只看 accuracy,用每个标签的 precision / recall / F1(或 mAP)更实在;正负样本悬殊时给正样本加权。不同框架的默认实现细节以官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。