APP下载

基于深度学习的远程教育学生流失预测模型的建立与评估

2022-07-29

北京工业职业技术学院学报 2022年3期
关键词:神经网络建模深度

纪 娟

(1.四川开放大学,成都 610073;2.国家开放大学教育信息管理与信息系统研究中心,北京 100039)

0 引言

随着大数据时代的到来和数据挖掘技术的迅猛发展,客户流失预测模型再一次被研究者们关注。在激烈的市场竞争环境下,企业客户流失问题越来越严重。国内外对客户流失模型的研究最早应用于通信业[1],目前已广泛应用于金融、保险、邮政、商品推销等领域[2-5]。为了减少客户流失率,企业通过建立大量基于不同算法和数据分析方法的客户流失预测模型提前预测潜在的流失用户,对模型预测出的流失用户制定个性化的营销套餐,以此为策略来挽留用户。如张宇等[6]基于C5.0决策树算法以中国邮政短信服务的100多万条实际业务数据为研究对象,建立了客户流失预测模型,得出的C5.0决策树模型有较高的命中率和覆盖率,具有良好的预警功能,能帮助企业及时发现有可能流失的客户,减少客户流失率;卢美琴等[7]针对商业银行贵宾客户流失率不断提高的问题,综合应用决策树、支持向量机和贝叶斯网络3种算法分别生成流失预警子模型,再利用神经网络对3个子模型进行组合,构建客户流失预测模型,得出的组合预测模型的准确率明显优于单一模型,能帮助企业提前定位可能流失的用户,帮助银行更好地进行贵宾关系的管理。由此可见,通过建立有效、高准确率的流失预测模型,解决企业客户流失问题是目前市场上成熟有效的策略。

国内教育研究者们一直关注学习者的流失问题,也积累了一些研究成果。与金融和通信行业相比,我国关于学习者流失预警模型的研究成果较少,这些研究成果集中在辍学预测模型上,即根据学习者的课程学习行为数据,预测未来退出课程学习的概率。如孙霞等[8]从课程学习行为数据中自动提取有用的特征,使用卷积神经网络的长短期记忆模型,动态预测不同时间阶段的学习者辍学率。郭文锋等[9]以学习行为数据为基础,使用二元逻辑回归模型,预测学习者退课率。卢晓航等[10]在课程数据基础上提取19个特征,使用机器学习算法构建滑动窗口模型,动态预测学习者辍学率。

从在线学习者的完整学业流程来看,学习者的课程学习行为只是学业中的一个重要业务,仅根据课程学习行为数据建立流失预测模型,则使预判学习者流失的因素存在片面性和不完整性。因此,笔者在分析远程教育学生核心业务的基础上,通过量化学生在核心业务上的活跃度,加入可以影响学生流失的关键基础属性,使用深度学习算法,建立一套基于深度学习的远程教育学生流失预测模型,为全面和深入地分析远程教育中学习者的流失因素提供科学依据。

1 深度学习算法

人工神经网络是客户流失预测中常用的一种算法,而深度学习(DeepLearning,DL)是人工神经网络的延伸和发展,是一种拥有多隐层的人工神经网络算法。该算法通过模拟人脑,多层、逐级地抽取信息特征,最终获得能够较好地表示输入数据的特征[11]。2006年,Hinton等[12]提出的深度置信网络(DBN)是当前深度学习算法的框架,打破了深层神经网络难以有效训练的僵局。

深度学习是从已标注分类的实验数据中学习类似人脑处理信息的神经结构,实现实验数据的自动分类的过程[13]。深度学习网络内部应用了激活函数、损失函数、神经单元误差反向传播法、梯度下降法等多种数学工具,具备严谨的科学性。通过不断地计算数据和损失,得到可以用于预测或分类的神经网络模型[14]。目前,深度学习算法大多是基于DNN,它分为输入层、输出层和隐藏层,网络的每一层都由许多神经元组成,层与层间采用全连接结构[15]。

深度学习算法从人工神经网络算法发展而来,其本质是含有多隐层的神经网络。它的思想来源于人脑的启发,从信息处理角度出发对人脑神经元网络进行抽象,建立简单模型;它的工作原理借鉴于人脑的视觉机理,从原始信息开始低层提取特征,逐渐向高层迭代提取特征,层级越高特征越抽象;它的动机是通过构建具有多隐层的机器模型,由此模型对海量数据进行训练,由机器学习获取更加有效的特征,从而最终提升分类和预测的准确性。

2 基于深度学习的远程教育学生流失预测模型建模流程

笔者研究的目标是使用多隐层的人工神经网络算法,建立远程教育本科学生流失预测模型。与使用决策树、回归分析和人工神经网络等算法建模的流程一样,基于深度学习算法建模主要有理解数据、清洗数据、建立基于深度学习的流失预测模型和评估模型4个步骤。其建模流程图如图1所示。

图1 基于深度学习的建模流程图

3 预测模型的构建步骤

3.1 理解数据

理解数据是建立流失预测模型的关键步骤,其主要目的是对远程教育本科生的相关数据进行分析和研究,在此基础上确定目标建模数据,从而获取建模数据以供建模时使用。具体包括:(1)确定目标建模数据;(2)对流失学生的定义。

3.1.1 确定目标建模数据

据统计发现,近年来远程教育本科生已达到毕业年限未能按期毕业的学生人数逐渐上升。四川省近年来远程教育本专科招生数及本科未按期毕业人数统计数据,如表1所示。

表1 四川省远程开放教育本专科招生数及本科未按期毕业人数统计 单位:人

表1中,本科未按期毕业人数表示的是在当前年度学期入学的本科生已达到毕业年限还未毕业的人数。按本科毕业年限2.5年计算,2016年秋季及以前入学的学生均已达到毕业年限,但每期都存在大量未毕业的学生,且每期未按期毕业率均高于10%。从统计数据可以看出,2012―2016年本科生每期招生总数基本相同,而本科生每期未按期毕业人数则呈逐期上升趋势。这些未按期毕业的学生,如果未采取相应的挽留措施,久而久之成为流失生的可能性很大。而远程教育中,专科生的招生规模和毕业规模一直处于稳定发展期,流失率较小。因此,笔者研究的目标学生范围是2012―2016年期间入学的本科生。

确定流失预测的目标学生之后,接下来是特征工程的选择。特征工程的选择依赖于流失预测模型的类型。目前常见的流失预测模型包含基于用户属性、基于关键事件、基于负体验、基于业务黏性和基于活跃度这5种类型。其中基于关键事件的预测类型需要梳理详细的流程事件,难度较大;基于负体验的预测类型需要梳理产品使用中的负体验,这与远程教育中学生主体关联不大;活跃度是界定用户流失的最直接明了的指标,在数学模型中这样的指标具有优越性,但是,活跃度是结果,是因变量,在解释形成流失的原因方面存在一定的劣势,因此基于活跃度的流失预测意义不大;而基于业务黏性的流失预测模型主要分析用户在核心业务功能上的活跃度表现,模型既保留了最优指标,又具有自变量元素。综合考虑,采用基于业务黏性的流失预测模型。

基于业务黏性的流失预测模型重点在于定义核心业务和活跃行为。结合远程教育本科生的业务范畴,确定学生的核心业务为入学、注册和考试3个方面,各核心业务具有的活跃行为是入学以来课程注册后缴费的行为、完成各种类型考核后获得成绩的行为和最后一次课程注册行为。通过量化行为生成活跃度属性,最终组成模型特征工程的第1部分内容。深度学习算法具有逐层迭代提取特征的能力,为了体现它在特征工程方面的优越性,加入了可以影响学生流失的关键基础属性作为特征工程的第2部分内容。因此,基于深度学习的流失预测模型的最终特征工程包括学生的基础属性和核心业务的活跃度属性。其中,学生的基础属性包括:学生的性别、出生日期(年龄)和身份证号(学生户籍所在地类型);核心业务的活跃度属性包括:入学学期数、最近一次课程注册学期距离本期的学期数、已交课程注册费用、获得及格成绩课程门数。特征工程选项和释义如表2所示。

表2 流失预测模型的特征工程表

3.1.2 定义流失学生

学籍库中学生的学籍状态属性记录了学生的状态,此属性具有明确的流失记录值。但是,只通过学籍状态属性来定义学生流失是不全面的,这是因为此记录行为属非必要行为,在系统中与其他业务没有必要的流程关联性,并不是所有的业务人员在实际操作时都完成了此项操作,从学生的相关数据分析也验证了上面的结论。笔者以学籍状态为条件对本科学生分组后,通过增加时间节点和部分核心业务行为指标来定义流失。具体内容如下:

(1)获取2012―2016年入学的本科生的学籍状态,根据学籍状态将学生分成3组:已经毕业的学生、在籍学生和其他状态学生。其中,学籍状态为已经毕业的是已经顺利完成学业且获得毕业证书的学生,这部分学生定义为非流失生;学籍状态为其他的学生定义为流失生;学籍状态为在籍的学生流失状态待定,需要增加时间节点等信息确定。

(2)明确在籍学生的流失状态。增加2个关键信息:最近一次注册课程信息距离本学期的时间lRCtime和已经获得学分的课程数目tCount。当lRCtime>6个学期,定义学生为流失状态;当lRCtime≤6个学期,且获得学分的课程总数tCount≤20,定义学生为流失状态;当lRCtime≤6个学期,且获得学分的课程总数tCount≥20,定义学生为非流失状态。

3.2 清洗数据

为了提高训练模型时模型的执行效率,需要在外部环境下对数据进行清洗,包括标准化数据、填补建模数据的缺失值、数据转换和数据不平衡等预处理。笔者使用SQL语言在数据库环境下对建模数据预处理。主要有以下内容:

3.2.1 标准化学生户籍所在地信息

身份证号是学生身份的唯一标识,在注册信息时必须用身份证号、护照、军官证或其他能代表学生唯一身份的证件注册。因此,将学生的户籍所在地类别标准化处理为省内、省外、外籍和其他4种类别,并将这4种类别的数据类型转化为数值型数据,分别用1~4表示。

3.2.2 填补建模数据缺失值

空值会造成模型不能正常训练,需要对模型的所有输入值进行填补处理。学生的身份证号、出生日期是非空项,不需要替换,学生注册费用和学生已获得及格成绩的课程门数依据学生的行为获取,存在缺失值,填补这2项的缺失值为0。

3.2.3 计算转换数据

包括:(1)根据出生年月值计算年龄;(2)根据最后一次课程注册学期值计算最近一次课程注册时间距离本学期的学期数;(3)根据入学学期值计算入学时间距离本学期的学期数。

3.2.4 处理不平衡数据

根据前文提到的相关条件提取2012—2016年期间入学的学生数据,发现流失的学生有8 856 人,非流失的学生有64 641 人,流失和非流失学生数之间存在较大的差距,在数据上存在数据不平衡问题。为了使模型预测更有意义,减少非流失学生数,只选取非流失学生数中的10 000 条数据,加上流失学生数,最终建模数据集有18 856 条。

3.3 建立模型

笔者研究的深度学习算法采用1个输入层、2个隐藏层和1个输出层的全连接神经网络,使用Keras高级Python API快速构建和训练基于深度学习的流失预测模型,使用Tensorflow深度学习框架作为它的后端,使用Tensorboard将模型可视化。基于深度学习的流失预测模型的结构,如图2所示。

图2 流失预测模型结构图

从图2中可以了解网络模型的整体结构、数据流的方向和大小。模型实现的关键步骤具体描述如下。

3.3.1 拆分建模数据

Dense_input是最低层,是建模数据的入口。为了防止模型过拟合,从建模数据集中随机抽取67%的数据作为训练数据,用来训练模型的参数;其余33%的数据作为验证数据,用来检验模型的性能。使用Sklearn拆分数据集后训练数据有12 633 条,测试数据有6 223 条。

3.3.2 搭建神经网络模型

使用Keras搭建基于深度学习的神经网络模型,可以快速实现模型,包括:选择模型类型、构建模型的网络层、编译模型、训练模型和预测。

构建模型的网络层包括建立神经网络的输入层、2个隐藏层和输出层,并设置每层的神经元数和激活函数的类型。网络的输入层有7个神经元,分别对应建模数据中的7个特征属性;网络的第1个隐藏层dense_1有12个神经元,网络的第2个隐藏层dense_2有8个神经元,这2个隐藏层的激活函数都是非线性的ReLU函数;由于本流失预测是二分类问题,因此,网络的输出层只有1个神经元,它的值是0或1,且输出层的激活函数是Sigmoid函数。

编译模型是对网络的学习过程进行配置,包括设置模型的优化方式为Adam、指定损失函数为Binary_crossentropy和指定衡量模型的性能metrics指标为accuracy。

3.3.3 评估模型性能

Tensorboard是Tensorflow内置的一个可视化工具,能够有效地展示程序在运行过程中的结构图和各种指标随时间的变化趋势,从而帮助研究者们理解深度神经网络内部的组织、结构和其训练过程。模型深度学习的目标是让准确率尽可能地提高,而损失尽可能地降低。通过Tensorboard的标量面板,观察训练数据的准确率提高过程如图3所示;训练数据的损失下降过程如图4所示;测试数据的预测验证准确率如图5所示;测试数据的预测验证损失变化趋势如图6所示。

图3 流失预测训练数据准确率提高过程图

图4 流失预测训练数据损失下降过程图

图5 流失预测验证数据准确率图

图6 流失预测验证数据损失变化趋势图

从图3~图6可以观察到模型在150 次训练过程中,其学习目标是朝着理想的状态在进行,在第150 次训练后,其训练数据的准确率提高到0.979 5,训练数据的损失减少到0.053 4,验证数据的准确率提高到0.970 1,验证数据的损失减少到0.077 1。

3.4 评估模型

模型训练好后,需要从准确率、召回率和精确率3个方面评估模型的效果。模型评估的详细结果如表3所示。

表3 流失预测标量图

表3中,第2行是关于流失预测的3个评估指标的值,第3行是关于非流失预测的3个评估指标的值。从表3中可以看出,无论是对流失的预测,还是对非流失的预测,评估指标值较高,表示模型效果较好。

4 结论

远程教育本科招生形势一直处于不理想状态,且本科学生未按期毕业人数居高不下,为了减少流失学生并缓和招生压力,建立高效的本科学生流失预测模型迫在眉睫。笔者阐述了深度学习算法和深度学习框架,在理解业务数据的基础上,确定了基于核心业务黏性和学生基础属性的特征工程,采用Tensorflow深度学习框架构建了包含2个隐藏层的深度神经网络,借助Tensorboard工具对深度神经网络可视化和性能评估。评估模型表明:构建的基于深度学习的学生流失预测模型达到了理想的预测效果。但是,研究存在着2点不足:(1)对流失学生的定义,主观性判断较多;(2)基于业务黏性的核心指标数不多。在下一步的研究中,可以从采用逻辑回归模型定义流失学生、增加更多的基于业务黏性的核心指标和隐藏层数等方面改进及优化模型,进一步提高模型预测的准确率。

猜你喜欢

神经网络建模深度
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
深度理解一元一次方程
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
深度观察
深度观察
基于PSS/E的风电场建模与动态分析
深度观察
不对称半桥变换器的建模与仿真
基于神经网络的拉矫机控制模型建立