基于Apriori数据挖掘算法的应用与实践
2020-04-30徐建军张国华
徐建军,张国华
(南京师范大学泰州学院,江苏 泰州 225300)
0 引 言
随着人工智能、大数据、云计算、数据挖掘等技术的深入发展,信息技术已成为各行各业不可或缺的工具。而教学是未来人才培养的基础学段,面对这样一个充满个性发展的时代,主动开展基于信息技术的精准教学,是教育发展的必然趋势。
精准教学[1]是学者Lindsley在20世纪60年代在学者Skinner的行为学习理论的基础上提出的一种新的教学方法。精准教学诞生之初就是用于靶向教育,其目的是通过设计测量教学过程来获取有关数据,以追踪学生的学习表现并为教学提供数据决策支持。其衡量标准主要是流畅度。流畅度是由学生对应掌握知识和技能的“准确程度”和“熟练速度”两方面组成。而传统的精准教学的监测办法是通过人工绘制测量表来分析,过于繁琐,且缺乏大数据和人工智能为支撑,结果往往不够精准。
文中采用大数据与人工智能技术,基于数据挖掘理论,采用了先进的挖掘算法[2],以多年教学过程中学生数学练习及部分模拟数据作为数据源,智能分析出学生不同学段知识点之间的关联性,及时给学生学习预警提示,给教师教学效果预测提醒,使得学生学习教师教授新知识点的时候,能够得到有价值的推送信息。
例如,学生会清楚地看到前期哪些知识点与该知识点的关联度高,影响度又是如何的,同时,教师在讲解该知识点之前,会出一个统计报表,预测常规方法教学,班级学生掌握情况,能够精确定位班级每名学生学习该知识点造成影响的前期薄弱环节,及时高效解决。
1 国内外精准教学研究现状及应用困境
1.1 国内外精准教学研究现状
经查阅相关国外文献,国外的精准教学主要研究点集中在通过具体的教学实验及案例来评估教学效果。例如Downer和Griffin两位学者的研究结果表明,精准教学对提高学生的阅读能力具备明显优势[3];而Gallagher和Stromgren两位学者的研究结果则表明精准教学对帮助数学学习困难的学生具备优势[4-5]。
在国内,精准教学研究处于起步阶段,笔者在中国知网中尝试以“精准教学”为关键词进行检索(数据截至2019年5月27日),结果为44条,相关研究成果大都集中在近两年。
比较典型的成果[6-7]有,梁美凤发表了《“精准教学”探析》;祝智庭教授发表了《信息技术支持的高效知识教学:激发精准教学的活力》;王永雄、丁德瑞等学者发表了《基于创新实践能力培养的精准分层教学》等。
由此可知,目前国内的精准教学研究总量偏少,精准教学的研究成果不多,大数据、云计算、人工智能的分析方法应用较少。
1.2 精准教学应用困境
精准教学虽然是一种有效的教学方法,但在实际教学过程中却很难应用好,分析原因主要有两点:
(1)精准教学是通过设计测量表来获取学生学习数学的行为结果,并依据测量结果进行薄弱环境的强化训练,从而提高学习质量。该方式缺乏对每名学生学习过程的有效监控,往往会忽略学生的个性化发展。
(2)精确教学缺乏先进的技术支持。精准教学主要以测量,收集学生学习表现数据为数据基础,以统计学相关知识为技术基础。而数学课程教师往往采用传统的人工管理数据方式进行分析,大多缺乏对于先进统计学,数据分析决策工具的应用,因此数据采集效率,可视化及精准化程度均不高。
2 大数据及数据挖掘技术对精准教学的影响
谁掌握数据,谁就掌握主动权,大数据的兴起正引领社会发展新变化。大数据技术必将给精准教学提供更多更先进的理论与技术支撑,促进其大力发展。
2.1 大数据技术使得数学课程中采用精准教学更为可行
随着信息技术的大力发展,教学管理系统,学生自主学习APP系统,基于微信学习平台的广泛应用,促使数学课程教育方面数据快速增长,使得学生的学习的行为,过程,状态,练习结果,成绩等成为可以被信息技术自动抓取的数据存在,这样使得获取精准教学的测量数据更为便捷和有效。
2.2 精准教学可以使用先进的数据挖掘技术
数据挖掘技术(data mining),是指从海量数据中自动发现隐藏于其中有某种关联的信息过程。在获取了精准教学的基础大数据之后,就可以采用先进的数据挖掘技术来分析每个学生的薄弱点,精准定位学生知识学习的薄弱环节,给出相应的学习方案。同时大数据支持多并发及海量数据的能力,教师就可以使精准教学规模化地应用到每名学生身上,兼顾学生的个性化发展。
2.3 大数据技术的广泛使用可以使得精准教学更加开放智能
大数据[7]一般满足容量大(Volume),多样性(Variety),速度快(Velocity),有价值(Value),真实性(Veracity)五个特性。在教育领域,大数据平台是服务于教育教学工作的综合性的信息平台,师生、家长等角色均是大数据的生产者和应用者。因此,随着大数据技术、数据挖掘技术在数学课程精准教学中的应用,学生、教师、家长等角色均可参与到精准教学过程中,可以为学生量身定制教学方案,家长随时可以掌握自己孩子的学习情况,教师可以掌握班级整体情况,教学管理者可以根据大数据把控教学改革方向等。同时大数据具备自我学习能力,随着数据量的不断增加和数据挖掘算法的不断改进,其数据分析处理能力将更加智能精准。
3 基于数据挖掘支持下的精准教学模式设计
在现有的教学环境下,数学课程教师更加倾向于使用成熟的教学模式,精准教学往往被作为是评估教学效果的策略或方法,老师们也似乎不太愿意花费多余精力来研究如何将精准教学融入现有教学中,而是照搬成熟的教学模式来使用,所以精准教学并没有被广泛采纳。此外,在信息化引领的教育变革潮流中,精准教学也因为信息技术支撑的缺失而受到广大教育工作者的冷落,缺乏活力。大数据可以突破传统教学限制,大力推动数学课程教师在思想和行为上接纳并认同精准教学,利用大数据来构建可供参考精准教学的模式,可以推动精准教学发展、促进精准教学应用。为此,文中将从精准教学目标、程序化教学过程、基于数据挖掘的评价与预测[8]三个方面,来构建数学课程大数据的精准教学模式框架,具体如图1所示。
图1 数学课程大数据精准教学模式框架
3.1 精准教学系统总体架构
精准教学信息化平台采用标准三层架构设计,其中表示层负责数据采集、修改、删除,智能设定数据挖掘算法的可信度与置信度[9]最小值,对于学生可自动提示后续可能学不好的知识点,对于老师则可自动预测该班的整体教学效果,并分析出关联的知识点。业务逻辑层主要实现关联挖掘算法,快速对大数据进行挖掘,并反馈结果。数据层主要采用主流的大数据框架Hadoop[10]以及强大的MapReduce来实现存储原始数据及并行处理,建立挖掘数据库,形成关联规则数据库,其标准三层架构如图2所示。
图2 精准教学系统整体架构
3.2 精准教学目标
明确教学目标是整个教学活动的关键,是检验教学是否成功的依据。精准教学的第一步是必须精准化教学目标。例如在《数学课程课程标准》的第二学段中关于“数的运算”中要求“探索并了解运算律,会应用运算律进行一些简便运算”,这里的“会应用”是一个相对比较笼统的词语。
在精准教学体系中,可以建立更明确更精准化的教学目标,对每个教学目标都可转化成可以被信息系统抓取的可细化和量化数据。把传统的“会应用”、“熟练掌握”等这些较为笼统的教学目标,经过细化、分解、量化之后,建立起既包含准确掌握知识技能的目标,又包含运用知识技能速度的目标,达到精准教学的“流畅度”要求的指标。
3.3 程序化教学过程
精准教学诞生于Skinner的程序化教学过程,程序化是精准教学的关键。文中基于大数据程序化教学过程,具体包括:(1)建立数学课程大数据平台,利用精准化、智能化推荐技术,根据学生的不同特点,配置对应教学资源,融入个性化的教学;(2)改进传统的教学过程,收集每位学生的学习过程数据,为下一步数据挖掘,决策和干预做好准备;(3)实施精准干预,根据大数据平台反馈的结果,结合精准化的教学目标自动判别学生是否达到要求,如果有问题,则需要干预,会自动回溯,精准定位到薄弱点及关联点,实现精准干预。
3.4 Apriori算法
3.4.1 基本定义
定义1(可信度):设I={i1,i2,…,in}是含有N项的集合,交易T是项的集合,T⊆I,D为T集合,设A是其中项集,事务T包含X,仅有X⊆T,即X包含于T,X⟹Y是关联规则表达式,且X⊂I,Y⊂I,X∩Y=Ø。
Support(X⟹Y)=P(X∪Y)={T:X∪Y⟹T,
T∈D}/D×100%=a
(1)
定义2(置信度):关联规则X⟹Y的可信度是指包含X与Y的交易数与仅包含X的交易数的比值,表示为:
Confidence(X⟹Y)=P(X|Y)=
(2)
3.4.2 Apriori算法
Apriori算法[11]是一种依据频繁项集作为先验知识[12],采用逐层扫描的迭代方案,即第k项集用来检索第(k+1)项集。具体步骤如下:首先通过检索事务(或交易)的记录,扫描出所有频繁的第1项集,并将找到的集合记为L1,依次迭代寻找出L2,L3…如此循环下去,直到找不到任何频繁的第k项集。其次利用所有的频繁集中提取的强规则,即能为用户决策提供支撑的关联规则。其相关为代码如下:
输入:D是事务数据库;min_sup是最小支持度技术阈值
输出:L是事务数据库中的频繁项集
方法:
L1=find_frequent_1-itemsets(D);
//首先找出所有频繁1项集
For(k=2;Lk-1!=null;k++)
{
Ck=apriori_gen(Lk-1)
//循环产生候选同时剪枝
For each事务tinD
{
//通过循环对D扫描进行计数
Ct=subset(Ck,t)
//调用得到t的子集
For each候选c属于Ct
c.count++;
}
Lk={c属于Ck|c.count>=min_sup}
}
Return L=得到所有的频繁集;
3.4.3 前期数据准备
以某校5(1)班60名学生为研究对象,选取数学四年级以上学期课程成绩数据为例,通过相应的数据挖掘算法分析,找到知识点的内在关联,为学生的学习,老师的教学提供数据决策支撑。为方便表述,将初步认识平面图形特点成绩表示为PMTX,认识立体图形的体积表示为LTTX,表1给出了以学号为主键成绩汇总。
表1 学生数学成绩汇总(分)
3.4.4 数据挖掘筛选、转换
该班60名学生中有1名学生转学,1名出国,后续知识点的单元无关联,因此从挖掘数据库中排除,得出有效成绩元组964条(平均每学期选取了4个知识点)。为方便数据挖掘,需要对数据进行格式化处理,成绩与等级关系如表2所示。
表2 成绩与等级关系
转换成挖掘数据如下:
根据表3,对照Apriori算法设定最小支持度为0.2,班级总人数为58名,那么最小支持人数必须达到52*0.2即11.6名,如果这个知识单元的所在等级的人数不足11.6名,则需排除在数据挖掘库中,因此设定最小支持度为0.2时选取的数据如表3所示。
表3 学生成绩汇总(人次)
3.5 基于数据挖掘的评价与预测分析
(1)对于学生的评价和预测。
通过部分真实及模拟数据,设置数据挖掘时支持度>=0.8,置信度>=0.7,利用改进数据挖掘Apriori算法,得到以下53条关联规则,具体如表4所示。
学生登录系统后,自动获得一些推送信息[13]。例如,该生第一学段的“初步认识平面图形特点”该知识点考了83分,位于‘82.5-87.5’区间,该大数据平台将预测到按传统方法学习第二学段的“认识立体图形的表面积”将75%的可能取得的分值位于‘81.0-86.0’区间,效果不理想,系统会自动回溯,精准定位影响本知识点学习的知识点,实现精准干预,学生能够及时轻松弥补欠缺知识点,减少后续影响[14]。
表4 数据挖掘结果关联规则表
(2)对于教师教学的预测和改进。
老师登录系统后,系统会给出班级学生信息,给出对本知识点造成影响的已学知识点信息[15],同时也会罗列出可能将对哪些后续知识点造成影响,并给出本知识点对于数学课程后续知识点影响程度及关联程度。如果预测班级整体学生80分以下比例(置信度≥0.75统计)占比大于等于20%,则为严重,大于等于15%为一般,大于等于5%则为轻微,如果预测影响后续知识点数目(置信度≥0.75统计)大于等于3个为严重,大于等于2个为一般,大于等于1个为轻微,老师将会看到如下类似统计表,如表5所示。
表5 知识点“认识立体图形的表面积”教学效果预测
通过对学生和教师两方面的预测和评价,注重给学生精准引导和补习前序单元知识点的缺失,又能提醒老师主动调整教学方法来实现精准教学,双方共同配合,教学效果能得到大幅提升。
4 结束语
精准教学是一种先进的教学模式,可以大大减轻学生的学习负担,提升学习效率,避免教师过度重复教学[2],在明确教学方向和内容方面具备优势,但是精准教学如果缺乏了大数据技术,人工智能,数据挖掘技术的支持,就很难发挥出效果。文中设计并模拟了精准教学的数据挖掘平台,可以有效发挥精准教学的优势。鉴于部分数据采用模拟数据,后续工作将继续展开研究,进一步收集数据,充分发挥精准教学优势。