基于数据挖掘的在校学生成绩预警方法与流程

文档序号:12467374阅读:411来源:国知局
基于数据挖掘的在校学生成绩预警方法与流程
本发明具体涉及一种基于数据挖掘的在线学生成绩预警方法。
背景技术
:随着经济技术的发展和人们生活水平的提高,教育已经成为了人们最为关注的领域之一,国家对于教育的投入也在逐年增长。因此,越来越多的人们走入青青校园,开始了学生生涯。毫无疑问的,在校学生的首要任务便是学习。但是现在发达的科技使得人们的娱乐方式越来越多,各类娱乐设备层出不穷,娱乐方式也日新月异,从而使得许多在校学生丢下学业沉迷其中。目前对于学生在校学习状态的反馈,一般都是老师通过学生的学习状态、外在表现等进行人为判断和反馈,其整个过程充满了主观性和不确定性。很多时候,老师由于教学事务繁忙而无法及时获取或忽视了学生的学习状态,而在学生考试失败或者学习成绩失败后才想起进行干预,这无疑事倍功半。技术实现要素:本发明的目的在于提供一种基于历史数据的、能够客观和及时为学生的学习成绩提供预警的基于数据挖掘的在线学生成绩预警方法。本发明提供的这种基于数据挖掘的在线学生成绩预警方法,包括如下步骤:S1.获取学校已毕业学生的所有m个科目的成绩数据,将成绩数据划分为n个等级,并建立相应的数据库;所述m和n均为自然数;S2.针对步骤S1得到的成绩数据,采用Apriori算法挖掘成绩数据中所有符合最小支持度计数值的频繁项集;S3.利用步骤S2得到的频繁项集构建所有潜在的规则,计算构建的所有规则的条件概率,并与最小置信度值进行比较得到满足条件的所有强关联规则;S4.对在校学生的所有成绩运用步骤S3得到的所有强关联规则进行数据运算,得到在校学生的课程成绩的预测结果,并对课程成绩预测结果不合格的学生进行成绩预警。步骤S1所述的获取学校已毕业学生的成绩数据,具体为以学院为单位进行成绩数据的获取。步骤S1所述的将成绩数据划分为n个等级,具体为按照如下规则进行等级划分:若成绩数据是分数制,则90~100分划分为等级“优良”,75~89分划分为等级“中等”,0~74分划分为等级“差”;若成绩数据是等级制,则等级A划分为等级“优良”,等级B划分为等级“中等”,等级C及以下划分为等级“差”。步骤S2所述的采用Apriori算法挖掘成绩数据中所有符合最小支持度计数值的频繁项集,具体为采用改进型Apriori算法进行频繁项集的挖掘,具体包括如下步骤:A.设置Apriori算法的最小支持度;B.扫描步骤S1建立的数据库,根据数据库的记录数设定编码长度,然后对每条记录进行扫描,将出现记录的位置置为1,未出现记录的位置置为0,从而得到该项的一个编码位串;C.在步骤B得到的编码位串中,对每个编码位串中“1”出现的次数进行统计得到第一统计数值,并将第一统计数值与最小支持度计数值进行比较,并保留第一统计数值大于或等于最小支持度的编码位串和对应的项,得到频繁项集L1;D.对步骤C中得到的频繁项集L1中的所有项进行两两连接形成候选项集C2,同时对两两连接的项的编码位串之间进行与运算从而生成新的编码位串;E.对步骤D中生成的新的编码位串中的“1”再次进行统计得到第二统计数值,并保留第二统计数值大于或等于最小支持度计数值的编码位串和对应的项,得到频繁项集L2;F.重复步骤D~步骤E,在由频繁项集Lk相互连接构建候选项集Ck+1前,统计频繁项集Lk中各单项出现在频繁项集Lk中的次数,得到第三统计数值;若Lk中某个单项的第三统计数值小于k,则将频繁项集Lk中包含此单项的项剔除,从而得到修建后的频繁项集L’k;所述k为不小于2的自然数;G.将频繁项集L’k中的各个项进行连接操作,并在连接过程中进行相连接的两个项的编码位串进行与运算,然后对生成的候选项集的Ck+1编码位串中的“1”进行计数操作得到第k+1统计数值,并保留第k+1统计数值大于或等于最小支持度计数值的编码位串和对应的项,得到频繁项集Lk+1;H.重复上述步骤F~步骤G,直至最终得到的频繁项集为空集。步骤S3所述的利用得到的频繁项集计算得到所有强关联规则,具体为采用如下步骤进行计算得到所有强关联规则:a.设置最小置信度;b.在获取的频繁项集中,对每一个频繁项集Li进行循环遍历,并取其中的第1~第i项作为条件,以剩余的项作为结论构件条件概率;所述的条件概率为取出的项的支持度数值与剩下的项的支持度数值的比值;c.将步骤b中得到的条件概率与最小置信度进行比较,保留条件概率值大于等于最小置信度的所有关联规则;所保留的关联规则即为强关联规则。本发明提供的这种基于数据挖掘的在线学生成绩预警方法,通过获取往届学生的学习成绩数据,并对获取的成绩数据进行数据挖掘和关联分析,从而得到各科成绩之间的强关联规则,并根据获得的各科成绩之间的强关联规则对在校学生的成绩进行预测和预警,因此本发明方法从客观的数据出发,能够及时和实时的对学生的成绩进行预测和预警,而且本发明方法客观,合理,科学,计算速度快,精度高。附图说明图1为本发明方法的整体流程示意图。图2为本发明方法的方法流程图。具体实施方式如图1所示为本发明方法的整体流程示意图,图2为本发明方法的方法流程图:本发明提供的这种基于数据挖掘的在线学生成绩预警方法,包括如下步骤:S1.获取学校已毕业学生的所有m个科目的成绩数据,将成绩数据划分为n个等级,并建立相应的数据库;所述m和n均为自然数;对于大学生,以学院为单位进行成绩数据的获取;将成绩数据划分为n个等级,具体为按照如下规则进行等级划分:若成绩数据是分数制,则90~100分划分为等级“优良”,75~89分划分为等级“中等”,0~74分划分为等级“差”;若成绩数据是等级制,则等级A划分为等级“优良”,等级B划分为等级“中等”,等级C及以下划分为等级“差”;S2.针对步骤S1得到的成绩数据,采用Apriori算法挖掘成绩数据中所有符合最小支持度计数值的频繁项集,具体包括如下步骤:A.设置Apriori算法的最小支持度;B.扫描步骤S1建立的数据库,根据数据库的记录数设定编码长度,比如一个学生的各科成绩为一条记录,数据库若包含n个学生的课程成绩,那么,编码的长度即为n。例如:数据库中有5个学生的记录,那么编码长度就为5;然后对每条记录进行扫描,将出现记录的位置置为1,未出现记录的位置置为0,从而得到该项的一个编码位串;首先明确“项”的概念:项就是在对成绩进行分等后,对某门课程及成绩的一个标识,例如我们将大学物理转换为S00,S01,S02,这就属于三个项,前两位标识某一课程,最后一位是根据成绩映射而来,0表示差,1表示中等,2表示优良。根据总记录数为5,我们设置编码长度为5。根据具体实施例中的表2,S00出现在第一和第四条记录中,那么其编码为“10010”;同理,S01出现在第二三条记录中,其编码为“01100”,S02为“00001”。对所有的项进行扫描编码即得到了表3C.在步骤B得到的编码位串中,对每个编码位串中“1”出现的次数进行统计得到第一统计数值,并将第一统计数值与最小支持度计数值进行比较,并保留第一统计数值大于或等于最小支持度计数值的编码位串和对应的项,得到频繁项集L1;D.对步骤C中得到的频繁项集L1中的所有项进行两两连接形成候选项集C2,同时对两两连接的项的编码位串之间进行与运算从而生成新的编码位串;举个例子,如果项A和项B的两个位串分别为“1011”和“0101”,那么操作后所生成的新的编码位串为“0001”;E.对步骤D中生成的新的编码位串中的“1”再次进行统计得到第二统计数值,并保留第二统计数值大于或等于最小支持度计数值的编码位串和对应的项,得到频繁项集L2;F.重复步骤D~步骤E,在由频繁项集Lk相互连接构建候选项集Ck+1前,统计频繁项集Lk中各单项出现在频繁项集Lk中的次数,得到第三统计数值;若Lk中某个单项的第三统计数值小于k,则将频繁项集Lk中包含此单项的项剔除,从而得到修建后的频繁项集L’k;所述k为不小于2的自然数;G.将频繁项集L’k中的各个项进行连接操作,并在连接过程中进行相连接的两个项的编码位串进行与运算,然后对生成的候选项集的Ck+1编码位串中的“1”进行计数操作得到第k+1统计数值,并保留第k+1统计数值大于或等于最小支持度计数值的编码位串和对应的项,得到频繁项集Lk+1;H.重复上述步骤F~步骤G,直至最终得到的频繁项集为空集;S3.利用步骤S2得到的频繁项集构建所有潜在的规则,计算构建的所有规则的条件概率,并与最小置信度值进行比较,保留条件概率大于或等于最小置信度的所有强关联规则,具体为采用如下步骤进行计算得到所有强关联规则:a.设置最小置信度;b.在获取的频繁项集中,对每一个频繁项集Li进行循环遍历,并取其中的第1~第i项作为条件,以剩余的项作为结论构件条件概率;所述的条件概率为取出的项的支持度数值与剩下的项的支持度数值的比值;举例说明:比如有一个频繁项集L3为ABC,那么所有可能的规则为(A→BC,BC→A,B→AC,AC→B,C→AB,AB→),像A→BC和BC→A属于两条不同的关联规则;c.将步骤b中得到的条件概率与最小置信度进行比较,保留条件概率大于或等于最小置信度的所有强关联规则的所有关联规则;所保留的关联规则即为强关联规则;S4.对在校学生的所有成绩运用步骤S3得到的所有强关联规则进行数据运算,得到在校学生的课程成绩的预测结果,并对课程成绩预测结果不合格的学生进行成绩预警。以下结合一个具体实施例对本发明方法进行进一步说明。设初始的数据库D里的往届学生的数据表1所示,设最小支持度为0.4,最小置信度为0.8。表1原始数据库大学物理电路模拟电子技术数字电路技术6172656280907891788473686971748090749293根据表1所提供的数据将表1转换为表2所示的适用于关联规则算法挖掘的形式。表2成绩数据预处理表结果下面根据关联规则的挖掘过程对所有成绩数据进行关联规则的挖掘。具体的挖掘步骤如下:扫描数据库,根据数据库的记录数设定编码的长度,然后对每条记录进行扫描,把出现某项的记录位置置“1”,未出现的记录位置置“0”,最后得到该项的一个编码位串和“1”的统计计数值。如表3所示:表3项集-编码位串-统计计数值示意表项集编码位串统计计数值S00100102S01011002S02000011S10100113S11001001S12010001S20101103S21010001S22000101S30101002S31000101S32010012在得到所有的项的编码之后,直接对每个项的位串中的“1”出现的次数进行统计计数,将统计计数值和支持度计数值进行大小比较,保留满足条件的频繁项集L1={S00:2,S01:2,S10:3,S20:3,S30:2,S32:2}。对频繁项集L1中的所有项进行两两连接操作形成候选项集C2,在此过程中同步进行项的编码位串之间的逻辑“&”运算,生成新的编码位串,举个例子,项S00和项S10的两个位串分别为“10010”和“10011”,那么操作后所生成的新的编码位串为“10010”,对新的编码位串中的“1”进行统计计数,保留满足最小支持度条件的频繁项集L2及其对应的编码位串,如表4所示:表4频繁项集L2及其对应编码位串及统计数值表在由L2相互连接构建C3操作前,对L2中各不相同的单项进行出现在不同L2中的次数进行统计计数可得{S00:2,S10:2,S20:3,S30:1},其中S30的计数值比2小,包含S30的候选项集一定不能成为频繁3项集,因此删除包含S30的L2中的项集S2030,其将不会参与构建候选频繁3项集,此时的L’2={S00S10,S00S20,S1020};对剩下的L’2项集进行连接操作,并在连接操作,并在连接的过程中进行逻辑“&”运算,得到C3={S00S10S20},生成的位串为“10010”,“1”的计数值为2,因此该项集属于频繁3项集,则可得L3={S00S10S20},再进行一次操作后L’3为空,算法终止。根据算法所得到的所有频繁项集如表5所示:表5最终的频繁项集示意表频繁项集编码位串统计计数值S00100102S01011002S10100113S20101103S30101002S32010012S00S10100102S00S20100102S10S20100102S20S30101002S00S10S20100102在获得所有的频繁项集后,对每一个频繁Lk项集,循环遍历取其中的1项,2项,直至(k-1)项,以取出的项作为条件,以剩下的项作为结论,构建条件概率,该条件概率为取出的项的支持度计数值比上剩下的项的支持度计数,将该条件概率与置信度值进行比较,保留满足条件的所有关联规则即为算法挖掘出的所有强关联规则,得到的关联规则如表6所示:表6关联规则示意表将其转换为对应的课程和相应成绩可得如表7所示的形式表7关联规则-课程对应示意表前件后件支持度置信度物理(差)电路(差)0.41物理(差)模电(差)0.41数电(差)模电(差)0.41物理(差)电路(差)+模电(差)0.41物理(差)+电路(差)模电(差)0.41物理(差)+模电(差)电路(差)0.41电路(差)+模电(差)物理(差)0.41在已经得到了所有满足条件的关联规则之后,若当前有一名在校学生的物理考试成绩被划分差,则根据表7的关联规则表可以推测,其电路和模电有极大可能也会考差,因此可以对其进行提前预警和重点关注使其避免挂科,这对于提高学校毕业率有重要意义。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1