数据挖掘技术在Moodle课程管理系统中的应用研究

  • 格式:doc
  • 大小:43.50 KB
  • 文档页数:10

数据挖掘技术在Moodle课程管理系统中的应用研究

[摘 要] 基于课程管理系统中学习者的学习行为开展学习绩效的评估,提供课程改进与学习建议,对学习资料和网络课程进行评价,为E-learning课程的师生提供反馈,对于提高远程教育教学效果与质量非常重要。但由于许多课程管理系统不提供允许教师全程跟踪和评定所有学习者行为活动的特定工具,因此,当面对大量系统数据时,选取有价值的信息变得十分困难。教育数据挖掘则是解决这一难题的有效途径。本文在介绍E-learning数据挖掘过程的基础上,重点阐述了统计、可视化、分类、聚类及关联规则挖掘等数据挖掘技术在Moodle系统中的应用。

[关键词] 数据挖掘; Moodle; 课程管理系统

一、导 言

课程管理系统(CMS)能将学生活动与交互的所有信息记录到日志文件和数据库中,所以其中积累了大量对分析学习者行为非常有价值的信息。基于学生的学习行为开展学习绩效的评估,提供课程改进与学习建议,对学习资料和网络课程进行评价,为E-learning课程的师生提供反馈,对于提高远程教育教学效果与质量而言非常重要。但是,由于系统每天产生大量的数据,所以很难手动管理。因此教师和课程创作者需要借助工具来完成这项任务。尽管一些系统提供一些报告工具,但对指导教师而言,当面对大量学生时,选取有用的信息显得非常困难。因为当评价课程内容与结构及其对学习过程的功效时,这些系统不提供允许教师全程跟踪和评定所有学习者行为活动的特定工具。数据挖掘则是实现这一功能的理想选择。

数据挖掘是一个跨学科的领域,其中汇集了多重计算范式,如决策树构建、准则归纳、人工神经网络、案例学习、贝叶斯学习、逻辑设计、统计算法,等等。CMS中一些非常有用的数据挖掘技术和方法是统计、可视化、聚类、分类以及关联规则挖掘。通过使用这些方法,可以基于学生使用系统的数据,揭示新的、值得关注的有用知识信息。本文将以免费课程管理系统Moodle为例探讨数据挖掘技术在远程教学中的应用。

二、E-learning中的数据挖掘过程

传统的E-learning课程开发是一项艰苦的工作。开发者(通常是课程教师或在线教师)必须选择将要展示的内容,决定内容的结构,以及为课程的每一类潜在用户确立最合适的内容。由于这些决策十分复杂,定向设计几乎不可行。许多情况下,可能需要基于学生的使用信息评价和修正课程内容、结构和导航,更有甚者要采取连续经验评估法。为有助于此项活动,可以使用数据分析方法和工具来观察学生的行为,辅助教师发现可能的错误和结果,以及采取相应的改进措施。E-learning中传统的数据分析是基于这样一种假设,即用户从问题开始,然后探寻数据以确认其直觉。使用这一方法的前提是涉及的影响因素和数据比较适中。但当用户想要从数据的不同关联关系中找到更复杂的图式时,采用这一方法就非常困难。相比而言,使用数据挖掘技术,则可以自动地揭示数据中隐含的信息,因为其假设来源于数据而非人为设定。[1]数据挖掘构建了一种分析模式,通过该模式可以揭示学生使用信息中值得关注的模式和趋向。

E-learning系统中数据挖掘技术的应用是一个多重循环。[2]挖掘到的知识进入系统循环中起指导、帮助和促进学习的作用。数据挖掘不仅把数据转换成知识,而且还要筛选挖掘到的知识以供决策使用。与一般数据挖掘过程相同,E-learning系统数据挖掘过程也分为四步:

1. 数据收集:CMS系统是由学生使用的,使用信息和交互信息存储在数据库中。

2. 数据预处理:将数据清理净化并转换成适合挖掘的数据格式。可以使用数据库管理工具或一些特定的预处理工具。

3. 数据挖掘:运用数据挖掘算法创建一个模型。执行该模型可以发现和总结教师、学生以及管理者感兴趣的知识。

4. 解释、评估及使用结果:教师通过对模型或结果的解释与应用以决定下一步采取的行动。教师可以使用发现的信息作出学生行为与Moodle课程活动的决策以改进学生的学习。

三、Moodle数据的预处理

Moodle是一个开源课程管理系统,其有助于教师创建有效的在线学习社区。相对专利性的商业在线学习解决方案而言,Moodle是又一个可选方案,在开源认证的情况下可免费共享。Moodle已广泛应用于全球多所大学和学院。任何一个组织都享有使用源代码的所有权利,如果需要也可以对源代码进行修改。

Moodle的模块化设计使其易于创建新课程,添加适合学习者需要学习内容。其设计是用来支持社会建构主义学习模式的。社会建构主义认为当学生在与学习资料进行交互,为其他学习者创建新的资料,就学习内容与其他学习者进行交互时学习效果最好。Moodle不需要在课程中使用这种学习模式,但是它为这一模式提供了很好的支持。Moodle拥有灵活的教学活动模块和资源模块阵列,能创建五类静态课程资料:文本、网页、页面链接、课程目录浏览以及显示任一文本或图片的表格;六类交互式课程资料:课外作业、词语、日志、功课、测验、调查评论;五种学生间进行交互的活动:聊天、论坛、术语汇编、WIKI及专题讨论。[3]

Moodle详细记录学生的一切活动日志。它记录学生为导航而进行的每一次点击,并且内嵌有普通的日志浏览系统。日志文件可以按课程、参与者、日期、活动分类。教师可以使用这些日志判定谁积极地参与课程活动,在什么时候做什么。如测验活动,教师不仅能得到测验成绩与测验时间,还能详细分析每个学生的答题情况以及对题目本身进行分析。教师可以轻松获得学习者个体行为活动的全部报告,以及某一特定活动的所有参与者。每个学生的学习活动报告都是可获得的,并且描述相关模块的详细资料(最后访问时间,访问次数)以及每个学生的参与详情。日志还可以显示不同日期或时间的课堂活动行为。这有助于教师检查是否每位学生已完成特定的任务,或者就特定活动保持足够的在线时间。

Moodle并没有把日志存储为文本文件。事实上,它把日志存储在关系型数据库中(MySQL与PostgreSQL是最好的支持,Oracle、Access、Interbase以及其他数据库也能使用)。在从CMS提供的所有服务中,收集详细的访问信息和高端使用信息方面,数据库与传统的文本日志文件相比,功能更强大、更灵活。Moodle数据库大约有145个关联表,但并非所有信息都是必需的。对Moodle数据进行预处理就是把系统数据转换成适合某一数据挖掘算法使用的格式。需要特别指出的是,数据预处理的任务通常是由管理者而不是教师完成。管理者通常需要手动完成数据清洁净化、用户确认、时间确认、路径完善、事务确认、数据转换与浓缩、数据整合以及数据简化等数据预处理工作。Moodle与许多其他课程管理系统一样可以使用用户验证手段对登录用户进行身份确认,这样避免了对代表性用户与群体的身份确认工作。因此,对Moodle系统数据进行净化与预处理的任务要比其他网络系统少。尽管所需的数据准备工作减少了,但下述工作是必须要做的:

1. 数据收集。首先必须确定要对哪门课程进行数据挖掘。在对Moodle课程进行选择时,通常选择那些较多运用Moodle行为活动和资源(作业,信息,论坛与测验)以及学生成绩能获得的课程。

2. 创建汇总表。必须在Moodle数据库中创建一个新表来汇总某些所需的信息。由于学生及其交互数据分布在多个表中,所以必须创建、整合实现目标的重

要信息汇总表。该汇总表包含课程学习中每个学生的所有活动行为及最终成绩。

3. 数据离散化。为了便于理解数据所代表的含义,要对数据进行离散化操作。离散化把数值型数据分成教师易于理解的目录类型。对教师而言,类别比精确的数值更重要。除了课程认证数值外,汇总表的所有数值均需离散化。数据的手动离散化方法(用户必须指定分割点)可以是四分法(如果数值小于5为不合格,如果数值大于5小于7为合格,如果数值大于7小于9为良,如果数值大于9为优秀)和等距法(将分数段分为等距的固定间隔),其属性分割为低、中、高。

4. 数据转换。数据必须被转换成数据挖掘算法所需的格式。如可以将Moodle系统中的表以及汇总表导出成ARFF格式的文本文件。ARFF文件是一个描述具有共同属性的一系列实例的ASCII码文本文件。

四、数据挖掘技术在Moodle系统中的应用

数据挖掘是从大的数据集合中对非显而易见的价值模式的高效发掘过程。[4]有许多普通的和特殊的数据挖掘工具。一些商业挖掘工具如DBMiner、Spss

Clementine与DB2 Intelligent Miner。一些大众化的挖掘工具如Weka与Keel。也有一些特定的教育数据挖掘工具,如用于联合与模式挖掘的Mining;用于联合与分类的MultiStar;基于学生的学习成绩,用于执行定性分析的Tool;[5]用于联合的EPRules;用于聚类与文本挖掘的KAON;用于统计与可视化的Synergo;用于可视化的GISMO;用于可视化与浏览的Listen;用于观察与挖掘的TADAEd;[6]用于顺序模式挖掘的O3R;用于学习途径挖掘的MINEL;用于联合规则挖掘的CIEoF;用于探寻非预期行为模式的Simulog以及用于模式挖掘的Sequential

Mining。

由于Weka与Keel系统具有免费,能在Java中执行,使用ARFF数组外部表示格式文件的特征,本文将使用它们进行数据挖掘。这两个软件都可以轻松地从互联网获取,使用时也不用担心数据格式问题,并且如果需要,可以使用同一程序语言进行校正。Weka是一个开放源代码的软件,提供机器学习和预处理、分类、回归、聚类、联合控制及可视化等数据挖掘算法。Keel是一个开源软件工具,用于构建和使用不同的数据挖掘模型,如数据预处理算法、决策树、规则提取、描述性归纳、统计方法、神经网络以及多分类器演化系统。

数据挖掘有一些代表性形式,如概率、规则与树以及一些源于机器学习、统计、可视化与人工智能的任务和方法。下面,将介绍Moodle系统中数据挖掘技术具体应用实例。

(一)统计

对学生使用方法的统计通常是E-learning系统评价的起点。使用用于分析网络服务器日志的标准工具(如AccessWatch、Analog、Gwstat与WebStat)可以进行用法统计。但是,针对教育类数据有一些特定的统计工具,如Synergo、ColAT。E-learning系统中用法统计的简单示例是测量,如访问次数及每页访问次数。有些统计数字显示过去一段时间学习者的分布状况与访问最频繁的课程;另外一些统计数字显示每季度访问次数与持续时间,查询与检索最多的词;还有一些显示支持系统的报告,[7]以及用户行为趋向的周报告与月报告。也有特定的统计数字表显示约束违规的平均数量及问题的平均复杂度。更高级的统计方法,如变量间的相关性分析,可用于推断影响学生学习的态度或者预测学生的最终成绩。回归分析可用来预测造成学生考试成绩不理想的知识及品德,也可用于预测学生是否能十分准确地回答问题,以及预测学年末的成绩。

Moodle不提供教师可借助其获得学生个体品行(访问站点时间,每一活动的持续时间)的详尽报告的统计模块。但考勤报告(所有课程的总招生数,某位教师所授课程的学生活动行为,所有课程总计的学生历史,每一年月日次序的时间消耗和级别)与经费报告(特定时期总的注册收入,参与所有课程的学生的总的收费,特定时期每一教师的生均收入)却非常有用。