基于数据挖掘技术的考试作弊风险预警研究
摘要:采用数据挖掘技术对广州科技职业技术学院已毕业的2009级~2013级5个年级的学生信息进行分析评估。利用SPSS Modeler挖掘工具中的Apriori关联规则模型对预处理后的数据进行挖掘,发现潜藏其中有应用价值的规则。最后将所挖掘出的规则进行分析解释,将其应用到教学改革当中,对具有潜在作弊风险的学生进行教育引导,形成考试作弊的预警机制,降柢学生作弊辍学风险,提高学校教育教学质量。
关键词:数据挖掘;Apriori;考试作弊;预警
中图分类号:TP311.1 文献标识码:A 文章编号:1671-1580(2017)09-0120-03
一、数据挖掘技术概述
数据挖掘技术是从不同的角度分析数据并将其归总为有用信息的过程——可以利用其以增加收入,降低成本或二者兼有之。虽然数据挖掘是一个相对较新的术语,但其技术却不然,早在数据挖掘一词出现的很多年前就有公司利用强大的电脑来筛选大量的超市扫描仪数据,并以此来分析市场研究报告。
一谈到数据挖掘应用就不得不提到经典的商业零售之啤酒与尿片关联分析销售规则。就是人们在大量的购物清单的分析中发现,一般购买啤酒的客户也会同时购买尿片,这可以启发零售商有针对性地将这两样东西放同一个地方或附近以增加销售量,事实证明这是一种效果显著的销售决策。
数据挖掘包括多种实现算法,不同的算法适用于不同的数据及分析角度,一般较为复杂的挖掘系统会以几种算法相结合的方式运行。数据挖掘算法技术包括以下几种常见的算法。
(一)关联规则
关联规则是一种规则,它意味着(如“一起出现”或“一个事件的出现必然包含另一个事件”)在数据库中的某些关联关系。
(二)遗传算法
遗传算法依靠其模仿生物的方法,常用于为运营商解决最优化和搜索问题。
(三)神经网络
神经网络近年来备受关注,它以模仿动物神经网络的行为特征运行在自学学习的数学模型基础上,为解决大型的负责问题提供了一种相对简单有效的方法。
(四)决策树
它是一种决策支持工具,用类似于树的图形或模型表示决策或可能的输出结果。
二、关联规则挖掘算法Apriori
关联规则是数据挖掘算法中发现属性之间关联性的基于规则的机器学习方法,它主要用于发现“一起出现”或一个事务与另一事务之间出现的必然联系。它的目的是利用识别措施来发现数据库中有趣的关系,发现强规则。
Agrawal等人对关联规则挖掘问题的定义为:设数据库即所有交易的集合为D:{t1,t2,t3…tn},n为交易记录数。所有项目(属性)的集合为I-{i1,i2…im},m为项目(属性)数量。在数据库D中,每条记录都有唯一的m,记录里所包含的项目(属性)都在集合I中。而规则的定义为:X→Y,且x,Y∈I。
每条规则都由两个或两个以上的项目(属性)组成,X和Y,其中X称为规则前项,Y称为规则后项。
例如,在超市购物时,有一个交易记录为I={青菜,豆腐,酱油,盐,面包},在所有交易中选择其中5条交易记录组成一个小的数据库D(如表1所示),用一个表格表示该数据库,1表示交易中有购买该项商品,0则表示没有购买该项商品。
该数据库中的规则为{青菜,豆腐}→{盐},则表示如果顾客购买了青菜和豆腐,那么他们同时也会购买盐。
为了从所有可能的规则中找出强规则,关联规则设置了最低约束指标置信度和支持度来筛选有趣的规则。在以上规则R=X→Y中,支持度为:
Sup=(COUNT(X∧Y)/COUNT(D))*100% (1)
其中COUNT(X∧Y)為同时包含X和Y的项目(属性)交易记录总数,COUNT(D)为数据库记录数。规则的置信度为:
Conf=(COUNT(X∧Y)/COUNT(X))*100% (2)
其中COUNT(X)为包含X项目(属性)的交易记录总数。
在以上例子中,规则{青菜,豆腐}→{盐}的支持度为3/5*100%=60%,置信度为3/4*100%=75%。
Apriori关联规则通常需要满足用户指定的最小支持度和最小置信度约束,关联规则的运行程序分为两个独立的步骤:
(一)在数据库中找到所有符合最小支持度的频繁项集;
(二)在所有找到频繁项集中根据最小置信度找到强规则。
三、学生数据关联挖掘模型设计
(一)目标分析
数据挖掘的挖掘结果虽然通过数据分析挖掘才知道具体的规则方向,然而数据挖掘也有明确的挖掘主题和挖掘目标。从所收集到的各数据源进行分析挖掘找出潜在的关联关系,之后分析关联结果,并将其应用于教学决策当中。
(二)数据准备
在对数据进行挖掘之前,所有数据源所提供的数据都是杂乱无章的,或数据缺失,或存在噪声等,增加了数据的运行处理时间,降低了数据的处理效率。因此,在数据挖掘前需对数据进行整合清洗,以使挖掘效率和挖掘结果更快捷准确。
1.联接各数据源形成学生信息总表
将所收集到的数据源整理形成电子数据表,根据各数据表的主键(“学号”或“身份证号”)与外键的关系联接合并为一张有唯一主键的多属性学生信息总表。联接后清除与挖掘主题无关的属性,如“姓名”“身份证号”等。
2.数据泛化
数据泛化即将数据库中包含的数据原始概念层的细节信息从较低的概念层抽象到较高层次的过程。例如学生成绩中同专业同课程的成绩属性在0至100之间有大量的不同值,不利于数据关联挖掘,故需对数据做泛化处理。成绩在泛化时可以根据范围[90,100],[80,90),[70,80),[60,70),[0,60)依次分为优秀、良好、中等、及格和不及格5个成绩段,其他属性以此类推形成各维度的数据总表。