机器学习-10:MachineLN之样本不均衡
版权声明:本文为博主原创文章,未经博主允许不得转载。有问题可以加微信:lp9628(注明CSDN)。 https://blog.csdn.net/u014365862/article/details/79040390 </div><link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-f57960eb32.css"><div class="htmledit_views" id="content_views">
你要的答案或许都在这里:小鹏的博客目录
我想说:
其实很多时候,有竞争是好的事情,可以促进你的成长,可以磨练你的耐性,可以提升你的魅力,可以表现你的豁达,可以体验成功的喜悦,可以感受失败其实并不可怕,可怕的是你没有面对失败的勇气;而今天的社会达尔文的进化论其实从来没有变过,唯一不变的事情想必就是变了,做慈善的是慈善机构,做教育的是学校,百依百顺的是父母,只要踏上社会,那么对不起,优胜劣汰,适者生存,你必须面对,并且你面对的都是高手,是多个依依东望的诸葛亮,你要脱颖而出除了变的更优秀没有出路! 那么你打算怎么做呢?
说到样本不均衡,感觉平时大家不太重视,下面来一起讨论一下!
那么我的问题是:
1. 什么是样本不均衡?
2. 为什么要解决样本不均衡?
3. 解决样本不均衡有哪些方法?
看到这里你的答案是什么?下面是我的答案:
1. 什么是样本不均衡?
样本不均衡:在准备训练样本的时候,各类别样本比例不等,有的差距可能比较小,有的差距则会比较大,以CIFAR-10为例:
CIFAR-10是一个简单的图像分类数据集。共有10类(airplane,automobile,bird,cat,deer,dog, frog,horse,ship,truck),每一类含有5000张训练图片,1000张测试图片。如下图:Dist. 1:类别平衡,每一类都占用10%的数据。Dist. 2、Dist. 3:一部分类别的数据比另一部分多。Dist. 4、Dist 5:只有一类数据比较多。Dist. 6、Dist 7:只有一类数据比较少。Dist. 8: 数据个数呈线性分布。Dist. 9:数据个数呈指数级分布。Dist. 10、Dist. 11:交通工具对应的类别中的样本数都比动物的多。
2. 为什么要解决样本不均衡?
训练网络使用的是CIFAR-10的结构,下面是测试结果:可以看出总的准确率表现不错的几组1,2,6,7,10,11都是大部分类别平衡,一两类差别较大;而表现很差的,像5,9可以说是训练失败了,他们的不平衡性也比前面的要强。
那么再看一下,对样本少的数据进行过采样之后,测试结果:可以看到经过过采样将类别数量平衡以后,总的表现基本相当。(过采样虽然是一个很简单的想法,但是很OK,3中还将介绍海康威视ImageNet2016竞赛经验)
想必到这里可以看到样本均衡的重要性了吧。
3. 解决样本不均衡有哪些方法?
解决不均衡问题的方式有很多:
(1)可以将数据进行扩增: (这些方法有时候也可以勉强做为数据不均衡的增强方法,如果训练时候各类样本都已经用了以下的方法进行data augmentation,那么样本不均衡就选其他方法来做吧)
原图:
图像旋转;
图像crop;
图像平移;
图像flip;(左右镜像,有的可以上下)
(5)图像光照;
还有一些像添加噪声; 透视变换等;
(2) 可以借鉴一下海康威视的经验:
以图中的例子来说,步骤如下:首先对原始的图像列表,按照标签顺序进行排序;然后计算每个类别的样本数量,并得到样本最多的那个类别的样本数。根据这个最多的样本数,对每类随机都产生一个随机排列的列表;然后用每个类别的列表中的数对各自类别的样本数求余,得到一个索引值,从该类的图像中提取图像,生成该类的图像随机列表;然后把所有类别的随机列表连在一起,做个Random Shuffling,得到最后的图像列表,用这个列表进行训练。每个列表,到达最后一张图像的时候,然后再重新做一遍这些步骤,得到一个新的列表,接着训练。Label Shuffling方法的优点在于,只需要原始图像列表,所有操作都是在内存中在线完成,非常易于实现。
另外也可以按照同样的方式对多的样本进行欠采样;
(3)还可以用Weighted samples,给每一个样本加权重,样本多的类别每个的权重就小些,样本少的类别每个的权重就大些,这样无论样本是否均衡,在Loss Function中每类的影响力都一样的。
(4)还可以:再过采样之后使用K-fold交叉验证,来弥补一些特殊样本造成的过拟合问题,(K-fold交叉验证就是把原始数据随机分成K个部分,在这K个部分中选择一个作为测试数据,剩余的K-1个作为训练数据。交叉验证的过程实际上是将实验重复做K次,每次实验都从K个部分中选择一个不同的部分作为测试数据,剩余的数据作为训练数据进行实验,最后可以把得到的K个实验结果平均。)
推荐阅读:
1. 机器学习-1:MachineLN之三要素
2. 机器学习-2:MachineLN之模型评估
3. 机器学习-3:MachineLN之dl
4. 机器学习-4:DeepLN之CNN解析
5. 机器学习-5:DeepLN之CNN权重更新(笔记)
6. 机器学习-6:DeepLN之CNN源码
7. 机器学习-7:MachineLN之激活函数
8. 机器学习-8:DeepLN之BN
9. 机器学习-9:MachineLN之数据归一化
10. 机器学习-10:MachineLN之样本不均衡
11. 机器学习-11:MachineLN之过拟合
12. 机器学习-12:MachineLN之优化算法
13. 机器学习-13:MachineLN之kNN
14. 机器学习-14:MachineLN之kNN源码
机器学习-10:MachineLN之样本不均衡相关推荐
- Java机器学习库ML之五样本不均衡
样本不均衡的问题是指训练集中类别之间的样本数据量比例失衡.有研究表明,部分学习任务,在类别出现1∶35比例时就会使某些分类学习方法无效,甚至1∶10比例也会.样本不均衡导致的问题有: 1)少数类所包含 ...
- 【机器学习基础】对样本不均衡的处理
作者:时晴 炼丹小仙女 样本不均的问题大家已经很常见了,我们总是能看到某一个类目的数量远高于其他类目,举个例子,曝光转化数远低于曝光未转化数.样本不均严重影响了模型的效果,甚至影响到我们对模型好坏的判 ...
- 综述:解决目标检测中的样本不均衡问题
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨SFXiang 来源丨AI算法修炼营 编辑丨极市平台 极市导 ...
- 【机器学习】一文解决样本不均衡(全)
一.样本不均衡的介绍 1.1 样本不均衡现象 样本(类别)样本不平衡(class-imbalance)指的是分类任务中不同类别的训练样例数目差别很大的情况,一般地,样本类别比例(Imbalance R ...
- 【机器学习基础】八种应对样本不均衡的策略
1 什么是非均衡 2 10种解决办法 2.1 重采样(六种方法) 2.2 调整损失函数 2.3 异常值检测框架 2.4 二分类变成多分类 2.5 EasyEnsemble 3 为什么树模型不担心这个问 ...
- 【一文速通】机器学习样本不均衡/数据分布不同怎么办?
样本不均衡是什么意思 样本(类别)样本不平衡(class-imbalance)指的是分类任务中不同类别的训练样例数目差别很大的情况,一般地,样本类别比例(Imbalance Ratio)(多数类vs少 ...
- 什么是样本不均衡问题?如何解决
何为样本不均衡: 样本分布不均衡就是指样本差异非常大,例如共1000条数据样本的数据集中,其中占有10条样本分类,其特征无论如何你和也无法实现完整特征值的覆盖,此时属于严重的样本分布不均衡. 为何要解 ...
- 样本不均衡问题 (OHEM, Focal loss)
目录 不均衡问题分析 正负样本不均衡 难易样本不均衡 类别间样本不均衡 常用的解决方法 在线难样本挖掘: OHEM 难负样本挖掘 (Hard Negative Mining, HNM) 在线难样本挖掘 ...
- One Class SVM 对于样本不均衡处理思路——拿出白样本建模,算出outlier,然后用黑去检验效果...
One Class SVM 是指你的training data 只有一类positive (或者negative)的data, 而没有另外的一类.在这时,你需要learn的实际上你training d ...
最新文章
- ZBrush全面入门学习教程 Schoolism – Introduction to ZBrush
- 从AdventureWorks学习数据库建模——保留历史数据
- 价值1.4万元的课程讲义开源,fast.ai发布新书源代码,登GitHub趋势榜第一
- 讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,当 new 的时候, 他们的执行顺序
- leetcode - 279. 完全平方数
- mysql索引的使用[下]
- 洛谷 P1352 没有上司的舞会【树形DP/邻接链表+链式前向星】
- java随机姓名_Java随机产生中文昵称
- powershell执行c语言文件,c语言中调用shell脚本
- UVA 644 - Immediate Decodability
- 【荐】万能清除浮动样式
- C++面向对象高级编程(上) 第三周笔记 GeekBand
- 细说 ASP.NET控制HTTP缓存[转]
- 蓝桥杯历年真题分类汇总(史上最全版本,一定不要错过)
- Mysql支持translate函数吗_Oracle-函数-translate
- 容性耦合等离子体(CCP)和电感耦合等离子体(ICP)
- 谈谈privoxy:关于广告过滤和自动代理切换
- STM32实战(1):搭建模板工程
- 浏览器禁用cookie后session还能用吗?cookie与session区别
- 服务器关闭微软小娜,win10小娜总是自动弹出怎么禁止-禁止win10小娜自动弹出的方法 - 河东软件园...