当前位置: 首页 > 数据分析师 > 数据分析师实战技能 > 数据分析师数据分析 > 机器学习中非平衡数据集的常用处理方法

机器学习中非平衡数据集的常用处理方法

发布时间:2020年09月28日 11:04:47 来源: 点击量:463

【摘要】机器学习中非平衡数据集的常用处理方法 不平衡数据集:在分类等问题中,正负样本,或者各个类别的样本数目不一致。:在人脸检测中,比如训

机器学习中非平衡数据集的常用处理方法

不平衡数据集:

在分类等问题中,正负样本,或者各个类别的样本数目不一致。

:在人脸检测中,比如训练库有10万张人脸图像,其中9万没有包含人脸,1万包含人脸,这个数据集就是典型的不平衡数据集。
直观的影响就是,用这些不平衡的数据训练出来的模型,其预测结果偏向于训练数据中数据比较多的那一类,在人脸检测的例子中,就是检测器的检测结果大部分都偏向于没有检测到人脸图像。

另外一个不平衡数据集,就是信用卡欺诈交易,如果平均的抽取数据,则大部分的数据都是非欺诈交易,只有非常少的部分数据是欺诈交易

影响:不平衡的数据集上做训练和测试,其得到的准确率是虚高的,比如在不平衡数据中,正负样本的比例为9:1时,当它的精度为90%时,我们很有理由怀疑它将所有的类别都判断为数据多的那一类。

解决方法:8种

1.收集更多的数据:

好处:更够揭露数据类别的本质差别,增加样本少的数目以便后面的数据重采样。
(这个是最好的方法,但是一般比较难,通常处理的数据是难以收集的。)

2.尝试改变性能评价标准:

当数据不平衡时,准确度已经失去了它原有的意义,
可以参考的度量标准有:
1> 混淆矩阵CM
2>精度
3>召回率
4>F1 分数(权衡精度和召回率)
5>Kappa
6>ROC曲线

3.重采样数据:

1,拷贝一部分样本偏少的数据多分,已达到平衡(过采样);
2,删除一部分样本偏多的数据,以使得达到平衡(欠采样);
在实际中,过采样和欠采样都会使用的。
在测试中,如果样本总数比较多,可以用欠采样的数据进行测试,如果样本总数比较少,可以用过采样的数据进行测试;另外应该测试随机采样的数据和非随机采样的数据,同时,测试不同比例正负样本的数据。

4.生成合成数据:

最简单的是,随机采样样本数目比较少的属性,
另外一个比较出名的方法为:SMOTE
它是一种过采样的方法,它从样本比较少的类别中创建新的样本实例,一般,它从相近的几个样本中,随机的扰动一个特征,

5.使用不同的算法:

不要试图用一个方法解所有的问题,尝试一些其他不同的方法,比如决策树一般在不平衡数据集上表现的比较的好。

6.尝试惩罚模型:

意思就是添加新的惩罚项到cost函数中,以使得小样本的类别被判断错误的cost更大,迫使模型重视小样本的数据。
比如:带惩罚项的SVM

7.使用不同的视角:

不平衡的数据集,有专门的邻域和算法做这个,可以参考他们的做法和术语。
比如:异常检测。

8.尝试新的改进:

比如:1.把样本比较多的类别,分解为一些更多的小类别,
比如:原始我们想区分数字0和其它数字这二分类问题,我们可以把其它数字在分为9类,变成0–9的分类问题.

分享到: 编辑:wangmin

就业培训申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球青藤移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球青藤官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部