位置: IT常识 - 正文

聊聊关于图像分割的损失函数 - BCEWithLogitsLoss(图像可以分成哪些类别?)

编辑:rootadmin
聊聊关于图像分割的损失函数 - BCEWithLogitsLoss

目录

1. sigmoid + BCELoss

2. BCEWithLogitsLoss

3. gossip


推荐整理分享聊聊关于图像分割的损失函数 - BCEWithLogitsLoss(图像可以分成哪些类别?),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:图像的分类方法及具体的分类,图像的分类有哪些,图像的分类是哪几种,图像分为,图像分类常用方法,图像分类常用方法,图像分为,图像的分类方法及具体的分类,内容如对您有帮助,希望把文章链接给更多的朋友!

本篇文章是在做图像分割任务,关于损失函数的一些内容。

这里需要的损失函数是:BCEWithLogitsLoss() 就是:sigmoid + BCELoss

1. sigmoid + BCELoss

接下来通过例子来讲解,例如图像分割的时候,网络输出的预测图像是2*2 的矩阵,这里是input

这里先用sigmoid 将输出压缩到0-1之间

 这里要计算 predict 和 label 的损失之,假如这里label是下面的形式。label是一个二阶的单位阵,其中1为前景,0为背景 

根据BCELoss 的损失值计算公式:

其中 y 为真实值 , y(hat)为预测值

因此,首先计算 a11(左上角) 的值:1 * ln 0.6560 + (1-1)* ln(1-0.6560) = -0.4216

然后 a12 (右上角)的值:0 * ln 0.5859 + (1-0)*ln(1-0.5859) = -0.8816

a13 (左下角):0 * ln 0.6172 + (1-0)*ln(1-0.6172) = -0.9602

a14 (右下角):1 * ln 0.6802 + (1-1)*ln(1-0.6802) = -0.3854

将四个结果求均值,然后加个负号的结果为:(0.4216+0.8816+0.9602+0.3854)/ 4 = 0.6622

同 BCELoss 计算的损失值一样

聊聊关于图像分割的损失函数 - BCEWithLogitsLoss(图像可以分成哪些类别?)

2. BCEWithLogitsLoss

BCEWithLogitsLoss 就是 sigmoid + BCELoss 的结合,如果直接用 BCEWithLogitsLoss 可以得到相同的结果

3. gossip

损失函数是计算网络预测的值和真实值的偏差程度,所以我们希望损失值越小越好,这样才能保证predict 和 label 足够的接近

首先说一下二元分类数学表达式:

这里用的是数理统计的内容----极大似然估计,也就是网络预测的内容和真实值在什么情况下最大的相似,或者说这个参数的神经网络对图像分割准确的概率最大。

而求取似然函数的方法就是取对数,所以上面的二元分类会存在 log 函数,而似然函数是求取最大相似的概率。而在深度学习中,我们希望loss 越小越好,所以前面加一个负号

回到图像分割的内容,最后的神经网络需要将输出的图像变成二值图像,所以需要进行阈值判断。

例如下面这样

也就是将神经网络输出的图像矩阵,大于等于零的映射为前景,小于0的映射为背景。

有时候,会将预测的结果经过sigmiod ,然后在 0.5 的左右进行映射判断是一个意思

这里之前本人产生过很多误区,如果预测的时候不让他经过sigmoid,那么为什么计算loss的时候,让神经网络经过sigmoid呢?或者在预测的时候,就让预测值也变成二值图像,和label计算损失?

之前尝试这个想法,最后损失值出现了负数,原因如下:

因为 log 函数在 0-1 上是取的负值,这样才能保证每次计算BCELoss 的时候,才不会出现正数的原因。那么将这些负值累加,求平均,最后加个负号得到的就是需要的损失值。所以,这也是为什么在计算BCELoss 之前需要经过sigmoid 函数了

其次就是 log 函数的定义域是 0-正无穷 ,如果不用 sigmoid限制的话,那么很有可能会出现无法计算的情况。而经过sigmoid之后,值会被限制到 0-1之间,或者说0和1都是取不到的,因为是数学上的极限值。

这也就是为什么ln 里面的是 预测值 或者 1-预测值,才能保证计算始终可以进行下去

如果预测不经过sigmoid的话,假如神经网络有一个输出是-1的话,那么就没法进行 ln -1 的计算

如果将预测变成二值图像的话,那么 ln 0 就无法计算

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

上一篇:JS实战——轮播图(js轮播图实现思路)

下一篇:HTML小游戏25 —— HTML5拉杆子过关小游戏(附完整源码)(html在线小游戏)

  • 公司全额承担个税怎么申报
  • 城镇土地使用税纳税
  • 独资企业赚的钱全是老板的吗
  • 汇兑记载事项及使用注意事项
  • 转让旧固定资产可以开专票吗
  • 税负率是含税还是不含税
  • 在建期间土地使用税可以资本化吗
  • 小规模普票专票税率一样吗
  • 合同和发票计量一样吗
  • 销售金额计算抵增值税吗
  • 材料已入库,发票账单未到的会计分录
  • 冲销估价入账
  • 研发费用加计扣除留存备查资料
  • 显示器件属于什么设备
  • 三种类型的同期资料文档准备时间和提交税务机关时限有什么要求?
  • 土地使用税能计入土地转让的土地增值税清算吗
  • 实收资本增加印花税缴纳时间
  • 股票价格变化的原因
  • 长期驻扎外地的员工
  • 苹果手机电池低于多少需要更换
  • window最新漏洞
  • 小规模纳税人减征额怎么计算
  • 合伙企业 投资
  • 固定资产改扩建过程中,发生的人工费用
  • 个体工商户和个人商家的区别
  • 如何安装纯净win10
  • 不起眼的暴利小生意农村
  • 银行承兑汇票开出后多久可以签收
  • createsystem
  • windows 10 build 21354
  • 企业所得税计税依据
  • 单位话费谁负责交
  • 期货公司保证金怎么算的
  • 知乎如何更改名字
  • 笔记本屏幕坏点几个算正常
  • php怎么定义全局变量
  • 银行企业未达账户怎么办
  • upload靶场搭建
  • PHP:imagecreatefromxpm()的用法_GD库图像处理函数
  • 股东个人消费如何合理报销
  • 利息收入发票能抵扣吗
  • 预收账款增值税纳税义务
  • 独资子公司与母公司
  • sqlserver使用awe分配内存
  • 建筑工程承包合同
  • 自产的货物用于在建工程增值税
  • 增值税年末所有都要结平吗
  • 季中转一般纳税人申报了小规模后无法勾选认证
  • win7怎么配置
  • 单位收到社保补贴会计怎样处理
  • 房屋租赁合同印花税怎么计算
  • 应收账款项目期末余额怎么计算
  • 一般纳税人房租租赁费的税率
  • 支付投资者投入的款项
  • 房地产公司属于什么企业
  • 月末一次加权平均和移动加权平均的区别
  • 债权投资和其他应收款的区别
  • 购建时间是什么意思
  • mysql 创建root用户和普通用户及修改删除功能
  • mysql8.0免安装
  • windows2000开机视频
  • win7如何设置共享
  • bboy.exe进程是病毒吗 bboy进程安全吗
  • linux改变
  • win8电脑屏幕亮度调节在哪里设置
  • 命令行查看硬盘序列号
  • win7系统怎么设置桌面便签
  • ftp上传网站的步骤
  • cmd echo不换行
  • js拖拽div
  • 批量创建用户
  • python输出代码怎么写
  • jquery设置图片路径
  • JAVASCRIPT THIS详解 面向对象
  • android app安全
  • python的get
  • 河北地方税务局吴瑜
  • 税务纪检部门
  • 留抵税额退税政策2022
  • 在税盘上怎么申请电子发票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设