大数据分析之非均衡数据处理简易攻略
沉沙 2019-02-20 来源 : 阅读 1104 评论 0

摘要:本篇文章探讨了大数据分析之非均衡数据处理简易攻略,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

本篇文章探讨了大数据分析之非均衡数据处理简易攻略,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

大数据分析之非均衡数据处理简易攻略

 

塔榭德-委黑格尔曾说过:“通往山顶的路有很多条”。同理,处理非均衡数据并建模的方法也有很多种。本文将为您介绍处理非均衡数据集的简易攻略。





非均衡数据的定义及举例:

非均衡数据通常指的是在分类问题中,不同类别的样本数不相称或数量级相差较大的情况。例如,在三分类问题中,类别甲、乙、丙分别占到样本的95%,4%,1%的情况;现实生活中欺诈识别、故障探测中所面对的数据集大多是非均衡数据集。

直接使用非均衡数据集建模会给模型的参数估计和后续使用带来不良后果,譬如,准确率很高而召回率很低,或者模型的稳定性非常差,等等。选用合适的方法处理非均衡数据将会帮您得到稳健的结果。本次想要介绍的处理非均衡数据的方法有三类:1、从数据源入手,优化样本数据集;2、对数据集进行处理,通过抽样构建更均衡的样本;3、使用集成学习算法建模。下面为您分项解读:


处理方法1:从数据源入手,尽量优化样本数据集

造成非均衡数据的原因有很多,可能是真实数据本身属性就是如此,也可能是在数据集采集过程中出现偏差。不论是哪种原因,搜集更多、质量更高的数据,优化样本数据集,都将对后续的分析产生正面的影响。

除了获取更多的数据,合理的设定研究问题,对已有数据集进行筛选也值得一试。举例来说,A银行三千万存量客户,目前持有BGJ贷款的客户约为二十万,我们关心的问题是,哪些存量客户更有可能申请BGJ贷款?直接对三千万的存量客户整体进行建模并筛选BGJ贷款的潜在客户是比较困难的。此时,可以考虑对于三千万的整体客群进行筛选,譬如去除长期不活跃的客户、不符合BGJ贷款申请条件的客户等等,从而缩小整体样本集,再进行建模,预测BGJ产品的潜在客户。


处理方法2:通过抽样重建样本集

本次简述三种抽样方法:过采样、欠采样及SMOTE法。

欠采样(under-sampling)指在重构样本时少量抽取原数据集中多数类样本,进而构建均衡数据集,缺点是容易造成信息遗失。当原始数据集样本整体量比较大譬如有十几万个观测点时,可以考虑欠采样方式。

过采样(over-sampling)指在重构样本时多次抽取少数类样本,进而构建均衡数据集,缺点是容易造成过拟合。欠采样和过采样在执行过程中都可进一步细分为有放回和无放回的方式。

SMOTE (Synthetic Minority Over-sampling Technique)是一种通过人工合成少数类样本,进而过采样构造均衡数据集的方法,是2002年由Chawla、Bowyer、Hall 和Kegelmeyer提出的,评价良好。下图展示了SMOTE算法的思路,简单来说分为两步:1、在任意选中一个少数类观测点(Xi)后,圈定该观测点附近的其他观测点(KNN);2、通过公式生成新的(人工合成)少数类观测点。

Python中的imbalanced-learn模块可以帮助实现上述的数据处理功能。 (https://github.com/scikit-learn-contrib/imbalanced-learn

值得注意的是,使用抽样构建的有偏样本进行建模估计参数后需要进行校正。参数校正相关事宜及影响可以阅读往期精彩文章:《建模样本中正样本比例过低,怎么办?》

处理方法3:集成学习算法相关

集成学习算法(Ensemble Learning)是指将多个单个学习器(个体学习器,individual learner)组合起来使用,共同完成最终的机器学习任务的方法。同质集成中的个体学习器也可称为基学习器(base learner)。在处理非均衡数据集中建模过程中可以结合的集成学习算法有很多,譬如,Bagging、Boosting、Adaboost、XG Boost、GBDT等等,其中Adaboost、XG Boost、GBDT是Boosting的衍生。下图为Adaboost算法示例:




使用集成学习算法对非均衡数据集建模将有助与得到更加稳健、有效的结果。下面简单举两个应用算法示例进行说明。

SMOTEBoost将SMOTE重构的样本与Adaboost算法结合构建集成分类器,在每一轮分类学习过程中增加对少数类的样本的权重,使得基学习器 (base learner) 能够更好地关注到少数类样本

EasyEnsemble每次从多数类样本集中生成与少数类样本集观测数相同的子样本集,合并多数类样本集的子样本集与少数类样本集作为新的均衡样本集。针对每一个新的均衡样本集进行Adaboost集成学习,最终的将一系列弱学习器结合形成一个强分类器。


   

本文由职坐标整理发布,学习更多的相关知识,请关注职坐标IT知识库!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved