基于校园消费卡流水数据的高校贫困生识别方法与流程

文档序号:18143078发布日期:2019-07-10 11:17阅读:812来源:国知局
本发明属于高校贫困生识别领域,更具体的说,涉及一种基于校园消费卡流水数据的高校贫困生识别方法。
背景技术
:贫困生资助工作是高校人才培养工作的重要组成部分,关乎学生的成长成才、学校的稳定与发展、社会的和谐与进步。然而,传统的高校贫困生资助工作在取得巨大成就的同时,也存在着一系列弊端。随着时代的进步,新时期对高等学校贫困生扶助工作提出了更高的要求:提高国家资助政策的精准度,依托国家教育管理信息系统建设平台,确保国家学生资助、奖补等优惠政策真正落实到每一个需要帮扶的学生身上。如何做到精准认定是实现高校精准扶贫的重要基础。高校贫困生资助精准化的核心:精准识别贫困生、按不同贫困等级进行分级资助并实现动态监管以及精准评估。很多高校都利用信息化平台建立起了自己的校级信息化建设标准,实现了数据共享,但缺乏对海量数据的有效利用。大数据作为计算技术的最新形态,为我们开展高校贫困生精准资助研究提供了新的视角和方法。如何利用高校已经建设完毕的各种管理系统所产生的基础数据,从中充分挖掘出有价值的信息,来帮助精准识别或验证贫困生,成为高校学生管理工作亟需迫切解决的重要课题之一。罗华群在对校园卡相关数据的采集、预处理的基础上,建立起原始数据库分析相关数据可行性,说明了数据挖掘用于校园一卡通数据分析对高校学生工作管理的合理、高效、客观性。曾秋凤使用microsoftanalysisservice建立了数据仓库,并尝试使用k-means聚类方法研究学生消费行为规律,结果显示与事实大致吻合。董新科等人提出四个指标作为分析的依据,利用weka中多种常用聚类算法对一卡通数据进行了实验,提出k-means算法最适合做校园一卡通数据的数据聚类挖掘。陈晓通过对某高校多个部门管理系统数据进行分析处理并结合已有的贫困生认定办法,确定了贫困生认定的三大指标(经济情况、家庭情况、学生情况)及7个小指标,运用加权约束的决策树方法建立起了贫困生认定决策树。邵为爽选取了14个关键指标,并使用excel建立起经济困难学生数据库。在应用基于粗糙集的rosetta软件对决策表进行属性约简的基础上,建立了粗糙集-bp神经网络相结合模型。饶亮给出了一种改进关联规则apriori算法,应用于基于校园一卡通数据建立起的综合数据库,对贫困生进行认定。周红等人选取了学生半年校园一卡通每月消费次数和人均消费金额2个主要分类特征,采用svm对学生校园一卡通的消费数据进行分析,将学生按贫困与非贫困分类。然而,虽然已有基于校园消费卡流水数据的高校贫困生识别方法的研究,但是缺乏分类特征提取的方法,无法进一步提高识别的精准度。技术实现要素:本发明主要解决的技术问题是提供基于校园消费卡流水数据的高校贫困生识别方法,独创分类特征提取,进一步提高识别的精准度。为解决上述技术问题,本发明基于校园消费卡流水数据的高校贫困生识别方法包括如下步骤:步骤一、获取学生校园消费卡流水数据,建立sqlserver数据库;步骤二、利用核主成分分析方法选取多个分类特征;步骤三、基于步骤二选取的分类特征,建立randomforest分类器,并利用训练数据进行训练;步骤四、基于步骤三获得的randomforest分类器,建立用于高校贫困生识别的预测模型。作为本技术方案的进一步优化,本发明基于校园消费卡流水数据的高校贫困生识别方法所述的多个分类特征包括至少如下8个:月消费总额、月最大消费额、在线消费额、水费、输入密码次数、在线消费次数、月充值额和月最大充值额。作为本技术方案的进一步优化,本发明基于校园消费卡流水数据的高校贫困生识别方法中利用核主成分分析方法选取多个分类特征的具体步骤为:s1、将所获得的学生校园消费卡流水数据的n个指标,每一指标有m个样本,写成一个m×n维的输入矩阵xm×n,其中,xmn为学生消费数据中指标n的第m个样本,m和n均为大于1的自然数;s2、选定高斯径向核函数,计算m行m列核矩阵k,其中,μ为xmn的最大值,“×”表示两个矩阵叉乘,xmn为学生消费数据中指标n的第m个样本,s3、修正核矩阵得到k′,其中,a为m行m列的单位矩阵;s4、计算k′的特征值λ1,...,λm:通过k′的转置矩阵,将对称矩阵转换为近似对角矩阵,主对角线元素为λ1,...,λm,其余元素为0,近似对角矩阵中主对角元素即为特征值;s5、计算特征值的累积贡献率bm,bm=λm/(λ1+...+λm);s6、给定提取效率p,选取bm≥p对应的关键指标。作为本技术方案的进一步优化,本发明基于校园消费卡流水数据的高校贫困生识别方法中选取p为30%来确定关键指标用来建立和训练分类器。作为本技术方案的进一步优化,本发明基于校园消费卡流水数据的高校贫困生识别方法中通过雅克比迭代方法计算对称矩阵的特征值。一种基于校园消费卡流水数据的高校贫困生识别方法的有益效果为:1)建立sqlserver数据库,便于数据处理;2)利用核主成分分析方法实现了贫困生的关键特征提取;3)建立了基于randomforest的分类预测模型,进一步提高识别的精准度。具体实施方式本发明属于高校贫困生识别领域,更具体的说,涉及一种基于校园消费卡流水数据的高校贫困生识别方法,独创分类特征提取,进一步提高识别的精准度。所述基于校园消费卡流水数据的高校贫困生识别方法包括如下步骤:步骤一、获取学生校园消费卡流水数据,建立sqlserver数据库;步骤二、利用核主成分分析方法选取多个分类特征;步骤三、基于步骤二选取的分类特征,建立randomforest分类器,并利用训练数据进行训练;步骤四、基于步骤三获得的randomforest分类器,建立用于高校贫困生识别的预测模型。其中,sqlserver数据库是一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比、便于数据处理等。利用核主成分分析方法选取多个分类特征的具体步骤为:s1、将所获得的学生校园消费卡流水数据的n个指标,每一指标有m个样本,写成一个m×n维的输入矩阵xm×n,其中,xmn为学生消费数据中指标n的第m个样本,m和n均为大于1的自然数;s2、选定高斯径向核函数,计算m行m列核矩阵k,其中,μ为xmn的最大值,“×”表示两个矩阵叉乘,xmn为学生消费数据中指标n的第m个样本,s3、修正核矩阵得到k′,其中,a为m行m列的单位矩阵;s4、计算k′的特征值λ1,...,λm:通过k′的转置矩阵,将对称矩阵转换为近似对角矩阵,主对角线元素为λ1,...,λm,其余元素为0,近似对角矩阵中主对角元素即为特征值;通过雅克比迭代方法计算对称矩阵的特征值。s5、计算特征值的累积贡献率bm,bm=λm/(λ1+...+λm);s6、给定提取效率p,选取bm≥p对应的关键指标。选取p为30%来确定关键指标用来建立和训练分类器。多个分类特征包括至少如下8个:月消费总额、月最大消费额、在线消费额、水费、输入密码次数、在线消费次数、月充值额和月最大充值额。为了验证上述方法选取的分类特征以及分类器对于高校贫困生识别的精准度,本发明中采用如下指标进行评价。召回率(recall)越高,表明分类器在该类别上漏掉的文本越少,分类器性能越好;准确率(precision)越高,表示分类器在该类别上正确分得的文本数越多。假设现有一类别,对该类别中的文本进行分类:表1-1分类系统分类情况实际属于该类别数量实际不属于该类别数量判断属于该类的数量ab判断不属于该类的数量cd则,准确率召回率一般来说,准确率反映分类器的准确性,召回率反映了分类器的完备性,评价标准釆用哪个取决于用户侧重的目标,这两个目标通常情况下是互补的,单纯提高其中一个标准会导致另一个标准的下降,因此大多数分类器需要在二者之间做些折衷,以免其中某个标准过低。f-measure将两者结合起来进行性能评价f-measure的数学公式为:fprate为原本错的预测为对的比例:tprate为原本对的预测为对的比例:roc曲线为(fp-rate,tp-rate)的曲线。roc曲线越接近左上方,说明算法的分类效果越好。本文中weka的结果同时会提供roc的值,即可以替代auc(areaundercurve),为roc曲线下的面积,面积的数值区间为(0,1],越接近1说明分类器的效果越好,等于0.5说明分类器和随机分类的效果一致。prc曲线为precision和recall的曲线,其意义和roc曲线一样。本发明也利用weka软件计算结果给出的prc的值。马修相关系数如下,为进一步阐述上述方法,下面结合具体实例说明本发明的设计思想。本发明以某高校6个月的学生饮食、用水等在线消费记录作为数据集,建立起包含32个属性的原始sqlserver数据库。其中,数据中已经过人工鉴定的贫困生为197人。通过核主成分分析方法,提取出8个较为重要的分类特征:月消费总额、月最大消费、在线消费额、水费、输入密码次数、在线消费次数、月充值额、月最大充值额,然后在sqlserver数据库中对数据进行了相应的预处理。选用weka软件利用训练数据对randomforest进行训练,基于6个月数据设计了多组分类测试实验。最后,建立了基于randomforest分类器的预测模型,并基于新建数据集进行了预测分析,得到了较高准确率的预测结果,从而验证了分类模型以及所选取的分类特征的有效性。1)数据源的选择本发明中所用的数据来源于哈尔滨某高校的2016年1月至6月所有本科学生饮食、用水、在线消费的刷卡记录,总计近700,0000条。其中,每月的刷卡记录数如下表所示:201601201602201603201604201605201606582,408147,4311,048,5751,048,5751,048,5751,048,575原始数据包含32个属性,即32个字段。其中,已经过人工鉴定的贫困生为197人。2)属性集分析与构建通过对收集的32个字段进行核主成分分析分析,可以从以下几个属性对贫困生进行识别:月消费、月最大消费、在线消费及次数、水费、输入密码次数、月充值额和月最大充值额。并且,找出能对贫困生分类产生影响的属性,为以下6列:nofromaccountcardbalancetranamtresumename序号账号余额交易额说明姓名其中,月消费和月最大消费可以从交易额里负值加总以及最小值获得,在线消费、在线消费次数、水费以及输入密码次数需要详细区分resume里的文本信息,而月充值额和月最大充值额则从交易额里的正值加总以及正值最大值得到。最终确定8个分类特征,分别为:月消费总额、月最大消费额、在线消费额、水费、输入密码次数、在线消费次数、月充值额和月最大充值额。3)数据预处理为了统计与计算需要,首先将excel表格导入sqlserver数据库中,建立贫困生姓名表nm,然后导入201601-201606月份的数据,并将其命名为s1-s6。接着,利用以下sql查询语句,得到f1-f8个特征值。%%姓名,消费总额,月最大消费额,在线消费,水费,输入密码次数,在线消费次数usehitselects1.name,-sum(s1.trans)astotal,-min(s1.trans)asmax,-sum(casewhens1.trans<0ands1.resume='eposonlineconsume'thens1.transend)ascon,-sum(casewhens1.trans<0ands1.resumeisnotnullands1.resume!='eposonlineconsume'thens1.transend)aswater,sum(casewhens1.resume='持卡人输了消费密码!'then1else0end)ascode,sum(casewhens1.resume='eposonlineconsume'then1else0end)asonlinefroms1,nmwheretrans<0ands1.name=nm.namegroupbys1.nameorderbys1.name%%充值总额,最大充值额usehitselects1.name,sum(s1.trans)astotal,max(s1.trans)asmaxfroms1,nmwheretrans>0ands1.name=nm.namegroupbys1.nameorderbys1.name最后,在每个月份的数据空间上添加label,贫困生为1类,正常为0类。为了避免类不平衡造成的分类结果不具有解释性或掩盖1类数据量小的特点,在0类数据选择上,本文选取剩余学生中top200的数据量作为正常类。查询语句如下:%%姓名,消费总额,月最大消费额,在线消费,水费,输入密码次数,在线消费次数usehitselecttop(200)s1.name,-sum(s1.trans)astotal,-min(s1.trans)asmax,-sum(casewhens1.trans<0ands1.resume='eposonlineconsume'thens1.transend)ascon,-sum(casewhens1.trans<0ands1.resumeisnotnullands1.resume!='eposonlineconsume'thens1.transend)aswater,sum(casewhens1.resume='持卡人输了消费密码!'then1else0end)ascode,sum(casewhens1.resume='eposonlineconsume'then1else0end)asonlinefroms1,nmwheretrans<0ands1.name!=nm.namegroupbys1.nameorderbys1.name%%充值总额,最大充值额usehitselecttop(200)s1.name,sum(s1.trans)astotal,max(s1.trans)asmaxfroms1,nmwheretrans>0ands1.name=nm.namegroupbys1.nameorderbys1.name由于,后面的充值总额和最大充值额单独查询,其学生姓名结果与前6个特征不能保证一直,因此,要将二者查询结果的姓名一一对应,才能得到正确的正常类数据。4)实验结果及分析(1)分类经过上述处理,得到的8个分类特征如下:其中,1类为贫困生,0类为普通生。在贫困生分类系统中,对数据进行如下分类:表3分类系统中的贫困生分类情况实际为贫困生实际为非贫困生判断是贫困生(p)tpfp判断是非贫困生(n)fntn(2)分类结果利用weka软件对数据进行训练。基于6个月数据,依次利用分类器naivebayes、liblinear、knn(k=1、2、3)、决策树j48、randomforest进行分类,得到的各个分类器的分类结果准确性如下:1)201601组数据处理结果weka.classifiers.trees.randomforest===detailedaccuracybyclass===指标tp-ratefp-rateprecisionrecallf-measuremccrocareaprcareaclass0.9900.0110.9900.9900.9900.9791.0001.00000.9890.0100.9890.9890.9890.9791.0001.0001weightedavg0.9900.0100.9900.9900.9900.9791.0001.0002)201602组数据处理结果weka.classifiers.trees.randomtree==detailedaccuracybyclass===指标tpratefprateprecisionrecallf-measuremccrocareaprcareaclass0.9900.0050.9950.9900.9920.9841.0001.00000.9950.0100.9890.9950.9920.9841.0001.0001weightedavg0.9920.0080.9920.9920.9920.9841.0001.0003)201603组数据处理结果weka.classifiers.trees.randomforest===detailedaccuracybyclass===指标tpratefprateprecisionrecallf-measuremccrocareaprcareaclass0.9850.0001.0000.9850.9920.9851.0001.00001.0000.0150.9851.0000.9920.9851.0001.0001weightedavg0.9920.0070.9920.9920.9920.9851.0001.0004)201604组数据处理结果weka.classifiers.trees.randomforest==detailedaccuracybyclass===指标tpratefprateprecisionrecallf-measuremccrocareaprcareaclass0.9950.0110.9900.9950.9930.9851.0001.00000.9890.0050.9950.9890.9920.9851.0001.0001weightedavg0.9920.0080.9920.9920.9920.9851.0001.0005)201605组数据处理结果weka.classifiers.trees.randomforest===detailedaccuracybyclass===指标tpratefprateprecisionrecallf-measuremccrocareaprcareaclass0.9900.0001.0000.9900.9950.9901.0001.00001.0000.0100.9901.0000.9950.9901.0001.0001weightedavg0.9950.0050.9950.9950.9950.9901.0001.0006)201606组数据处理结果weka.classifiers.trees.randomforest===detailedaccuracybyclass===指标tpratefprateprecisionrecallf-measuremccrocareaprcareaclass0.9950.0050.9950.9950.9950.9901.0001.00000.9950.0050.9950.9950.9950.9901.0001.0001weightedavg0.9950.0050.9950.9950.9950.9901.0001.000randomforest在6组数据集中均表现为最佳,普遍预测的准确率均在99%以上最高达99.5%。对于roc指标,randomforest表现基本趋近于1,比其他所有分类算法分类效果好。选取randomforest建立的分类模型作为贫困生识别的分类模型,对新数据进行预测。(3)预测与结果上文中已经得到,分类器randomforest在数据集上的综合分类效果最好,randomforest可作为最终的分类模型。为了验证此分类模型的和8个分类特征的有效性,以及正确预测新数据的类别属性的能力,以保证该分类算法对于其他贫困生数据也具有一定的鉴别功能和可拓展性,继续对其预测效果进行了评估。以第六组数据为模型,从前5个月的数据选择一些组成新的数据为testset,进行预测。给出新的一组数据如下:利用randomforest预测结果如下表所示。其中,label列是真实值,default-label列是为了预测所需,随意定义的,可以全部为1或者全部为0,predictedlabel是利用分类模型给出的预测结果。labeldefault-labelpredictedlabel111111111111111111111111111111010010010010010010010010010010预测值与真实值相等的比例就是预测结果的准确率,从预测总结果中可得,针对新的预测数据,所建立的分类模型及选取的分类特征准确率为100%,判断真实贫困生的精准度为100%,判断非贫困生的精准度为100%,10个虚假和10个真实数据全部判断正确。结果说明,分类器randomforest以及选取的8个分类特征对于新的数据具有较高的适应性和有效性。从而验证了本发明方法是可行的。当然,上述说明并非对本发明的限制,本发明也不仅限于上述举例,本
技术领域
的普通技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1