位置: IT常识 - 正文

损失函数 | BCE Loss(Binary CrossEntropy Loss)(损失函数是什么)

编辑:rootadmin
损失函数 | BCE Loss(Binary CrossEntropy Loss) BCE(Binary CrossEntropy)损失函数图像二分类问题--->多标签分类Sigmoid和Softmax的本质及其相应的损失函数和任务多标签分类任务的损失函数BCEPytorch的BCE代码和示例总结图像二分类问题—>多标签分类

推荐整理分享损失函数 | BCE Loss(Binary CrossEntropy Loss)(损失函数是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:损失函数有哪几种,损失函数的作用是,损失函数有哪几种,损失函数公式,损失函数有哪几种,损失函数越小越好吗,损失函数的作用是,损失函数在神经网络中的作用,内容如对您有帮助,希望把文章链接给更多的朋友!

二分类是每个AI初学者接触的问题,例如猫狗分类、垃圾邮件分类…在二分类中,我们只有两种样本(正样本和负样本),一般正样本的标签y=1,负样本的标签y=0。比如下边这张图片,判断里边有没有人。 那么这张图片的标签为y=1,这时我们就根据标签y=1来设计模型的输出就行了。因为二分类只有正样本和负样本,并且两者的概率之和为1,所以不需要预测一个向量,只需要输出一个概率值就好了。损失函数一般是输出经过sigmoid激活函数之后,采用交叉熵损失函数计算LOSS,即             LOSS=−(ylog(p(x)+(1−y)log(1−p(x))LOSS=-(ylog(p(x)+(1-y)log(1-p(x))LOSS=−(ylog(p(x)+(1−y)log(1−p(x))

其中p(x)是模型输出,y是真实标签。

Sigmoid和Softmax的本质及其相应的损失函数和任务

我看到过的关于Sigmoid激活函数和Softmax函数的比较好的解释,分享给大家: 看到上边的解释,我们应该心里会有些许明朗。为何二分类采用Sigmoid激活函数和BCE损失函数;多分类,我们可以采用Softmax激活函数和多类别交叉熵损失函数。;对于多标签分类,采用Sigmoid激活函数和BCE损失函数了。

损失函数 | BCE Loss(Binary CrossEntropy Loss)(损失函数是什么)

在这里不禁感慨,深度学习也不完全是炼丹,损失函数、激活函数、模型结构等都是大牛们结合统计学和目标场景设计的。

多标签分类任务的损失函数BCE

现在我换一个问题,这张图片中有没有人,有没有手机(多标签分类),那这时的标签就有四种情况了:

标签含义(0, 0)图中既没人,也没手机(0, 1)图中没人,但是有手机(1, 0)图中有人,但是没手机(1, 1)图中既有人,也有手机

以此类推,还可以扩展到2n2^n2n种情况(n类别分类)。很明显,问题已经由普通的二分类变成了多标签分类。多标签分类问题的输出和损失函数应该怎么定义呢? 因为多标签分类中有多个类别,不能单纯的输出一个值,而是应该输出一个向量,并且也不能继续将输出简单的用Softmax归一化到[0, 1]的概率值,且各类别的概率相加为1。**因为各类别之间不是互斥的,允许同时出现。**我们可以用sigmoid激活函数分别将输出向量的每个元素转换为概率值。 对于损失函数,比较简单的思路就是对输出向量的每个元素单独使用交叉熵损失函数,然后计算平均值。这就是我们今天要说的BCE。看一下Pytorch官方源码的实现方式就知道了。

Pytorch的BCE代码和示例

举个例子,假如模型输出

>>> import torch>>> output = torch.randn(3,3)>>> outputtensor([[-0.8858, 0.3241, 0.9456], [ 1.4887, 1.8076, -0.0565], [-1.6529, -1.8539, 0.6756]])

首先将输出向量中的所有元素转换为[0, 1]之间的概率值

>>> active_func = nn.Sigmoid()>>> output = active_func(output)>>> outputtensor([[0.2920, 0.5803, 0.7202], [0.8159, 0.8591, 0.4859], [0.1607, 0.1354, 0.6627]])

假设输入数据对应的标签为

>>> target = torch.FloatTensor([[0,1,1],[1,1,1],[0,0,0]])>>> targettensor([[0., 1., 1.], [1., 1., 1.], [0., 0., 0.]])

使用BCE损失函数计算LOSS

>>> loss = nn.BCELoss()>>> loss = loss(output, target)>>> losstensor(0.4114)总结

经过上边的分析,BCE主要适用于二分类的任务,而且多标签分类任务可以简单地理解为多个二元分类任务叠加。所以BCE经过简单修改也可以适用于多标签分类任务。使用BCE之前,需要将输出变量量化在[0,1]之间(可以使用Sigmoid激活函数)。上边我们也深度刨析了Sigmoid和Softmax两种激活函数,探究其统计学本质,Sigmoid的输出为伯努利分布,也就是我们常说的二项分布;而Softmax的输出表示为多项式分布。所以Sigmoid通常用于二分类,Softmax用于多类别分类。

本文链接地址:https://www.jiuchutong.com/zhishi/297850.html 转载请保留说明!

上一篇:纯css实现自定义弹窗(css 自定义变量)

下一篇:HTML作业04——简易美食页面(html作业做网页)

  • 佳能怎么退出短片模式(佳能相机怎么退出)

    佳能怎么退出短片模式(佳能相机怎么退出)

  • realme gt neo2支持内存扩展吗(realmegtneo2支持光学防抖吗)

    realme gt neo2支持内存扩展吗(realmegtneo2支持光学防抖吗)

  • 闲鱼违规几次会封号(闲鱼上有一次被记录违规之后有影响吗)

    闲鱼违规几次会封号(闲鱼上有一次被记录违规之后有影响吗)

  • 苹果xr只有一个喇叭响 (苹果xr只有一个卡槽吗)

    苹果xr只有一个喇叭响 (苹果xr只有一个卡槽吗)

  • 华为手机小于号怎么打(华为手机大于等于号怎么打出来)

    华为手机小于号怎么打(华为手机大于等于号怎么打出来)

  • 5g比wifi快吗(5g网速比wifi快吗)

    5g比wifi快吗(5g网速比wifi快吗)

  • 手机资料转移到新手机用什么软件(手机资料转移到新手机app)

    手机资料转移到新手机用什么软件(手机资料转移到新手机app)

  • 物联网卡正确使用方法(物联网卡使用方法)

    物联网卡正确使用方法(物联网卡使用方法)

  • 照片打不开显示内存已满怎么回事(照片打不开显示内存不足怎么办)

    照片打不开显示内存已满怎么回事(照片打不开显示内存不足怎么办)

  • soul隐身发布瞬间好友能看到吗(soul隐身发瞬间其他人在广场能看到吗)

    soul隐身发布瞬间好友能看到吗(soul隐身发瞬间其他人在广场能看到吗)

  • 开飞行模式别人打电话有记录吗(开飞行模式别人打微信电话是什么状态)

    开飞行模式别人打电话有记录吗(开飞行模式别人打微信电话是什么状态)

  • qq总被冻结是什么原因(qq总被冻结是什么原因和手机有关系吗)

    qq总被冻结是什么原因(qq总被冻结是什么原因和手机有关系吗)

  • 抖音一万音浪主播可以分到多少(抖音一万音浪主播拿多少)

    抖音一万音浪主播可以分到多少(抖音一万音浪主播拿多少)

  • 优化驱动器有坏处吗(优化驱动器有害还是有益)

    优化驱动器有坏处吗(优化驱动器有害还是有益)

  • ipad的上市时间顺序(ipad上市时间2022)

    ipad的上市时间顺序(ipad上市时间2022)

  • iphone开机激活卡在软件更新(苹果激活卡住)

    iphone开机激活卡在软件更新(苹果激活卡住)

  • 手机输入法乱了怎么办(手机输入法乱了怎么回事)

    手机输入法乱了怎么办(手机输入法乱了怎么回事)

  • 京东注销账号审核多久(京东账号注销30天后悔期如何恢复)

    京东注销账号审核多久(京东账号注销30天后悔期如何恢复)

  • wifi信号强度多少正常(wifi信号强度多少正常bps)

    wifi信号强度多少正常(wifi信号强度多少正常bps)

  • iphone11摄像头旁边那个是啥(iphone11摄像头旁边的黑点)

    iphone11摄像头旁边那个是啥(iphone11摄像头旁边的黑点)

  • 微信出现matrix怎么去掉

    微信出现matrix怎么去掉

  • 淘宝3心要多少单(淘宝3心多少分)

    淘宝3心要多少单(淘宝3心多少分)

  • 手机电话图标没了咋办(手机电话图标没了怎么恢复)

    手机电话图标没了咋办(手机电话图标没了怎么恢复)

  • vivoz3闪充怎么设置(vivoy3闪充设置)

    vivoz3闪充怎么设置(vivoy3闪充设置)

  • 苹果充电头功率(苹果充电头功率多大)

    苹果充电头功率(苹果充电头功率多大)

  • macbook截图快捷键如何修改?(macbook截图快捷键没反应)

    macbook截图快捷键如何修改?(macbook截图快捷键没反应)

  • 网上申报办税
  • 农产品进项税额抵扣最新政策
  • 法人买社保不领钱可以吗
  • 图书属于什么经济类别
  • 公司收到待报解预算收入退的款是什么
  • 农副产品增值税免税政策
  • 母公司与子公司的区别
  • 发票只能全部冲开吗
  • 资产损失原因
  • 公司可以用现金付房租吗
  • 房屋预售交款怎么交
  • 企业合并怎么做账
  • 合作社增值税免税项目
  • 受托加工费直接计入生产成本
  • 小规模个人所得税怎么申报
  • 应收账款计提坏账准备是谨慎性原则吗
  • 上月多计收入,本月如何调整?
  • 企业利用个体户走账
  • 一个月计提2个月工资
  • 已经开具的增值发票
  • 发票专用章管理办法
  • 长期股权投资账务处理
  • 企业公益救济性工作总结
  • 应收账款抹零会计分录
  • 企业专票抵税
  • 管理费用劳务费包括什么
  • 微信转账的手续费规则
  • 普通发票可以部份红冲吗?
  • 优先股的发行主体
  • 房地产企业的沙盘模型制作费会计处理
  • 深度科技win10
  • 两台电脑文件共享,显示没有访问权限
  • 企业办理税务
  • 如何在你的电脑上截图
  • 补充养老保险和养老保险的区别
  • php类的作用
  • 申报表已申报未交款后作废
  • react组件库有哪些
  • ijk解码是什么意思
  • mysql水平拆分实现
  • 已认证发票被作废
  • 前一个月开的发票怎么查
  • 公司购进软件的账务处理
  • 出口生产型企业
  • 发票说明格式
  • 农业用肥尽量不选择
  • 小规模购进原材料可以抵扣税金吗
  • 捐赠会计和税法上各怎么记录
  • 收到返款计入什么科目
  • 红字发票抵扣联和发票联要给对方吗
  • 个贷系统平账专户A户付款会计分录
  • 外经证是干什么用的
  • 会计信息不采集可以考初级吗
  • 支票取钱不是本人要带什么
  • sql语句优化之用是什么
  • linux如何读
  • 大学里学分不满不让毕业是真的吗
  • 苹果的mac系统
  • 苹果macbook怎么切换系统
  • solaris安装教程
  • 神之浩劫能玩吗
  • 电脑开机时出现红色三角形
  • ubuntu安装chia
  • win 8系统怎么样
  • win7微软账户
  • win8 设置
  • three.js菜鸟教程
  • shell脚本自动化
  • 安卓里面怎么调用方法
  • nodejs搭建本地资源服务器
  • jquery给td设置内容
  • JavaScript中的this
  • jquery的实现原理
  • 陕西办事app
  • 车价36万保险一般多少钱
  • 企业年金个人缴费比例越高越好吗
  • 湖北地税局官网网上服务厅
  • 年度纳税申报基础信息表怎么填
  • 区地税局会不会分到乡镇
  • 企业税收筹划的基本目标
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设