一种针对不均衡样本执行自动化机器学习的方法技术

技术编号:18942044 阅读:137 留言:0更新日期:2018-09-15 11:23
本发明专利技术公开了一种针对不均衡样本执行自动化机器学习的方法,其特征在于,包括如下步骤:步骤1,准备原始数据,根据业务理解收集、存储原始数据;步骤2,对原始数据进行数据预处理;步骤3,拆分训练集,测试集,供后期建模训练,验证效果;步骤4,样本均衡处理,对样本偏多的类进行欠采样,反之进行过采样;步骤5,以AUC值最优为目标,调用python包,执行自动化机器学习;步骤6,模型验证,观察查准率、查全率、F1分数、AUC值,模型效果不理想时,返回重新执行步骤5;步骤7,建模完成。本发明专利技术面向有监督学习的二分类预测,提出一种解决样本不均衡且自动执行最优算法选择及调参的有效实施方案,可以节省大量人力,并且得到可靠的预测效果。

An automated machine learning method for unbalanced samples

The invention discloses an automatic machine learning method for unbalanced samples, which is characterized by the following steps: step 1, preparing the original data, collecting and storing the original data according to business understanding; step 2, preprocessing the original data; step 3, splitting the training set, testing set, for later use Step 4, sample balancing, under-sampling and over-sampling for the class with more samples; Step 5, with the goal of optimizing AUC value, calls Python packet to perform automatic machine learning; Step 6, model validation, observing precision, recall, F1 score, AUC value, model effect When it is not ideal, it returns to re execute step 5; step 7, the modeling is completed. The invention is oriented to the binary classification prediction of supervised learning, and proposes an effective implementation scheme to solve the sample imbalance and automatically perform the optimal algorithm selection and parameter adjustment, which can save a lot of manpower and obtain a reliable prediction effect.

【技术实现步骤摘要】
一种针对不均衡样本执行自动化机器学习的方法
本专利技术涉及数据挖掘领域,特别是涉及一种针对不均衡样本执行自动化机器学习的方法。
技术介绍
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等。它致力于通过计算手段,利用经验来改善系统自身性能。机器学习主要研究在计算机上从数据产生模型的算法,即学习算法。在面对新情况时,模型会提供相应判决。过去20年内,人类收集,存储,传输,处理数据的能力明显提高,迫切需要从有效数据中总结规律,分析利用。机器学习刚好满足上述需求,因而受到广泛关注。根据问题类型,机器学习算法划分为有监督学习,无监督学习,半监督学习等任务。有监督学习从有标记的训练数据入手,每个样本有一组输入及一个期望输出。根据输入输出训练模型,训练好后,给一组新的输入,可以预测输出。无监督学习只有输入,没有期望输出。根据输入训练模型,解决模式识别的各种问题。半监督学习使用大量未标记数据,同时也使用标记数据,来进行模式识别工作。有监督学习任务训练模型进行二分类时,正反例样本往往不均衡,即一类样本数明显多于另一类样本数(比如欺诈账户识别,癌症识别等案例,正反例样本比例明显超过4:1)。不均衡样本直接影响模型预测效果。例如,正反例样本比例为9:1,即使模型将全部样本判为正例(不预测直接得到输出),判别准确率仍为90%,但此模型没有预测能力。同时,机器学习涉及多种算法,每种算法有各自参数需要调节。在进行二分类预测时,选择哪种算法及相应参数,都需要手工调试,非常耗时。因此,需要一种针对不均衡样本执行自动化机器学习的方法。
技术实现思路
本专利技术所要解决的技术问题是克服现有技术的不足,提供一种针对不均衡样本执行自动化机器学习的方法。为解决上述技术问题,本专利技术提供一种针对不均衡样本执行自动化机器学习的方法,其特征在于,包括如下步骤:步骤1,准备原始数据,根据业务理解收集、存储原始数据;步骤2,对原始数据进行数据预处理;步骤3,拆分训练集,测试集,供后期建模训练,验证效果;步骤4,样本均衡处理,对样本偏多的类进行欠采样,反之进行过采样;步骤5,以AUC值最优为目标,调用python包,执行自动化机器学习;步骤6,模型验证,观察查准率、查全率、F1分数、AUC值,如模型效果低于理想值时,返回重新执行步骤5;步骤7,建模完成。所述步骤2中的数据预处理还包括:步骤21进行数据清洗,删除或填充丢失数据;步骤22对数据进行标准化,将数据映射至[0,1]区间,减少指标之间的量纲差异。所述步骤22中对数据进行标准化的方法是调用sklearn.preprocessing.MinMaxScaler的fit_transform。所述步骤3中的拆分训练集是指调用sklearn.model_selection的train_test_split方法拆分样本,70%为训练集,30%为测试集。所述步骤4中的样本均衡处理是指调用imblearn.combine.smote_tomek.SMOTETomek的fit_sample方法,对样本偏多的类进行Tomek欠采样,对样本偏少的类进行SMOTE过采样所述步骤5还包括:步骤51变量选择,算法选择;步骤52调参;所述调用python包的方法是调用tpot.TPOTClassifier的fit,TPOT执行结束,导出pipeline。所述步骤6中的模型验证的方法是调用sklearn.metrics相关包,所述查准率的理想值是0.7,查全率的理想值是0.7,F1分数的理想值是0.8、AUC值的理想值是0.8。本专利技术所达到的有益效果:面向有监督学习的二分类预测,提出一种解决样本不均衡且自动执行最优算法选择及调参的有效实施方案,可以节省大量人力,并且得到可靠的预测效果。附图说明图1为本专利技术的示例性实施例的流程简图。具体实施方式下面结合附图和示例性实施例对本专利技术作进一步的说明:如图1所示,本专利技术提供了一种针对不均衡样本执行自动化机器学习的方法,包括:步骤1,准备原始数据,根据业务理解收集、存储原始数据;步骤2,对原始数据进行数据预处理;步骤21,进行数据清洗,删除或填充丢失数据;步骤22,对数据进行标准化,将数据映射至[0,1]区间,减少指标之间的量纲差异,若直接使用原始数据,模型系数相近时,量纲大的指标对目标变量具备更强影响力,但这不一定符合客观事实;因而需要标准化,使各指标量纲相同,对目标变量影响程度相近,再进行训练,找出真正具备影响力的指标;步骤3,拆分训练集,测试集,供后期建模训练,验证效果;步骤4,样本均衡处理,对样本偏多的类进行欠采样,反之进行过采样,不均衡样本直接影响模型预测效果:例如,正反例样本比例为9:1,即使模型将全部样本判为正例,判别准确率仍为90%,但此模型没有预测能力;步骤5,以AUC值最优为目标,调用python包,执行自动化机器学习,机器学习涉及多种算法,每种算法有各自参数需要调节;选择哪种算法及相应参数,都需要反复手工调试,非常耗时;而自动化机器学习将数据人员从手动调试环节解放出来,自动尝试sklearn包中各种算法的组合及调参,并给出最优搭配结果;步骤51,变量选择,算法选择;步骤52,调参;步骤6,模型验证,观察查准率、查全率、F1分数、AUC值,模型效果不理想时,返回重新执行步骤5;步骤7,建模完成。下面结合某网站的访问和会员购买数据作为实施例做进一步解释,步骤1,本专利技术统计2017/11/08之前的30天,每天汇总前7天数据。访问指标如下:访问平台标记(0:多平台混合登录,1:官网,2:触屏)访问平台数前7日平均PV前7日平均停留时长前7日累计访问天数前7日平均人寿险PV前7日平均健康险PV前7日平均意外险PV前7日平均旅游险PV前7日平均人寿险列表页PV前7日平均健康险列表页PV前7日平均意外险列表页PV前7日平均旅游险列表页PV前7日平均人寿险停留时长前7日平均健康险停留时长前7日平均意外险停留时长前7日平均旅游险停留时长前7日平均人寿险列表页停留时长前7日平均健康险列表页停留时长前7日平均意外险列表页停留时长前7日平均旅游险列表页停留时长前7日平均人寿险访问产品数前7日平均健康险访问产品数前7日平均意外险访问产品数前7日平均旅游险访问产品数前7日平均访问模块数前7日平均查看购物车PV前7日平均查看购物车停留时长会员购买指标如下:会员性别会员购买标记(0:不购买,1:购买)步骤21,一些未登录访问无法匹配会员性别,会员性别对目标变量有一定影响力,缺失性别的样本在业务上存在问题,数据指标不可靠,故直接删除会员性别缺失的样本,不考虑拟合填充。步骤22,调用sklearn.preprocessing.MinMaxScaler的fit_transform方法,将数据映射至[0,1]区间,减少指标之间的量纲差异。sklearn包囊括机器学习领域分类、回归、聚类、降维、模型选择、数据预处理等众多经典算法的权威实现,本专利技术调用此包的函数完成以下通用处理流程fromsklearn.preprocessingimportMinMaxScalercombined_set[col_remain]=MinMaxScaler().fit_transform(np.l本文档来自技高网...

【技术保护点】
1.一种针对不均衡样本执行自动化机器学习的方法,其特征在于,包括如下步骤:步骤1,准备原始数据,根据业务理解收集、存储原始数据;步骤2,对原始数据进行数据预处理;步骤3,拆分训练集,测试集,供后期建模训练,验证效果;步骤4,样本均衡处理,对样本偏多的类进行欠采样,反之进行过采样;步骤5,以AUC值最优为目标,调用python包,执行自动化机器学习;步骤6,模型验证,观察查准率、查全率、F1分数、AUC值,如模型效果低于理想值时,返回重新执行步骤5;步骤7,建模完成。

【技术特征摘要】
1.一种针对不均衡样本执行自动化机器学习的方法,其特征在于,包括如下步骤:步骤1,准备原始数据,根据业务理解收集、存储原始数据;步骤2,对原始数据进行数据预处理;步骤3,拆分训练集,测试集,供后期建模训练,验证效果;步骤4,样本均衡处理,对样本偏多的类进行欠采样,反之进行过采样;步骤5,以AUC值最优为目标,调用python包,执行自动化机器学习;步骤6,模型验证,观察查准率、查全率、F1分数、AUC值,如模型效果低于理想值时,返回重新执行步骤5;步骤7,建模完成。2.如权利要求1所述的一种针对不均衡样本执行自动化机器学习的方法,其特征在于,所述步骤2中的数据预处理还包括:步骤21进行数据清洗,删除或填充丢失数据;步骤22对数据进行标准化,将数据映射至[0,1]区间,减少指标之间的量纲差异。3.如权利要求2所述的一种针对不均衡样本执行自动化机器学习的方法,其特征在于,所述步骤22中对数据进行标准化的方法是调用sklearn.preprocessing.MinMaxScaler的fit_transform。4.如权利要求3所述的一种针对不均衡样本执行自动化机器学习的...

【专利技术属性】
技术研发人员:王旻毅王婷房鹏展
申请(专利权)人:焦点科技股份有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1