一种基于随机森林算法的薪资水平影响因素的分析方法技术

技术编号:20486972 阅读:36 留言:0更新日期:2019-03-02 19:52
本发明专利技术涉及一种基于随机森林算法的薪资水平影响因素的分析方法,属于数据挖掘分类技术领域。本发明专利技术先建立一个居民信息的数据库;其次对获得的居民信息数据进行预先处理;然后引入随机森林算法,对预处理过的数据集随机抽样进行决策树的构建,长出多棵决策树,进而形成森林;求出随机森林中变量重要性评分的Gini指数,比较Gini指数改变量平均值的大小,对影响薪资水平的因素重要性进行排序,快速准确地对影响薪资水平的主要因素进行分析。本发明专利技术与现有技术相比,主要提供了一种基于随机森林算法对薪资水平影响因素的判断方法,本发明专利技术方法科学实用,能够快速准确地对影响薪资水平的因素进行分析。

An Analysis Method of Influencing Factors of Salary Level Based on Stochastic Forest Algorithms

The invention relates to an analysis method based on random forest algorithm for influencing factors of salary level, belonging to the field of data mining classification technology. The invention first establishes a database of resident information; secondly preprocesses the acquired resident information data; secondly, introduces random forest algorithm to construct a decision tree for random sampling of the preprocessed data set, grows multiple decision trees, and then forms a forest; calculates Gini index of the importance score of variables in random forest, and compares the average change of Gini index. Size, rank the importance of factors affecting salary level, quickly and accurately analyze the main factors affecting salary level. Compared with the prior art, the invention mainly provides a method for judging the influencing factors of salary level based on Stochastic Forest algorithm. The method is scientific and practical, and can quickly and accurately analyze the influencing factors of salary level.

【技术实现步骤摘要】
一种基于随机森林算法的薪资水平影响因素的分析方法
本专利技术涉及一种基于随机森林算法的薪资水平影响因素的分析方法,属于数据挖掘分类

技术介绍
随着社会的不断发展,社会结构越来越复杂,工作类型越来越多,如何能快速准确地对影响居民薪资水平的主要因素进行分析成为了一个需要考虑的问题。随机森林算法是以决策树作为基分类器的组合分类器,利用Bootstrap方法产生具有差异性的经过训练的样本集,同时在构建决策树时,随机的选择属性,进而对节点进行分裂。CART算法和Bagging方法的有效结合,使得通过随机特征的选择进行属性分裂,让该模型有较好的减少数据噪声和杂信号的作用,从而有较好的分类效果。
技术实现思路
本专利技术要解决的技术问题是提供一种基于随机森林算法的影响城市居民薪资水平主要因素的判断方法,用以解决上述问题。本专利技术的技术方案是:一种基于随机森林算法的薪资水平影响因素的分析方法,包括如下步骤:Step1、建立完备的居民信息数据库;Step2、对居民信息数据进行清洗、消减和转换的预先处理;Step3、引入随机森林算法,对数据集随机抽样进行决策树的构建,每个决策树最大生长而不被剪枝,长出多棵决策树,进而形成森林;Step4、求出随机森林中变量重要性评分的Gini指数;Step5、对影响薪资水平的因素重要性进行排序,快速准确地对影响薪资水平的因素进行分析;具体地,所述步骤Step1中居民信息数据库是居民信息的集合,字段包括姓名、性别、教育层次、工作年限、工作领域等居民的基本信息。具体地,所述步骤Step2是对Step1中的信息数据进行预先处理,其预先处理包括对居民信息数据的清洗、消减和转换。具体地,所述步骤Step3中,首先,采用Bootstrap抽样方法从原始数据集中抽取N个训练子集,每个训练子集的大小约为原始数据集的三分之二;然后,为每个训练子集分别建立决策树,产生由N棵决策树组成的森林,在每棵树生长的过程中,从所有M个特征变量中随机抽取m个属性(m≤M),在m个属性中根据Gini指数最小原则选出最优属性进行内部节点分裂;最后,集合N棵决策树的预测结果,根据投票方式决定新样本的类别;每次抽样过程中约三分之一的数据未被抽中,利用这些数据来估计内部误差。此刻则定义两个参数:即随机森林中生长树的数目N和节点分裂时输入的特征变量个数m。由于随机森林不会出现过拟合现象,根据各分类的数据产生的误差趋于稳定时设置N的值。节点分裂时输入的特征变量个数m通过遍历M个特征变量时,预测错误率最低可得。具体地,所述步骤Step4是集合N棵决策树的预测结果,求出随机森林中变量重要性评分的Gini指数;假定有M个变量x1,x2,x3...xM,需计算M个变量的重要性得分统计量。根据Gini指数,变量xi的得分统计量为VIMi(Gini)。统计量VIMi(Gini)表示第i个变量在随机森林树中节点分裂不纯度的平均改变量,计算公式如公式(1):式(1)中,K为自助样本集类别数,PMK为节点m属于第k类的概率,当样本属于二分类别数据(即K=2)时,节点m的Gini指数如公式(2):GIm=2Pm(1-Pm)(2)Pmk是样本在节点m属于任一类的概率估计值。变量xi在节点m的重要性,即在节点m分枝前后Gini指数变化量为:VIMji(Gini)=GIm-GIl-GIr(3)式(3)中,GIi和GIr分别表示的是由节点m分裂的两个新节点的Gini指数。如果变量xi在第j棵树中出现M次,那么变量xi在第j棵树的重要性定义如公式(4)所示:变量xi在随机森林中的Gini重要性定义如公式(5)所示:公式(5)中,n为随机森林中决策树的个数。具体地,所述步骤Step5中,对影响薪资水平的因素的重要性进行排序,即可快速准确地对影响薪资水平的因素进行分析。本专利技术的有益效果是:本专利技术与现有技术相比,提高了薪资水平影响因素分析的准确性与高效性,对人力资源和社会保障部门具有很大的指导意义。附图说明图1是本专利技术步骤流程图;图2是本专利技术步骤Step2详细流程图;图3是本专利技术步骤Step3详细流程图;图4是本专利技术具体实施方式中所举例子构建随机森林和通过Gini指数对影响因素的重要性分析的实施方法流程图。具体实施方式下面结合附图和具体实施方式,对本专利技术作进一步说明。实施例1:如图1-4所示,一种基于随机森林算法的薪资水平影响因素的分析方法,先建立一个居民信息的数据库;其次对获得居民信息数据进行预先处理;然后引入随机森林算法,对获取的数据集进行随机抽样进行决策树的构建,长出多棵决策树,进而形成森林;求出随机森林中变量重要性评分的Gini指数,比较Gini指数改变量平均值的大小,对影响薪资水平的因素重要性进行排序,快速准确地对影响薪资水平的主要因素进行分析。具体步骤如下:Step1、建立完备的城市居民信息数据库;具体地:暂定所建数据库中有如下关键词:姓名、性别、年龄、身高、体重、婚育状况、教育层次、工作年限、工作领域、工作经验、家庭住址……Step2、对居民信息数据进行清洗、消减和转换的预先处理;具体地:获取居民信息数据,数据的质量是影响数据挖掘工作的关键性因素。采集到的居民信息数据是不完整的含有噪声的冗余的数据,因此,需要对采集到的居民信息数据进行预处理,以提高数据的质量。对居民信息数据的预处理工作主要包括三个方面:数据清洗、数据消减、数据转换。(1)数据清洗收集到的信息的属性有些是不完整的,如有些数据没有年龄、教育层次,工作领域等属性,需要将这部分数据清洗掉。(2)数据消减采集到的信息中的属性的很多,但并非所有的属性都是研究工作所必需的。因此,从数据集选取与研究相关的属性,删除不相关属性是至关重要的一项工作。观察数据,发现姓名、身高、体重、婚育状况等属性与本研究无关,将其删除。(3)数据转换采集到的信息的有些属性是连续型的,为了简化数据,需要对采集到的居民信息数据进行离散化处理。如对年龄的处理,划分不同的年龄段进行分类处理。Step3、引入随机森林算法,对数据集进行随机抽样进行决策树的构建,每个决策树最大生长而不被剪枝,长出多棵决策树,进而形成森林;具体的:Step3.1、对原始居民信息数据训练集SC采用Bootstrap抽样,生成训练样本集SCi=(xi,yi),(i=1,2,3,…n)Step3.2、使用训练集SCi生成一棵不剪枝的决策树ti:a.从所有m个特征中随机选取mt个居民信息特征;b.依据Gini指数在每个节点上,从mt个特征中选取最优特征;c.分裂直到决策树生长到最大;最后得到:1.决策树的集合{ti,i=1,2,…,n};2.待测的居民信息数据样本dt,决策树ti输出ti(dt);Step4、求出随机森林中变量重要性评分的Gini指数;具体的:假定有M个变量x1,x2,x3...xM,需计算M个变量的重要性得分统计量。根据Gini指数,变量xi的得分统计量为VIMi(Gini)。统计量VIMi(Gini)表示第i个变量在随机森林树中节点分裂不纯度的平均改变量,计算公式如公式(1):式(1)中,K为自助样本集类别数,Pmk为节点m属于第k类的概率,当样本属于二分类别数据(即K=2)时,节点m的Gini指数如公式(2):GIm=2Pm(1-Pm本文档来自技高网...

【技术保护点】
1.一种基于随机森林算法的薪资水平影响因素的分析方法,其特征在于:Step1、建立完备的居民信息数据库;Step2、对居民信息数据进行清洗、消减和转换的预先处理;Step3、引入随机森林算法,对数据集随机抽样进行决策树的构建,每个决策树最大生长而不被剪枝,长出多棵决策树,进而形成森林;Step4、求出随机森林中变量重要性评分的Gini指数;Step5、对影响薪资水平的因素重要性进行排序,快速准确地对影响薪资水平的因素进行分析。

【技术特征摘要】
1.一种基于随机森林算法的薪资水平影响因素的分析方法,其特征在于:Step1、建立完备的居民信息数据库;Step2、对居民信息数据进行清洗、消减和转换的预先处理;Step3、引入随机森林算法,对数据集随机抽样进行决策树的构建,每个决策树最大生长而不被剪枝,长出多棵决策树,进而形成森林;Step4、求出随机森林中变量重要性评分的Gini指数;Step5、对影响薪资水平的因素重要性进行排序,快速准确地对影响薪资水平的因素进行分析。2.根据权利要求1所述的基于随机森林算法的薪资水平影响因素的分析方法,其特征在于:所述步骤Step1中居民信息数据库是居民信息的集合,字段包括姓名、性别、教育层次、工作年限、工作领域。3.根据权利要求1所述的基于随机森林算法的薪资水平影响因素的分析方法,其特征在于:所述步骤Step2是对Step1中的信息数据进行预先处理,其预先处理包括对居民信息数据的清洗、消减和转换。4.根据权利要求1所述的基于随机森林算法的薪资水平影响因素的分析方法,其特征在于:所述步骤Step3具体步骤为:首先,采用Bootstrap抽样方法从原始数据集中抽取N个训练子集,每个训练子集的大小约为原始数据集的三分之二;然后,为每个训练子集分别建立决策树,产生由N棵决策树组成的森林,在每棵树生长的过程中,从所有M个特征变量中随机抽取m个属性(m≤M),在m个属性中根据Gini指数最小原则选出最优属性进行内部节点分...

【专利技术属性】
技术研发人员:宋耀莲田榆杰武双新王慧东徐文林
申请(专利权)人:昆明理工大学
类型:发明
国别省市:云南,53

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

1