【基于BP神经网络的IT企业的技术型人才薪资福利分析案例6600字】_第1页
【基于BP神经网络的IT企业的技术型人才薪资福利分析案例6600字】_第2页
【基于BP神经网络的IT企业的技术型人才薪资福利分析案例6600字】_第3页
【基于BP神经网络的IT企业的技术型人才薪资福利分析案例6600字】_第4页
【基于BP神经网络的IT企业的技术型人才薪资福利分析案例6600字】_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于BP神经网络的IT企业的技术型人才薪资福利分析案例目录TOC\o"1-3"\h\u30818基于BP神经网络的IT企业的技术型人才薪资福利分析案例 191571.1BP神经网络的概念与基本原理 1161801.1.1模型的结构与特点 1136511.1.2参数选取方法 2220491.2BP神经网络模型的构建及参数选取 453511.3BP神经网络模型的解释 7135591.3.1影响因素的重要性测度 7163371.3.2专业技能之间的关联分析 875751.3.3不同工作类别的薪资福利预测 101.1BP神经网络的概念与基本原理BP(backpropagation)神经网络是1986年由Rumelhart和McClelland为首的科学家提出的概念,是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛的神经网络。BP算法的基本思想是梯度下降。它使用梯度搜索技术来最小化网络实际输出和预期输出之间的均方误差。BP网络主要用于以下四个方面:函数逼近、模式识别、分类、数据压缩。1.1.1模型的结构与特点BP网络在输入和输出层之间添加了几层神经元(即隐层),它们不直接与外界连接,但是状态的变化会影响输入与输出的关系,每层可以包含多个节点。其中,隐层通常包含一层,两层或三层。由于超过三层隐层的BP神经网络在训练时容易出现局部较小的问题,进而导致模型的局部过拟合,最终影响模型效果,因此在分析时很少使用。图1.1是一个包含3个输入节点、3个输出节点、一层隐层,且隐层中包含3个隐层节点的神经网络结构样例图。图1.1一层隐层的BP神经网络结构样例图BP神经网络中采用的传递函数是Sigmoid函数(又称S函数),它属于非线性变换函数,即输入层和输出层之间是非线性的映射关系。假设有N个输入节点,M个输出节点,该网络的含义是指从N维欧氏空间到M维欧氏空间的映射,其中,S函数的公式为:fx=1994年,石山铭和刘豹[42]已经证明神经网络建模工作量小、方法灵活且实用、结构稳定,因此适合做多变量预测,。BP神经网络具有分布式信息存储、可大规模并行处理、学习能力和对复杂环境的适应能力强、容错性和鲁棒性强等特点,因此对多变量综合预测具有更好的表现。BP神经网络具有强大的非线性映射功能和灵活的网络结构,在神经网络的理论层面和性能方面的表现相对成熟。针对不同类别的情况,可以按照需求设置网络中间层和每层包含的神经元的个数,结构不同将会影响其性能。但是,BP神经网络也具有以下主要缺陷:这些主要反映在学习速度慢,倾向于局部极小值,缺乏选择网络层数和神经元数量的相应理论指导上,并且网络推广能力有限。1.1.2参数选取方法已有研究中尚未形成成熟的方法来准确选取BP神经网络模型的参数,仅能根据经验公式来计算各个参数的大概范围,并通过多次实验后在某个特定范围内逐一调整参数取值,同时依据模型的验证结果来判断参数是否仍需要调整。输入层、输出层节点数BP神经网络的输入层、输出层中包含的节点数一般取决于研究内容的具体需求,若它是作为分类器来使用,其类别数为m,那么输入层中包含的节点数一般为m,当训练样本集中的某个值属于第j类,则要求输出为第j个输出为1,其他输出为0。输出层的节点可以根据类别来进行编码,即类别为m的输出层只要用log2输入层中包含的节点数也可以依据所需解决的问题类型及数据的表示方式来确定。如果输入层中的X是图像,则输入层中的神经元是图像或已处理图像中的特征数量。换言之,一旦确定了要解决的问题,就可以在此基础上确定输入和输出层中包含的节点数量。隐层非线性映射函数是BP神经网络的最重要特征。Lippmann在1987年提出观点:当一个神经网络具有两个隐藏层时,它适合解决任意类型的分类问题。然后,罗伯特·赫希特·尼尔森(RobortHecht-iNelson)在基于数学上Weierstrass的两个逼近定理,并于1989年证明封闭区间的所有连续函数都能利用具有隐层的BP神经网络来逼近。这表明在实际应用中,选择一个三层BP神经网络便可以实现任意的n维到m维的映射。虽然具有更多隐藏层的BP神经网络通常具有更好的拟合效果,但隐层数量的增加会导致该模型的训练时间和复杂程度增加。因此需综合考量个方面因素,并不一定隐层层数越多越好。隐层节点数隐层节点的数量主要取决于输入层节点的数量和输出层节点的数量。对于单个隐层的BP神经网络,有几种经验公式通常用于计算隐藏层节点的数量:k<in其中,k为样本数;nl为隐层中包含的单元个数,n为输入层中包含的神经元个数,当i>nnl=其中,m为输出层中包含的神经元个数;n为输入层中包含的神经元个数;α是取自[1,10]之间的常数。(3)nl=其中,n为输入层中包含的神经元个数。对隐层个数为2的BP神经网络,第一个隐层的节点数可以利用公式5-2、5-3和5-4计算,第二层隐层至少有2个隐层节点,在这个基础上,第一层多增加一个隐层节点,第二层则需增加2x2,当x=1时2x+1,当x>1时一般情况下,首先根据上述经验公式来计算隐层节点数的大致范围,然后在多次实验中连续改变参数值以确定隐藏层节点数找到最佳的层节点数。初始权重值若网络权值是一个常数,那么各个处理单元计算的输出值之间将不存在差异,导致BP神经网络无法正常训练,因此为了避免此情况出现,习惯性地将网络权值的初始值定为随机数,且该随机数通常服从均值为0,取值范围为[-0.5,0.5]之间的正态分布。学习率因子α实质上,BP神经网络的训练过程是一个调整网络权重的过程,也可以理解为是超平面逐渐向正确位置逼近的过程,且每次的移动距离是由学习率决定的。在模型训练的过程中,学习率α过小或过大都会对该模型的训练结果和准确度产生较大影响。其中,学习率α过大容易导致该网络的操作过程不够稳定,相反,学习率α过小也同样会产生不利影响,即达到预期目标的训练时间更长。因此,学习率α需要取一个与模型匹配的合适的值,通常情况下将学习率α设置在[0.7,0.9]范围之内。动量因子β在BP神经网络中,在误差平面属于平坦区域的状态时,需要引入冲量项来加快该模型的学习速度。训练模型的过程中,当模型梯度变化较小时,会自动将前一时刻的网络权值调整量再调整倍,目的是使其可以平滑学习过程中网络权值的随机更新,进而增强网络的稳定性,同时加快模型的学习速度。1.2BP神经网络模型的构建及参数选取根据BP神经网络的特点以及人才需求特征的分析维度,本研究在构建BP神经网络模型的过程中对部分变量作了相应的调整。观察所获得的招聘信息可以了解到,IT企业提供的福利内容多种多样,包括五险一金、节假日福利、带薪年假、定期体检、周六周日双休、弹性工作、交通补贴、员工旅游、餐饮补贴、通讯补贴、绩效奖金、股票期权等,这些福利没有统一的量化标准,因此难以量化参与建模分析,本研究选用提供的福利个数来代表福利情况。在此基础上,可以将最低薪资和福利个数作为BP神经网络模型的输出变量。该模型的输入变量除了前文所提及的工作类别、工作地点、最低学历要求和工作经验要求之外,还将工作性质变量作为输入变量加入其中。其中,工作性质分为“全职”、“兼职”和“实习”三种。因此,本章旨在探究各输入变量之间的关系及它们对薪资福利的影响。首先,通过前文分析所得的结论可以看出,东北与东南地区的IT企业对技术型人才的需求量和最低学历、工作经验等工作要求方面均存在一定的差异,而相同地区的不同省市之间差异相对较小,因此为了提高模型的训练速度和质量,决定将工作地点的数据转化为“东北地区”、“东南地区”新变量“工作地区_划分”的取值,该新变量将代替“工作地点”参与BP神经网络的构建和训练。另外,根据前文所构建的职位专业技能词典,选取“Java”、“HTML”、“JavaScript”、“CSS”等40个关键词词频最高的专业技能作为输入变量,其取值均为0或1。其中,取值为0表示该职位描述中未提及对该技术的要求,取值为1则表示该职位描述中提出了对该技术的要求。接着,为了确定BP神经网络的输出变量,通过计算两者的皮尔逊相关系数,对职位描述中的最低月薪与福利个数进行相关性分析,结果显示最低月薪与福利个数的相关系数为0.12,明显接近于0,这表明两个变量之间并不存在明显的相关性,因此可以将这两个变量同时作为输出变量加入BP神经网络的构建。分别绘制最低月薪和福利个数的频数分布直方图,并观察两个变量的数据分布情况,结果如图1.2所示。图1.2最低月薪和福利个数的频数分布直方图观察图5-2中可以了解到,最低月薪和福利个数均呈现出比较明显的偏态分布。为了提高模型质量,考虑对最低月薪和福利个数进行以10为底的对数变换,以此生成新变量“log最低月薪”和“log福利个数”,并使用变换后的两个变量作为输出变量参与构建BP神经网络模型。为了保证后期可以对模型质量进行有效验证,在开始训练所构建的BP神经网络模型前,按照3:1的比例将所有数据随机分配到训练集和测试集中,其中训练集中的数据是用来训练模型的,在训练结束后,分别利用训练集和测试集的数据来验证模型质量。根据前文介绍可以了解到,目前仍然缺乏可靠的方法来精确计算BP神经网络模型中的参数值,而是先利用经验公式计算出各个参数的大概范围,然后通过多次试验、对比模型验证结果,不断调整模型参数直至最后确定其取值。本研究是在查阅大量相关资料的基础上,通过对比已有研究的模型训练结果,确定了各参数的大致范围,并经过多次试验,综合衡量各个模型的拟合结果及训练所需时间,最终选取了一个包含一层具有18个节点的隐层、动量因子β为0.7、初始学习率为0.3、学习率α的取值范围为[0.01,0.30]的BP神经网络模型作为本研究的模型,该模型的基本信息如表1.1所示。表1.1BP神经网络模型基本信息估计的准确性90.413输入层74个神经元隐藏层118个神经元输出层2个神经元分析表1.1中可以得到,该BP神经网络模型的预测效果较好,准确度为90.413%,这表明对该模型的训练结果比较满意。在初步判断所构建的模型性能较好的基础上,为了获取最终选取的BP神经网络模型性能的精确结果,将训练集和测试集的数据带入模型,得到的计算结果如表1.2所示。表1.2BP神经网络模型性能测试数据结果最低月薪福利个数1_训练2_测试1_训练2_测试平均误差0.0090.0090.0000.000绝对平均误差0.1510.1510.2270.229标准差0.2180.2150.3080.307发生率334164143523334164143523观察表1.2中的数据可以看到,最终确定的BP神经网络模型在最低月薪和福利个数的综合预测方面表现较好。其中,最低月薪在训练集和测试集之间的平均误差仅为0.009,绝对平均误差仅为0.151,福利个数在训练集和测试集中的平均误差均小于0.001,绝对平均误差均不超过0.230,这说明本研究所选取的模型的拟合效果较符合预期效果。综合分析以上结果可以发现,训练集和测试集的各指标数据均较为接近,这表明该模型的稳定性较高,且没有出现过度拟合现象。因此,可以认为最终选取的BP神经网络模型比较符合预期,适合作为后续分析的工具继续运用。1.3BP神经网络模型的解释在选定并训练完成BP神经网络模型之后,需结合本研究的特点进一步解释和分析该模型,本节将利用所构建的BP神经网络模型深入探究各个因素之间的关系及其对薪资福利的综合影响。1.3.1影响因素的重要性测度首先,利用分析软件计算出BP神经网络模型中各个变量的重要性,即工作地点、最低学历要求、工作经验要求、工作性质、工作类别、工作地区_划分及40个高频的专业技能关键词,按照各变量的重要性从小到大排序并列表展示,结果如表1.3所示。表1.3BP神经网络模型各变量重要性测度序号节点重要性(%)序号节点重要性(%)1工作经验要求7.4324编辑1.802最低学历要求7.2825IOS1.793工作性质6.3526C++1.784工作类别1.5127HTML1,755Unix2.7928Socket1.756J2EE2.4829PHP1.707Hibernate2.3530Flash1.678Oracle2.2931SqlServer1.669HTTP2.2532TCP/IP1.6610Mysql2.2533设计模式1.6211CSS2.1834UI设计1.5912.NET2.1735测试方法1.5213工作地区_划分2.1636数据分析1.5114DREAMWEAVER2.1137Python1.4415Shell2.1038JavaScript1.3916Xml1.9339Spring-MVC1.3917Java1.9140JSP1.3518Ajax1.8941系统架构1.2519C#1.8842jQuery1.2420多线程1,8643云计算1.2321Sql1.8444Photoshop1.1922Excel1.8445Linux1.0323Android1.83观察表1.2中可以看到,按照重要性的大小排序的结果显示,工作经验要求、最低学历要求对最低月薪和福利个数的影响最大,重要度均超过7%,其次,工作性质和工作类别对最低月薪和福利个数的影响也比较大,重要度均在5%~7%之间,这四个影响因素的重要性测度排名最靠前,表明其对薪资福利的影响力远远超过其他因素。相比之下,专业技能对最低月薪和福利个数的影响程度较小。观察表1.3中所列举的各个专业技能的排序可以看到,它们对最低月薪和福利个数的影响重要程度的差异较小,重要度均在1.03%~2.83%之间。相较而言,对于从业人员来说,是否熟悉J2EE、HIBERNATE框架和Unix系统等,对最低月薪和福利个数的影响较大,而是否熟悉PHOTOSHOP、云计算和LINUX系统等相关技术,对最低月薪和福利个数的影响相对较小。通过分析各个变量对薪资福利的影响重要程度可以发现,相较于专业技能而言,最低学历要求、工作经验要求、工作性质和工作类别是IT企业更为重视的因素,在应聘者的专业水平基本持平时,这四个因素将是IT企业选择合适技术型人才的重要判断标准。1.3.2专业技能之间的关联分析本节将在前文所选取的高频的40个专业技能关键词的基础上,利用BP神经网络模型,深入分析各个专业技能之间的关联性,并绘制关联性超过40%的专业技能关联性网络图,如图1.3所示,其中,两个点相互连接表明这两个专业技能之间具有较强的关联性。图1.3关联性较强的专业技能网络图观察图1.3中可以了解到,Java语言与SQL语言、Oracle数据库、测试方法、TCP/IP网络协议等专业技能之间均有较强的关联性,这表明对于将Java作为主要编程语言的技术型人才来说,若能同时掌握SQL语言、Oracle数据库、测试方法、TCP/IP网络协议等技术的使用方法,将会受到IT企业的重视。同理而言,HTML与JavaScript、CSS及TCP/IP之间也具有一定的关联性,这说明对于熟练使用HTML的技术型人才来说,同时掌握JavaScript、CSS或TCP/IP技术将有助于其获得更好的就业机会,IT企业对这种多技术交叉型人才的需求较为迫切。另外,可以看到测试方法与Java、C++、Android和.NET等开发技术之间均有较强的关联性,这同样体现了IT企业对同时掌握开发技术和测试方法的技术型人才需求量较大。仔细观察图1.3中所展示的各种专业技能,可以发现其中涵盖了后端开发、移动开发、前端开发、数据库应用技术以及测试开发等多个技术领域的要求,同时这些专业技能之间的关联性都比较强,这种结果在很大程度上说明了IT企业对技术型人才的专业技能需求并不局限于某一个特定的领域,而是更加重视那些精通某一领域且熟悉相关领域的其他技术的技术型人才,对综合型技术人才的需求越来越迫切。1.3.3不同工作类别的薪资福利预测利用所构建的BP神经网络模型预测某个工作类别的技术型人才的最低月薪和福利个数,可以更加清晰地展现IT企业对某类技术型人才的需求程度,其中最低月薪越高、福利个数越多,说明IT企业对该类技术型人才的需求程度越高。本节将选取两个工作类别的技术型人才作为例子来进行其最低月薪和福利个数的预测分析。第一类IT企业的技术型人才,是在东南地区全职从事“后端开发/系统架构”工作的,拥有1-3年工作经验且具有本科学历的人才,该类人才熟悉PYTHON语言、多线程技术、MySQL数据库和SQL语言等相关技术,因此称它们为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论