数据挖掘课程中过程生成式启发教学研究

2021-03-14 06:14杜振鑫
电脑与电信 2021年12期
关键词:贝叶斯数据挖掘经验

杜振鑫

(安徽财经大学管理科学与工程学院,安徽 蚌埠 233030)

1 引言

随着各行各业技术的发展,这个时代的数据量已经发生跨越式的增长[1,2]。大数据技术的出现很好地解决了大量数据的计算问题,数据挖掘和机器学习也成为一门非常重要的课程。但是数据挖掘和机器学习教学存在抽象、难于理解的问题。传统教材大多采用算法加例题的讲授模式,虽然表述严谨,却不利于教学。覃凤萍[1]提出问题引导+案例教学法,高建瓴[3]提出问题驱动教学模式,这些方法都是通过案例进行教学,能够有效降低学生的学习难度。但是这些方法也存在一定缺点:(1)学生从一个抽象的案例或者项目类比另一个抽象的算法,仍有不小的难度;(2)这些方法往往需要一定软硬件条件或者明显降低讲课精度,只能偶尔为之,多数情况下仍然采用传统的讲授式教学。(3)案例式教学、项目教学,没有从本质上将算法原理剖开给学生,学生只是熟练地模仿项目或案例,王积社等认为这种静态的实体观存在缺陷[6],因为事实上世界万物是不断变化的,是动态的,知识就是其生成过程,所以教学就必须模拟、展现知识的生成过程,学习就必须感受、理解知识的生成过程,这样才能做到知其然而又知其所以然。李文阁[7]等认为,“生成:现代哲学的最强音”,“生成性思维是现代哲学的基本精神和思维方式”。

基于过程生成式理念与启发式方法,本文首次提出在数据挖掘教学中,让学生从最熟悉的生活经验出发,引导学生将粗糙的生活经验经过抽丝剥茧、去粗取精,最后得到严谨的数学表述,相当于亲自推导出相关的数据挖掘算法,既有效降低了学习难度,又加深了理解和记忆,在保证学科知识教学正确性与科学性的基础上,助力学生学科素养与学科能力的生成,而核心素养已然成为推动当代教育课程改革与促进教学模式转型的顶层理念。近年来,过程生成理念得到了较多的关注[5,9]。采用过程生成式启发教学法,学习过程即知识建构的过程,能够促进高阶思维的形成[5]。

2 教学现状

数据挖掘课程需要用到线性代数、概率统计、机器学习等先修课。教学中主要存在问题是:

(1)该课程具有知识点多和教学点分散的特点,理论学习难度较大。

(2)实践教学可操作性不强、主要以抽象的理论教学为主,学生难以将新知识与老知识进行迁移对照,容易遗忘、理解也不够深刻。很多学校将数据挖掘归类为实践课程,但是在实际操作中,需要花费大量实践学习相关软件的使用,造成实践的效果大打折扣,学生对完成一套完整的数据挖掘流程是比较困难的。

3 基于过程生成理念的启发式教学设计

赵卫东等[1-3]提出基于“问题引导+案例”、项目驱动等教学模式。例如覃凤萍[1]将关联规则用电影推荐作为例子导入。但在教学中发现,这种方法虽然有效,学生仍然感觉抽象、难以理解。卡尔·波普尔认为:“一个人要分享人类缓慢取得的知识,我所知道的唯一方法,就是循着知识创造者的脚印再走一遍”。王积社认为[6]:“过程→生成”教学是由师生共同参与的知识生成过程,该过程始于某种背景,在思想、情操的层层支配下,激起对学习目标的步步追求,诱导已有知识、技能、方法的循循摄入,形成流变与合生。“过程→生成”教学的基本原则,应该遵循:(1)动态性原则:学生主动的动手动脑参与推导知识的生成过程。(2)摄入性原则:摄入是过程哲学的核心范畴,是揭示事物间相互关联的思维方法。例如本文的例题中,将学生的生活经验与数据挖掘算法之间的联系揭示出来,就是遵循了摄入性原则。(3)生成性原则:类似于搭积木,避免把知识直接搬给学生,而是引导学生逐步搭建出知识。基于过程生成式理念,让学生从自己粗糙的生活经验出发,在教师引导下逐步求精地推导出数据挖掘算法,让学生理解算法的来龙去脉,能够降低学习难度,提高学习效率,可以分成三个主要步骤:(1)提出一种学生熟悉的生活原型,可以比较好地吻合相应的数据挖掘算法;(2)将粗糙的生活经验提炼,用严密的数学语言进行描述,推导出相应的数据挖掘算法;(3)将学生根据生活经验推导的数据挖掘算法与教材的数据挖掘算法进行对比,揭示两种算法之间的联系。下面将以数据挖掘中经典的贝叶斯算法作为例子来说明过程生成理念引导的启发式教学方法的应用。传统的贝叶斯分类的教学大多只关注后验概率公式的计算过程,学生普遍反映这部分的教学内容抽象枯燥,理论与实际相脱离。如果仅仅按照公式讲解,学生比较难以理解。我们从基本的生活经验出发,采用过程生成式启发方法教学,引导学生自己推导出贝叶斯算法。

例:已知某电脑店销售数据如表1所示,现在有一个新顾客X={“年龄='≤30',收入='中',学生='是',信誉='中'},试判断X是否应该购买计算机?

表1 某电脑店销售数据

分析:(1)提出生活原型:运用生活经验类比法,我们根据X的年龄=‘≤30’,收入=‘中’,学生=‘是’,信誉=‘中’,首先凭生活经验判断,这个人是否应该购买计算机?经过对学生提问,发现90%以上的学生都能凭直觉得出正确答案:顾客X应该购买计算机。教师进一步启发学生思考,为什么会得到这个结果?如果没有生活经验,你会得出这样的结论吗?如果是没有生活经验的幼儿园的学生,能得出这样的结论吗?学生经过思索,回答:是因为X是学生,而且收入是‘中’,而计算机并不贵,中等收入足够购买计算机了,所以根据生活经验判断,X多数会购买计算机。教师进一步启发学生,要用数据说话才更加可信。学生仔细观察上面的表格,终于找出规律:提供的销售记录共有14个顾客,其中9个人购买了计算机;再仔细观察这9个人,购买计算机的人中,有6个是学生,概率是6/9=0.67,这说明,多数学生都买了计算机,而X恰好是学生,因此购买计算机的概率比较大。

(2)将生活经验提炼:教师进一步引导,用数学公式表述上面的经验,P(学生='是'|购买计算机='是')=6/9=0.67;同理,我们可以得出不买计算机的概率是P(学生='是'|购买计算机='否')=1/5=0.2。上面只分析了X的一个属性“学生”,我们同理分析X的其他属性,得出:P(年龄='≤30'|购买计算机='是')=2/9=0.22;P(年龄='≤30'|购买计算机='否')=3/5=0.6;P(信誉='中'|购买计算机='是')=6/9=0.67;P(信誉='中'|购买计算机='否')=2/5=0.4;P(收入='中'|购买计算机='是')=4/9=0.44;P(收入='中'|购买计算机='否')=2/5=0.4。

假设条件独立性,使用以上概率得到:P(X|购买计算机='是')=P(年龄='≤30'|购买计算机='是')×P(收入='中'|购买计算机='是')×P(学生='是'|购买计算机='是')×P(信誉='中'|购买计算机='是')=0.22×0.44×0.67×0.67=0.04;P(X|购买计算机='否')=P(年龄='≤30'|购买计算机='否')×P(收入='中'|购买计算机='否')×P(学生='是'|购买计算机='否')×P(信誉='中'|购买计算机='否')=0.6×0.4×0.2×0.4=0.02。

到此,我们得出解题需要的两个关键数字:P(X|购买计算机='是')=0.04,P(X|购买计算机='否')=0.02。

进一步,根据概率统计的知识,考虑“购买计算机='是'”的类:P(X|购买计算机='是')×P(购买计算机='是')=0.04×0.64=0.03;考虑“购买计算机='否'”的类:P(X|购买计算机='否')×P(购买计算机='否')=0.02×0.36=0.01。因此,对于样本X预测为“购买计算机='是'”。

在上面的教学过程中,我们首先让学生完全不管贝叶斯算法的原理,仅仅引导学生用生活经验自己推导,逐步去粗取精,然后用数学语言加以严谨描述,最终自己推导出贝叶斯分类算法。经过对比,学生发现自己推导的贝叶斯算法与教材中的贝叶斯算法的原理一模一样,从来很快就牢牢理解了贝叶斯算法的思想,并形成了深刻印象。多数学生感觉这种类比法有明显的效果,克服了案例法或者项目法过于抽象、降低讲课速度的缺点,知识已经内化为思维的一部分,更加容易理解和接受。

在其他很多数据挖掘算法中,都可以运用生活经验类比法。例如K近邻分类,让学生回答:假设对某个人一无所知,但是知道他的K个朋友学习都很好,请问此人学习是否也很好?学生很容易自己推导出K近邻算法,得出此人学习很好的结论。再如:集成学习可以用生活中的投票的经验进行类比等等。复杂的算法,往往都是由简单的问题加以延伸而成,因此多数能够找到问题的原型,用过程生成式教学方法加以推导,就可以得到相应的算法。

4 结语

数据挖掘的学习难度较高,以往的案例驱动、项目驱动教学法仍然存在过于抽象的缺点;而大量的主动学习、合作学习、研究性学习虽然有其优点,在实际课堂讲授中往往受到软硬件条件限制或者讲课速度过慢,导致讲授法仍然占据课堂主流。本文首次提出在数据挖掘中引入过程生成式启发教学方法,克服了上述缺点,引导学生从熟悉的生活经验出发推导出相应的算法,让学生知其然更知其所以然,使得学生很容易将熟悉的知识迁移到对数据挖掘算法的理解中去,具有较高的课堂应用价值。

猜你喜欢
贝叶斯数据挖掘经验
2021年第20期“最值得推广的经验”评选
探讨人工智能与数据挖掘发展趋势
经验
2018年第20期“最值得推广的经验”评选
基于并行计算的大数据挖掘在电网中的应用
基于贝叶斯估计的轨道占用识别方法
基于互信息的贝叶斯网络结构学习
一种基于贝叶斯压缩感知的说话人识别方法
一种基于Hadoop的大数据挖掘云服务及应用
当你遇见了“零经验”的他