动态加权平衡损失:深度神经网络的类不平衡学习和置信度校准

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、研究目的
  • 二、研究方法
    • 创新点
    • 处理类不平衡的大多数方法
    • 交叉熵损失函数
    • Brier Score
  • 三、DWB Loss
  • 总结


前言

Dynamically Weighted Balanced Loss: ClassImbalanced Learning and Confidence Calibration of Deep Neural Networks
下载地址:DOI: 10.1109/tnnls.2020.3047335


一、研究目的

解决深度学习中的类分布不平衡问题,提出了一种基于类平衡动态加权损失函数的类再平衡策略,其中权重是根据类频率和地面真实类的预测概率分配的。动态加权方案根据预测分数自适应其权重的能力允许模型调整具有不同难度的实例,从而导致由硬少数类样本驱动的梯度更新。在网络入侵检测(CICIDS2017数据集)和医学成像(ISIC2019数据集)的不同应用中对高度不平衡的数据进行的实验显示出强大的泛化能力。支持上级经验性能的理论结果提供了理由的有效性,建议动态加权平衡(DWB)损失函数。

二、研究方法

我们提出了一种动态策略来分配类权重,重点放在难以训练的实例上,并提出了一种称为动态加权平衡(DWB)损失的新型损失函数,该损失函数能够自然处理类不平衡,同时还可以提高校准性能。为了说明所提出的方法的一般性,在网络入侵检测和皮肤病变诊断中具有挑战性的现实应用进行了实验。

创新点

分配的权重不是固定的权重方案,而是根据数据实例的预测难度自适应其规模;我们将类别不平衡和置信度估计的可靠性联系起来。据我们所知,以前的研究还没有解决这两个问题在一个统一的方法在DL的上下文中。
因此,本文提出了以下主要创新:
1)基于类再平衡策略的可微分损失公式,其中权重在训练过程中动态变化,
2)允许学习已经良好校准的模型的框架,从而同时解决DNN中的类不平衡和类成员概率的可靠性。

处理类不平衡的大多数方法

处理类不平衡的大多数方法可以分为两类:数据级方法和算法级方法。

数据级方法:通过采用重新分配策略来平衡数据集,从而改变原始数据中的类分布。

  1. 随机过采样:复制少数类中的实例来处理类不平衡,从而增加少数类。
  2. 随机欠采样: 随机删除多数类中的实例以匹配少数类的基数。
  3. 抽样方法来人工平衡数据。

过采样可能会导致过拟合,并可能加重计算负担,而欠采样可能会消除有用的信息,

算法级方法:算法级方法涉及调整分类器,并可进一步分为集成方法和成本敏感方法。

  1. 集成方法:最广泛使用的方法包括bagging和boosting基于集成的方法。
  2. 代价敏感学习:重新缩放数据,通过为不同类别的训练示例分配不同的权重(重新加权),重新分配训练实例,或基于其误分类成本移动决策阈值来执行

不同于以前的方法,需要手工制作的成本矩阵,分配固定的权重,或涉及算法修改,我们提出了一个损失函数,其中包含在训练过程中调整的动态加权因子,以解决不平衡数据的训练偏差,这也会导致校准良好的置信度估计。它不需要任何额外的超参数调优,可以迅速应用于任何DNN架构。

交叉熵损失函数

参考文章
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Brier Score

用于衡量概率校准的一种评价函数。
包含了三部分:均方误差(mean squared error, MSE)、方差(variance)和熵(entropy)

三、DWB Loss

DWB Loss 结合了动态加权的交叉熵损失项和正则化组件,以及对类别权重的灵活设置,旨在更好地处理严重倾斜的类别分布,使得模型能够更好地适应不平衡的情况,并获得更好的训练效果。

引入了一个基于动态加权的分类器目标函数,该目标函数基于地面真值类的预测概率,为难以训练的实例分配更高的权重,我们称之为DWB损失。为方便起见,设fj(Xi ; θ)用pij表示。因此,pij是实例Xi的类j的预测概率。

所提出的损失函数由两个项组成:动态加权CE和等于Brier评分(BS)熵的正则化分量,其可以被认为是导致更好校准的可靠性分量。

在这里插入图片描述

  • ( n ) 是训练样本的数量
  • ( c ) 是类别的数量
  • ( w_j ) 是类别 ( j ) 的权重
  • ( p_{ij} ) 是样本 ( i ) 属于类别 ( j ) 的预测概率
  • ( y_{ij} ) 是样本 ( i ) 的标签,使用了 one-hot 编码

第一项在这里插入图片描述
交叉熵损失项,其中 yij log(pij)表示模型对类别 (j) 的预测与实际标签的交叉熵损失,乘以 (w_j (1-p_{ij})) 来调整权重,使得难以分类的样本获得更高的权重。
第二项
在这里插入图片描述
是正则化组件,它等于 Brier score 的熵,用于提高模型的校准性能。

类权重wj可以被处理为通过交叉验证从数据中学习的超参数,或者与类频率的倒数成比例地设置。我们设置wj等于多数类的类频率和类频率nj(在训练数据集上计算)的对数比,如下所示:
在这里插入图片描述

类别权重设置:

类别权重 (w_j) 可以根据实际情况进行设置,文中提到的一种设置方法是将 (w_j) 设为最多类别的频率与类别 (j) 的频率的对数比例加1。这样,对于具有 (w_j) 类别代价的类别 (j),其分类错误将比具有权重为1的多数类别的错误受到 (w_j) 倍的惩罚。
总体来说,DWB Loss 结合了动态加权的交叉熵损失项和正则化组件,以及对类别权重的灵活设置,旨在更好地处理严重倾斜的类别分布,使得模型能够更好地适应不平衡的情况,并获得更好的训练效果。


总结

DWB损失函数通过动态加权的方式,更注重难以训练的实例,从而提高模型在类别不平衡和难易样本实例方面的性能表现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/732798.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年3月10日 十二生肖 今日运势

小运播报:2024年3月10日,星期日,农历二月初一 (甲辰年丁卯月癸酉日),法定节假日。 红榜生肖:龙、牛、蛇 需要注意:鸡、狗、兔 喜神方位:东南方 财神方位:…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Image)

Image为图片组件,常用于在应用中显示图片。Image支持加载PixelMap、ResourceStr和DrawableDescriptor类型的数据源,支持png、jpg、jpeg、bmp、svg、webp和gif类型的图片格式。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容&am…

作业 字符数组-统计和加密

字串中数字个数 描述 输入一行字符&#xff0c;统计出其中数字字符的个数。 输入 一行字符串&#xff0c;总长度不超过255。 输出 输出为1行&#xff0c;输出字符串里面数字字符的个数。 样例 #include <iostream> #include<string.h> using namespace std; int m…

AI绘画提示词案例(宠物

目录 1. 雪地猫猫&#xff1a;1.1 提示词&#xff1a;1.2 效果&#xff1a; 2. 趴地猫猫&#xff1a;2.1 提示词&#xff1a;2.2 效果&#xff1a; 3. 长城萨摩耶&#xff1a;3.1 提示词&#xff1a;3.2 效果&#xff1a; 4. 沙发猫猫&#xff1a;4.1 提示词&#xff1a;4.2 效…

Mysql:如何自定义导出表结构

为了方便将mysql表结构信息快速录入到word或Excel表格中&#xff0c;最终实现如下效果&#xff1a; 对于word,则可将Excel表格复制粘贴即可。 废话不多少&#xff0c;开干。 准备准建&#xff1a;navicat 或sqlyog 第一步&#xff1a;编辑sql&#xff0c;如&#xff1a; SE…

HTML 01

1.html使用标签来表达 结束标签多一个/ <strong>文字内容</strong> <hr> 包裹内容就是双标签&#xff0c;换行等是单标签 浏览器中显示内容&#xff1a; 2.html的骨架是网页模板 <!DOCTYPE html> <html lang"en"> <head>&l…

Full GC的认识、预防和定位

(/≧▽≦)/~┴┴ 嗨~我叫小奥 ✨✨✨ &#x1f440;&#x1f440;&#x1f440; 个人博客&#xff1a;小奥的博客 &#x1f44d;&#x1f44d;&#x1f44d;&#xff1a;个人CSDN ⭐️⭐️⭐️&#xff1a;传送门 &#x1f379; 本人24应届生一枚&#xff0c;技术和水平有限&am…

【leetcode】429. N 叉树的层序遍历

题目描述 给定一个 N 叉树&#xff0c;返回其节点值的_层序遍历_。&#xff08;即从左到右&#xff0c;逐层遍历&#xff09;。 树的序列化输入是用层序遍历&#xff0c;每组子节点都由 null 值分隔&#xff08;参见示例&#xff09;。 示例 1&#xff1a; 输入&#xff1a;…

使用Python编写简单学生管理系统

学完python基础&#xff0c;把学过的知识运用起来做一个简单的学生管理系统 1、需求分析 需求&#xff1a;进入系统显示系统功能界面&#xff0c;功能如下&#xff1a; ① 添加学员信息 ② 删除学员信息 ③ 修改学员信息 ④ 查询学员信息(只查询某个学员) ⑤ 遍历所有学…

【蓝桥杯】蓝桥杯算法复习(一)

&#x1f600;大家好&#xff0c;我是白晨&#xff0c;一个不是很能熬夜&#x1f62b;&#xff0c;但是也想日更的人✈。如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&#xff0c;关注一下&#x1f440;白晨吧&#xff01;你的支持就是我最大的动力&#xff01;&#x1f4…

Vue源码系列讲解——过滤器篇【三】(解析过滤器)

目录 1. 前言 2. 在何处解析过滤器 3. parseFilters函数分析 4. 小结 1. 前言 在上篇文章中我们说了&#xff0c;无论用户是以什么方式使用过滤器&#xff0c;终归是将解析器写在模板中&#xff0c;既然是在模板中&#xff0c;那它肯定就会被解析编译&#xff0c;通过解析用…

【自动化】PyoutuGUI操作键鼠

自动化之PyoutuGUI操作键鼠 文章目录 自动化之PyoutuGUI操作键鼠  &#x1f449;引言&#x1f48e;一、初始化环境二、键盘鼠标事件三、消息框功能四、案例实战自动登录WPS 五、问题解决 &#x1f449;引言&#x1f48e; 学习的最大理由是想摆脱平庸&#xff0c;早一天就多一…

EF类和E/F类功率放大器(能量转换器)的波形推导和理想仿真--基于Matlab和ADS

EF类和E/F类功率放大器&#xff08;能量转换器&#xff09;的波形推导和理想仿真–基于Matlab和ADS 参考论文&#xff1a;Modeling and Analysis of Class EF and Class E/F Inverters With Series-Tuned Resonant Networks(2016) 这篇文章的思路和MTT的文章A Generalized Hi…

存储引擎的简介

简介&#xff1a; 1.在mysql存储引擎可以说就是指表的类型&#xff0c;可以称为表处理器&#xff0c;以表的形式存储。 2.他的功能就是接收上层传下来的指令&#xff0c;然后对表中的数据进行提取写入操作。 目的&#xff1a; 为了管理方便&#xff0c;我们把连接管理&#xf…

如何在一个pycharm项目中创建jupyter notebook文件,并切换到conda环境中

1、第一步可以直接在pycharm项目中创建jupyter notebook文件 2、假若想要切换成pytorch环境做实验例子&#xff0c;会发现报这个错误 Jupyter server process exited with code 1 C:\Users\12430\.conda\envs\pytorch3.11\python.exe: No module named jupyter在这里&#xff…

Canvas笔记05:绘制文本,可视化图表中最常用

hello&#xff0c;我是贝格前端工场&#xff0c;最近在学习canvas&#xff0c;分享一些canvas的一些知识点笔记&#xff0c;本期分享canvas绘制文本的知识&#xff0c;欢迎老铁们一同学习&#xff0c;欢迎关注&#xff0c;如有前端项目可以私信贝格。 Canvas绘制文本是指使用H…

【粉丝福利第四期】:《低代码平台开发实践:基于React》(文末送书)

文章目录 前言一、React与低代码平台的结合优势二、基于React的低代码平台开发挑战三、基于React的低代码平台开发实践四、未来展望《低代码平台开发实践&#xff1a;基于React》五、粉丝福利 前言 随着数字化转型的深入&#xff0c;企业对应用开发的效率和灵活性要求越来越高…

PyTorch之完整的神经网络模型训练

简单的示例&#xff1a; 在PyTorch中&#xff0c;可以使用nn.Module类来定义神经网络模型。以下是一个示例的神经网络模型定义的代码&#xff1a; import torch import torch.nn as nnclass MyModel(nn.Module):def __init__(self):super(MyModel, self).__init__()# 定义神经…

运维打工人,兼职跑外卖的第二个周末

北京&#xff0c;晴&#xff0c;西南风1级。 前序 今天天气还行&#xff0c;赶紧起来&#xff0c;把衣服都洗洗&#xff0c;准备准备&#xff0c;去田老师吃饭早饭了。 一个甜饼、一个茶叶蛋、3元自助粥花费7.5。5个5挺吉利的。 跑外卖的意义 两个字减肥&#xff0c;记录刚入…

基于最小二乘递推算法的系统参数辨识matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于最小二乘递推算法的系统参数辨识。对系统的参数a1&#xff0c;b1&#xff0c;a2&#xff0c;b2分别进行估计&#xff0c;计算估计误差以及估计收敛曲线&#…