yolov3为啥把softmax转换为sigmoid

YOLOv3对类别预测的激活函数进行了修改,但是没有使用softmax。首先说明一下为什么不用softmax,原来分类网络中的softmax层都是假设一张图像或一个object只属于一个类别,但是在一些复杂场景下,一个object可能属于多个类,比如你的类别中woman和person这两个类,那么如果一张图像中有一个woman,那么你检测的结果中类别标签就要和woman和person两个类,这就是多标签分类。

所以YOLOv3用逻辑回归层来对每个类别做二分类。逻辑回归层主要用到sigmoid函数,该函数可以将输出约束在0到1的范围内,因此当一张图像经过特征提取后的某一类输出经过sigmoid函数约束后如果大于0.5,就代表属于该类,这样一个框就可以预测多个类别。代价函数用的是sigmoid的交叉熵。
softmax是多分类,把所有类别概率统一,求出一个最大的概率,也就是最后只有一个类别,无法多标签。
sigmoid把每个类别做二分类,大于某个阈值则是次类,每个输出的分类值不和其他比较,只确定自己是否是某个类别

  • 10
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值