Keras神经网络大数据岗位薪酬分类模型
2021-10-08孙含笑
孙含笑
摘 要: 影响大数据人才就业收入的因素纷繁复杂,难以确定其关键影响条件,影响了潜在从业者的就业选择以及从业人员的自我提升方向。针对这一社会热点问题,建立基于信息熵的机器学习模型-分类决策树,分析影响收入的关键因素,进而提出一种基于Keras搭建的新型高精准率神经网络收入分类模型。该模型能够精准地确定影响大数据人才收入的主要因素,为大数据行业相关人员提供从业指导与帮助。
关键词: 大数据; 信息熵; 机器学习; 分类决策树; 神经网络
中图分类号:TP391.4 文献标识码:A 文章编号:1006-8228(2021)09-26-03
Abstract: The factors that affect the employment income of big data employees are complex, which makes it difficult to determine the key influencing conditions, and affects the employment choice of potential practitioners and the direction of self promotion of employees. In view of this hot social issue, this paper establishes an information entropy based machine learning model, the classification decision tree, to analyze the key factors affecting income, and thereafter proposes a new high precision neural network revenue classification model based on Keras. The model can accurately determine the main factors affecting the income of big data employees, and provide guidance and help for the relevant personnel in big data industry.
Key words: big data; information entropy; machine learning; classification decision tree; neural network
0 引言
数据科学与大数据技术,简称大数据。大数据是一个新学科。这几年“大数据”成为发展最快的行业。大数据人才短缺成为掣肘大数据行业发展的重要因素之一,培养适合社会需求的大数据人才是高等教育亟待解决的问题[1]。面对现状,国内众多高校开设了大数据专业,源源不断地向国家输入大数据人才。而大数据人才在就业后的工资收入也成为热议,基于2020年大数据就业统计,研究了北京、上海、广州、深圳等四个一线城市,以及南京、西安、郑州、杭州等四个二线城市的大数据人才就业数据,以期通过现有的数据获得一个好的收入分类模型。
在现有的机器学习[2]分类模型当中,首先考虑决策树分类[3]模型。决策树方法最早产生于上世纪六十年代到七十年代末,由JRoss Quinlan提出了ID3算法[4],此算法的目的在于减少树的深度。ID3算法在进行特征选择时,ID3算法优先选择信息增益最大的特征,即优先选择对整个系統贡献最大的特征。通过决策树算法构建决策树,可以发现影响收入高低的主要因素。因为传统的机器学习算法准确率没有神经网络算法模型的准确率高,所以通过现有的数据集构建一个基于Keras的神经网络算法模型[5],以达到准确的分类效果。
1 研究目的与框架
1.1 研究目的
对于大数据人才的收入状况有许多影响因素,在众多因素当中,通过建立决策树分类模型,得到影响就业收入的主要因素。为了使得模型的分类准确率更高,采用更为智能的神经网络模型建立分类器。
1.2 研究设计示意图
研究和试验设计框架示意图如图1所示。
2 研究的设计与实现
2.1 爬取数据及数据清洗
登录就业网以及招聘网站,爬取2020年大数据人才的就业信息和招聘信息,对得到的数据查找缺失值以及进行数据清洗。
2.2 数据分析
基于2020年大数据岗位就业和招聘数据,研究了北京、上海、广州、深圳等四个一线城市,以及南京、西安、郑州、杭州等四个二线城市,共计八个城市的大数据岗位就业和招聘情况数据,由于目前三四线城市大数据人才需求量不大,对模型的最终影响在此忽略不计。据统计,一线城市大数据岗位招聘公司数量要远远高于二线城市,如图2所示。
此外,通过对招聘数据的统计发现,大数据岗位要求的学历以本科为主要人群,如图3所示。
2.3 特征选取
2.3.1 特征提取方法简述
通过对2020年大数据人才的就业情况分析,爬取影响就业收入的特征有:①工作岗位;②工作资历;③学历;④公司规模;⑤工作城市;⑥城市一、二线;⑦南北方地域,其中由于公司规模这个特征难以考量,因此剔除该特征。在剩下来的6个特征中选取主要特征建立模型,筛选方式是通过ID3算法构建决策树模型。ID3算法涉及到的概念定义如下:
信息熵是一种反映不确定性的度量方式,通过信息量的规模来体现不确定程度[6]。
ID3算法是基于信息增益來选择树结点,信息增益越大,则这个特征的选择性越好,即这个特征对整个事件的贡献越大。
2.3.2 模型构建及分析
⑴ 模型构建
数据集:将①工作岗位;②工作资历;③学历;⑤工作城市;⑥城市一、二线;⑦南北方地域等六个特征作为特征数据。
数据集标签:将收入作为标签,标签有3个取值,[“低”,”中”,”高”],划分的标准为年收入>20万为”高”,10-20万为”中”,<10万为”低”收入。
⑵ 模型建立
model=tree.DecisionTreeClassifier(criterion='entropy')
⑶ 参数设置,寻找主要特征
设置树的深度max_depth=4,max_depth=6时,出现在决策树的特征为:②③⑤⑥⑦。
树的深度max_depth不设限,也没有看到特征①工作岗位出现在决策树当中,因此,本次实验丢弃此特征。在多次实验当中,根节点出现的特征都为③学历,因此学历是影响收入的关键因素。
2.4 模型建立及评分
新的数据集:②③⑤⑥⑦五个特征作为特征数据。
利用训练集和训练集的标签训练模型,模型仍然采用Sklearn自带的决策树模型:
model=tree.DecisionTreeClassifier(criterion='entropy')
将20%数据作为测试集,得到模型的得分为:
测试集得分0.8493975903614458;
训练集得分0.8874622356495468。
由结果可知,现在的决策树模型结果比较理想,准确率为80%以上。为了得到更为理想的模型,建立神经网络模型。
2.5 模型改进-基于Keras神经网络模型
Keras是由纯python编写的基于theano/tensorflow的深度学习框架。Keras是一个高层神经网络API,能够把你的“idea”迅速转换为结果。
实验采用神经网络模型如图4所示。
本次实验通过改变神经网络隐层和神经元的个数,得到最优的模型。
⑴ 模型构建
import tensorflow as tf
model.add(tf.keras.layers.Dense(i,input_shape=(j,),
activation='relu'))
model.add(tf.keras.layers.Dense(3,activation='softmax'))
⑵ 寻找最优的网络层数及神经元个数
建立2层神经网络,改变隐藏层神经元个数,模型训的练集及测试集准确率如图5所示。
由图5可知,当隐层神经元的个数为14的时候,模型的准确率最高,测试集的准确率高达91%。接下来改变神经网络层数,经过实验研究发现,多层隐藏层和单层隐藏层实验结果相差不大,因此,最终模型定义2层神经网络,隐藏层的神经元个数为14。
3 结束语
本文针对大数据从业人员就业收入问题,搭建了新型神经网络模型,用以捕捉影响就业人员收入的关键因素,借助数据挖掘技术发现提升学历是大数据从业者提高收入的关键。通过分析2020年大数据招聘信息数据,发现一线城市大数据招聘公司要远远多于二线城市,同时大数据岗位要求的学历是以本科生为主。其中,对处理后的数据建立了Keras神经网络模型,实现收入分类的准确率达90%以上,为广大从业者及潜在就业人员提供巨大帮助。但是该模型对于就业收入与公司规模、就业者年龄等特征的关系尚不能说明,对此值得进一步研究。
参考文献(References):
[1] 许新刚.高职大数据应用人才培养研究[J].无线互联科技,2021.18(3):163-164
[2] 安德里亚斯·穆勒.Python机器学习基础教程[M].人民邮电出版社,2018.
[3] 岳根霞.基于决策树算法的医疗大数据填补及分类仿真[J].计算机仿真,2021.38(1):451-454
[4] 杜威铭.决策树ID3算法研究[J].科技视界,2018.12(11):145-146
[5] 蒋子阳.TensorFlow深度学习算法原理与编程实战[M].中国水利水电出社,2019.
[6] 毛伊敏.基于信息熵与遗传算法的并行关联规则增量挖掘算法[J].通信学报,2021.3.