(1)想办法获取更多的数据。

前段时期的数据,较多呈现红色部分的数据较少呈现蓝色部分的数据;后半时期,产生数据的趋势发生变化,较多呈现蓝色部分数据较少呈现红色部分数据。所以,想办法获取更多的数据。

(2)换个评判方式

通常我们会用精度(Accuracy)和错误率(error)来评价模型的好坏。这两个指标在数据不均衡时,均不能客观的衡量模型。

解决办法:

通过Confusion Matrix,计算查准率(Precision)和查全率(recall),然后再计算F1 Score。这种衡量模型的标准可以成功的区分数据不均衡问题,并且能给出模型客观的评价。

对模型评价标准不熟悉的,可以看我之前的文章:

【错误率、精度、查准率、查全率和F1度量】详细介绍

https://blog.csdn.net/program_developer/article/details/79937291

ROC曲线和AUC面积理解

https://blog.csdn.net/program_developer/article/details/79946787

(3)重组数据

这种方式简单粗暴!!!!

1. 过采样(oversampling):复制较少的样本,使它和较多类样本差不多数量。

这样做的缺点:过采样法增加了很多较少类的样本,其训练集大于初始训练集,导致训练模型的时间开销较多。并且,过采样法不能简单地对初始较少类样本进行重复采样,否则会招致严重的过拟合。

解决办法:

过采样法的代表性算法是:SMOTE【Chawla et al.,2002】,该算法通过对训练集里的少类进行插值来产生额外的少类样本。

2. 欠采样(undersampling):删除较多数量类的样本,使它和较少类样本数量一致。

这样做的缺点:欠采样法如果随机的丢弃多类的样本,可能丢失一些重要的信息。

解决办法:

欠采样法的代表性算法是:EasyEnsembale【Liu et al.,2009】,该算法是利用集成学习机制,将较多类样本划分为若干个集合供不同学习器使用,这样对每个学习器来看都进行了欠采样,但在全局来看却不会丢失重要的信息。

(4)使用其他的机器学习方法

举个例子:

比如说,神经网络面对不均衡数据就变得束手无策,但是决策树它不会受到样本不均衡的影响。

(5)修改算法

对于Sigmoid激活函数,如果样本均衡的时候,它的阈值一般设置为0.5比较合适;如果样本不均衡的时候,我们可以设置更大的阈值,让算法比较有把握的时候,在输出类别较少的样本类。

观看视频笔记:https://www.bilibili.com/video/av16009140?spm_id_from=333.338.__bofqi.21

处理不均衡数据(Dealing with imbalanced data)简洁版相关推荐

  1. 8大策略让你对抗机器学习数据集里的不均衡数据

    本文转自:http://www.36dsj.com/archives/35137 http://blog.csdn.net/heyongluoyao8/article/details/49408131 ...

  2. Learning from Imbalanced Data 翻译和阅读笔记

    Learning from Imbalanced Data 发表在IEEE<TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING>,09年的一篇好文 ...

  3. Imbalanced data – Finding Waldo

    Imbalanced data – Finding Waldo 这篇文章讲了不平衡数据的处理,都是常见的方法(简单采样,合成采样),但是文章最后讲了一个很有趣的处理方式:如果不平衡数据中某个类别的数据 ...

  4. 互联网数据中心——IDC(Internet Data Center)

    互联网数据中心--IDC(Internet Data Center),是指在互联网上提供的各项增值服务服务.他包括:申请域名.租用虚拟主机空间.主机托管等业务的服务. 基本简介 IDC即是Intern ...

  5. 互联网数据中心(Internet Data Center,IDC)

    互联网数据中心(Internet Data Center,IDC) 互联网数据中心--IDC(Internet Data Center),是指在互联网上提供的各项增值服务,包括:申请域名.租用虚拟主机 ...

  6. [论文评析]DeepSMOTE: Fusing Deep Learning and SMOTE for Imbalanced Data, IEEE TNNLS 2022

    DeepSMOTE: Fusing Deep Learning and SMOTE for Imbalanced Data 论文信息 动机 SMOTE回顾 主要思路 DeepSMOTE **Permu ...

  7. R语言data.table导入数据实战:把data.frame数据转化为data.table数据

    R语言data.table导入数据实战:把data.frame数据转化为data.table数据 目录 R语言data.table导入数据实战:把data.frame数据转化为data.table数据 ...

  8. R语言ggplot2可视化:使用长表数据(窄表数据)( Long Data Format)可视化多个时间序列数据、在同一个可视化图像中可视化多个时间序列数据(Multiple Time Series)

    R语言ggplot2可视化:使用长表数据(窄表数据)( Long Data Format)可视化多个时间序列数据.在同一个可视化图像中可视化多个时间序列数据(Multiple Time Series) ...

  9. R语言ggplot2可视化:通过水平半小提琴图(Horizontal Half Violin Plots)和抖动数据点( jittered data)可视化雨云图(Rain Cloud plots)

    R语言ggplot2可视化:通过水平半小提琴图(Horizontal Half Violin Plots)和抖动数据点( jittered data)可视化雨云图(Rain Cloud plots) ...

最新文章

  1. 前沿丨DeepMind提出神经元删除法:通过理解每个神经元来理解深度学习
  2. Mysql 共享锁(lock in share mode),排他锁(for update)
  3. 【Django】安装及配置
  4. Linux du命令和df命令区别
  5. Boost:系统测试的实例
  6. Spring Boot系列教程七:Spring boot集成MyBatis
  7. 解析Java对象引用与JVM自动内存管理(2)
  8. 编码技术新突破:字节跳动AVG让视频缩小13%
  9. Skyfire-在移动设备上体验silverlight的效果
  10. 修改tableView侧栏索引的背景色
  11. AtCode Beginner Contest 096
  12. 数据分析进阶 - 评分模型权重计算方法
  13. 基于MATLAB的疲劳检测
  14. 单目摄像机标定与双目摄像机标定有什么区别
  15. android构建系统总览
  16. php 日期转换为大写
  17. Unity3d发布WebGL打包AssetBundle的材质球丢失问题
  18. 《故事处方》丹提w摩尔 epub+mobi+azw3
  19. Physics-informed neural networks: A deep learning framework论文笔记
  20. linux对IO口控制remap,ioremap/remap_page_range [经典]Linux内核中ioremap映射的透彻理解...

热门文章

  1. 惠普4416s商务笔记本无限网卡问题
  2. 粒子群算法PSO求解最大值和最小值案例(超详细注释)
  3. 在Windows 10中怎么恢复卸载的软件
  4. 深度学习:使用UNet做图像语义分割,训练自己制作的数据集,详细教程
  5. 贪吃蛇php源代码,GitHub - fusijie/Snake: CocoaChina Cocos2d-x编程大战:贪吃蛇源码汇总...
  6. 你的工作就是最好的面试-邹欣
  7. 头歌实践实践教学平台:Java面向对象 - 封装、继承和多态的综合练习
  8. configure 配置参数说明
  9. 广东将从4方面发力数字农业,努力走在全国前列
  10. 飞康公司正式发布CDP和NSS v7.5版本 全面支持云架构