神经网络在做二分类时,使用softmax还是sigmoid,做法其实有明显差别。由于softmax是对两个类别(正反两类,通常定义为0/1的label)建模,所以对于NLP模型而言(比如泛BERT模型),Bert输出层需要通过一个nn.Linear()全连接层压缩至2维,然后接softmax(pytorch的做法,就是直接接上torch.nn.CrossEntropyLoss);而sigmoid只对一...
多个sigmoid与一个softmax都可以进行多分类 如果多个类别之间是互斥的,就应该使用softmax,即这个东西只可能是几个类别中的一种。 如果多个类别之间不是互斥的,使用多个sigmoid。比如4个类别人声音乐、舞曲、影视原声、流行歌曲,一首歌曲可以来自影视原声,同时也包含人声。 为什么softmax使用在类别互斥,多个sigmoid使...
理论上二者没有本质上的区别,因为Softmax可以化简后看成Sigmoid形式。Sigmoid是对一个类别的“建模”,得到的结果是“分到正确类别的概率和未分到正确类别的概率”,Softmax是对两个类别建模,得到的是“分到正确类别的概率和分到错误类别的概率”。 说明二者还是有一定差异的。而Softmax和Sigmoid作为最常用的NN输出方...
二分类问题,sigmoid 和 softmax 的区别 陈半仙儿关注赞赏支持二分类问题,sigmoid 和 softmax 的区别 陈半仙儿关注IP属地: 浙江 2019.12.02 15:03:52字数75阅读1,210 感觉这个回答写的简短且李菊福。 图片.png 解释权归原作者所有。 原问答详见, https://www.zhihu.com/question/295247085 另, https://zhuanl...
据上所述,sigmoid函数,我们可以当作成它是对⼀个类别的“建模”。将该类别建模完成,另⼀个相对的类别就直接通过1减去得到;⽽softmax函数,是对两个类别建模。同样的,得到两个类别的概率之和也是1. 神经⽹络在做⼆分类时,使⽤softmax还是sigmoid,做法其实有明显差别。由于softmax是对两个类别(...