问题 对于二分类问题,当训练集中正负样本非常不均衡时,如何处理数据以更好 地训练分类模型?

2023-11-19

为什么很多分类模型在训练数据不均衡会出现问题?本质原因是模型在训练时优化的目标函数和人们测试时使用的评价标准不一致。这种不一致可能是训练数据的样本分布和测试数据的不一致,例如训练时优化的整个训练集(正负比例1:99)的正确率,而测试的时候期望正负比例1:1
一般从两个方面处理数据:

  1. 基于数据的方法
    对数据进行重采样,使得原先的数据样本均衡。最简单的处理不均衡样本的方法是随机采样。采样一般分为过采样和欠采样。过采样是在样本少的类别中随机重复抽取多个样本。欠采样是从多数的样本集中随机抽取较少的样本。两种方法都有缺点,欠采样是容易丢失游泳信息。过采样是容易造成过拟合。
    为了解决上述问题,通常过采样时并不是简单的复制样本,而是采用一些方法生成新的数据。例如,SMOTE算法对少数类样本集Smin中每个样本x,从它在Smin中的K近邻中随机选一个样本y,然后在x,y连线上随机选取一点作为新合成的样本(根据需要的过采样倍率重复上述过程若干次),如图8.14所示。这种合成新样本的过采样方法可以降低过拟合的风险。
    对于欠采样,可以采用Informed Undersampling 来解决由于随机采样带来的数据丢失问题。
    (1)Easy Ensemble算法。每次从多数类随机抽取一个子集E,然后用E和小样本类别训练一个分类器;重复上述多次过程若干次,得到多个分类器。最终得到分类的结果将其融合
    (2)Balance Casacade算法。级联结构,在每一级中从多数类Smaj中随机抽取子集E,用E+Smin训练该级的分类器;然后将Smaj中能够被当前分类器正确判别的样本剔除掉,继续下一级的操作,重复若干次得到级联结构;最终的输出结果也是各级分类器结果的融合。
    在实际应用中,具体的采样操作可能并不总是如上述几个算法一样,但基本思路很多时候还是一致的。例如,基于聚类的采样方法,利用数据的类簇信息来指导过采样/欠采样操作;经常用到的数据扩充方法也是一种过采样,对少数类样本进行一些噪声扰动或变换(如图像数据集中对图片进行裁剪、翻转、旋转、加光照等)以构造出新的样本;而Hard Negative Mining则是一种欠采样,把比较难
    的样本抽出来用于迭代分类器。
  2. 算法的方法
    在样本不均衡时,也可以通过改变模型训练时的目标函数(如代价敏感学习中不同类别有不同的权重)来矫正这种不平衡性。损失函数改进。
    Focal loss属于第二种,通过在损失函数中加入因子,使得模型更加关注难以区分的样本,困难样本
    https://www.cnblogs.com/king-lps/p/9497836.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

问题 对于二分类问题,当训练集中正负样本非常不均衡时,如何处理数据以更好 地训练分类模型? 的相关文章

  • cocos命令生成apk

    1 配置好cocos命令中需要的andrid 环境命令 这些太普遍就不啰嗦 2 adt或许没有 zipalign exe 在生成 release版中需要这个文件来生成apk 路径D adt sdk tools 没有就下载一个 3 值得注意的
  • 深入了解NumPy 高级索引

    更多编程教程请到 菜鸟教程 https www piaodoo com 友情链接 好看站 http www nrso net NumPy 比一般的 Python 序列提供更多的索引方式 除了之前看到的用整数和切片的索引外 数组可以由整数数组
  • 分享 20 道关于 React 开发相关的面试题及答案

    React 面试可能你会觉得有点吓人 为了帮助您自信并准备好迎接下一次面试 我们列出了 20 个常见的 React 问题和参考答案 希望通过本篇文章的内容 能够帮助你重新温习你的 React 知识 复习重要概念 并为你的下一次面试做好更充分

随机推荐

  • 微信小程序并发的个人见解

    var http get url obj undefined gt var promise new Promise resolve reject gt wx request url baseUrl url method GET header
  • CSS 选择器

    h1 class center 标题居中 h1 p class center color 段落居中 颜色为红色 p 如果我们要在 html 元素中设置 css 样式 那么就需要需要在元素中设置选择器 即决定当前元素使用哪种样式 一般来说 常
  • django实训总结

    不知不觉中 一个学期又要结束了 上学期结束时的日子仿佛历历在目 没想到又迎来了一个学期的结束 这个学期依旧学习了python 让我继续加深了对python这门课的认识 实训让我觉得十分有意思 像打开了新的知识大门 Django结合了许多以前
  • 大学生竞赛项目

    编程 蓝桥杯 报名时间 10月 报名网址 https dasai lanqiao cn 中国软件杯大学生软件设计大赛 报名时间 5月 报名网址 http www cnsoftbei com 中国高校计算机大赛 报名时间 11月 报名网址 h
  • 钉钉开发之使用HTTP请求获取你的公网出口IP

    访问别人提供的网络服务时 对方出于安全性方面的考虑 可能会对请求的IP进行白名单限制 这时候需要提供机器的出口IP 比如目前微信公众号对于访问其接口需要先绑定开发者的服务器IP 这个IP实际上就是开发者服务器的出口IP 但是获取当前机器的公
  • 爬虫实例十四 多线程爬取一万张表情包

    import requests import threading import os from bs4 import BeautifulSoup from queue import Queue from threading import T
  • 第一个Java程序HelloWorld

    第一个Java程序HelloWorld 1 随便建一个文件夹用来存放代码 2 新建一个java文件 可以叫Hello java 后缀是 java的文件 3 用记事本打开写如下的代码 public class Hello public sta
  • 由Qt::BlockingQueuedConnection引起的关闭Qt主页面而后台仍有进程残留

    BUG 由Qt BlockingQueuedConnection引起的关闭Qt主页面而后台仍有进程残留 1 错误代码示例 首先我们看下下面的代码 可以思考一下代码的错误之处 BlockingQueueDeadLock h pragma on
  • MATLAB代码基于cnn-lstm的轴承寿命预测

    一种结合卷积神经网络 convolution neural networks 简称CNN 和长短时记忆 long short term memory 简称LSTM 神经网络的滚动轴承RUL预测方法 首先 对滚动轴承原始振动信号作快速傅里叶变
  • MMD Maximum Mean Discrepancy 最大均值差异

    reference http songcy net posts story of basis and kernel part 2 https zhuanlan zhihu com p 163839117 https www zhihu co
  • leetcode 查找

    解法1 直接使用STL class Solution public vector
  • 使用QSettings保存QT应用程序数据

    使用QSettings保存QT应用程序数据 简介 QSettings类提供了持久的跨平台应用程序设置 这些settings一般都是存在系统里的 比如windows一般都写在系统注册表或者写INI文件 mac系统一般都在XML文件里 那么按照
  • 如何创建项目

    1 MvvmLight框架的引用 引用 头部选项卡的 工具栏 NuGet 包管理器 管理解决方案的NuGet 程序包 搜索 MVVM Light MvvmLight 作者 Laurent Bugnion GalaSoft 勾选项目 Do n
  • Vue2组件封装 Vue组件封装

    写在前面 虽然是Vue2组件封装 主要的内容是记录一下我对封装组件的一些要点和我的看法 原学习视频来源于b站黑马从0到1封装组件库 什么是组件 都说Vue是组件化开发 确实有道理 别说按钮输入框这种组件了 就连每个页面 从本质来看也是一个个
  • 电源学习总结(六)——BUCK设计

    降压型开关电源 BUCK 是实际应用中较为广泛使用的电路 本文来详细说一说相关的设计细节 这里不考虑集成的开关电源 分控制和驱动 开关管 电感等部分讲 文章目录 基本结构 控制和驱动 开关管 自举电容 电感 电容 工作频率选择 其他注意事项
  • new做了哪些事?

    new做了哪些事 function Parent this name Person const p new Parent 创建一个空对象 将对象的原型 proto 指向构造函数的prototype原型对象 将构造函数的this指向当前对象
  • 使用xshell-ssh连接服务器,报错:Xshell Socket error Event: 32 Error: 10053

    XShell连接CentOS系统时 报出Xshell Socket error Event 32 Error 10053 错误 有点烦人 操作 用SSH工具连接linux电脑出现的问题 Read from socket failed Con
  • 多益网络_网络安全的未来日益激烈的信息控制之战

    多益网络 Over two decades ago Alphabet CEO Eric Schmidt noted The Internet is the first thing that humanity has built that h
  • 内核虚拟化KVM/QEMU——guest os,qemu,kvm的运行流程

    内核虚拟化KVM QEMU guest os qemu kvm的运行流程 这里主要介绍基于x86平台的Guest Os Qemu Kvm工作流程 如图 通过KVM APIs可以将qemu的command传递到kvm 1 创建VM syste
  • 问题 对于二分类问题,当训练集中正负样本非常不均衡时,如何处理数据以更好 地训练分类模型?

    为什么很多分类模型在训练数据不均衡会出现问题 本质原因是模型在训练时优化的目标函数和人们测试时使用的评价标准不一致 这种不一致可能是训练数据的样本分布和测试数据的不一致 例如训练时优化的整个训练集 正负比例1 99 的正确率 而测试的时候期