基于测试的个性化学习引导系统的研究与实现

  • 投稿鬼畜
  • 更新时间2015-10-09
  • 阅读量964次
  • 评分4
  • 86
  • 0

王晓波

(北京信息科技大学 信息管理学院,北京 100192)

摘 要:针对在线学习过程中缺乏有效引领和学习效率不高的问题,提出采用基于测试的个性化学习引导系统,介绍系统的结构设计及实现过程,以期对课程教学质量的提高起到积极的促进作用。

教育期刊网 http://www.jyqkw.com
关键词 :在线测试;自主学习;学习引导

基金项目:北京市教育委员会科技发展计划面上项目(KM201311232016);北京信息科技大学PXM2014_014224_000091 其他项目——促进人才培养综合改革项目(2014KG66,2014KG60)。

作者简介:王晓波,女,讲师,研究方向为计算机应用技术, wxb@bistu.edu.cn。

0 引 言

随着我国教育信息化进程的不断加快,许多高校将在线学习作为传统课堂教学的补充。在线学习允许用户随时随地根据自己的特点进行自主学习,这种知识服务方式弥补了课时的不足,能让用户共享学习资源、强化课程学习内容。但是,国内绝大部分网络课程均以呈现教学内容为主,缺乏对学习者在线学习活动的有效引导,主要体现在以下4个方面[1]:

(1)现有在线学习系统几乎都是传统教学结构的“电子式”表现,无法满足个性化学习的需要。

(2)对学生学习过程的监控和评价功能还不完善。据调查,有46.2%的人认为影响在线学习质量的最主要因素是缺乏学习监控机制,这说明使用在线学习平台需要辅以完善的学习监控和督促机制[2-3]。

(3)不能有效地帮助学生了解自己的学习水平以及对知识点的掌握情况。学生在用这些系统进行学习以及自测的过程中,仅仅只能从中得到答案以及解析,并不能完全了解自己的薄弱环节,从而错失了为自己查漏补缺的机会。

(4)不能帮助教师全面了解学生的学习过程及其对知识点的掌握情况,课堂教学中缺乏针对性。

如何完善对学习过程的管理,有效地指导学生的学习活动,笔者希望利用人工智能和数据库技术构建一个基于测试的个性化学习引导系统,应用在数据库课程的教学活动中。

1 系统结构

基于测试的个性化学习引导系统将根据预先获取的学习行为和测试结果,及时发现学生的薄弱环节,主动从课程知识库中搜索出符合学生需求的知识,促使学生更好地完成学习。

系统结构如图1所示。学生登录之后,可以进行课程的在线学习、在线测试和在线交流。学生的所有学习活动都记录在“个人信息及学习记录库”里。

在线学习模块将根据课程的知识体系、学生的测试结果动态生成学习建议和学习路径,引导学生学习并掌握相关的知识。学生在学习完一章或整个课程之后可以进行章节测试和课程测试,以检验学习效果。

在线测试模块将根据学生的学习情况从题库中生成测试题。学生完成测试之后,系统会对测试结果进行评价和分析。这些信息一方面显示在界面上,让学生了解自己的学习状况;另一方面也保存到“个人信息及学习记录库”里,为个性化学习导航提供依据。

在线交流模块完成师升互动,学生通过平台提问问题,教师对学生提出的问题进行解答,了解学生学习情况,随时进行指导。

2 数据库设计

数据库设计的基本任务就是根据用户的信息需求、处理需求和数据库的支撑环境,设计一个结构合理、使用方便、效率较高的数据库[4]。按照存储对象的类型,本系统中的数据库主要分为3个:课程知识库、题库和学生个人信息及学习记录库。

2.1 课程知识库

课程知识库用来存储数据库课程的章节结构、学习资源和每个章节所涉及的知识点[5]。以下是课程知识库中的主要关系模式和属性:

章信息(章编号、章名称、关联章、章说明);

节信息(节编号、节名称、章编号、知识点编号,节说明);

知识点信息(知识点编号、知识点名称、别名、前序知识点编号、重要程度、通过阈值……);

学习资源(资源编号、资源名称、类型、章编号、节编号、知识点编号、存放路径……)。

数据库课程中一共有14章、253个知识点。每章包含多节,每节有多个知识点,在存储的时候,多个知识点之间用分号隔开,一个知识点也可以出现在多个章节中。章、节和知识点都可以包含相关联的学习资源,这些资源以Word、PPT、PDF、JPG、FLV等方式保存。在“知识点信息”表里,“别名”表示该知识点的同义词(如概念模式也可以称为模式);“前序知识点”表示掌握该知识点之前就应该掌握的知识点(如范式的前序知识点包含部分函数依赖、完全函数依赖等);知识点的重要程度分为3级:了解、理解和掌握。“通过阈值”表示在测试过程中,该知识点的正确率必须要大于或等于该值,才算掌握。

课程中的知识点分3步得到:

(1)利用中科院计算所的ICTCLAS中文分词软件,对教学大纲、与节相关的所有文本资源进行分词、降噪处理,提取教育期刊网 http://www.jyqkw.com
关键词 。

(2)教师对自动分词结果进行手工修正,得到节所包含的知识点。

(3)对整个课程的知识点进行编号,保存到“知识点信息”表里,并补充知识点的相关信息。

2.2 题 库

题库保存了所有测试题,按题型分成了4种:单选题、多选题、判断题和填空题。为了提高查询效率,我们将试题按题型分别建立试题数据表。试题的属性有试题编号、试题内容、试题答案、答案简析、关联章节、知识点、难度系数、试题分值等,部分字段内容如下。

(1)试题编号。每道题都有唯一的编号,编号的第一位表示题型。

(2)关联章节。存储试题内容隶属的节编号。当为多个值的时候,按照节编号升序排列,用分号隔开。

(3)知识点。存储试题内容隶属的知识点编号。当为多个值的时候,按照知识点编号升序排列,用分号隔开。

(4)难度系数。试题的难度系数由易至难分5个等级:简单、基本、中等、稍难、难题,用代码1—5 表示。

(5)试题分值。每道题的分值设定为1~5分。默认情况下,每道单选题、多选题、判断题的分值分别是2分、3分、1分;填空题的分值是一个空1分。

2.3 学生个人信息及学习记录库

“学生个人信息及学习记录库”保存了学生个人信息(如学号、姓名、班级、性别等)、学习活动记录(如学号、资源编号、开始学习时间、学习时长、学习次数等)、测试结果记录(如学号、试题编号、测试时间、分值等)、交流记录(如学号、问题内容、提问时间以及教师或其他同学回答的内容等)、评价信息(学生对学习资源、问题解答的评价)和个性化学习导航信息(学生对章、节和知识点的掌握情况)。

“学生个人信息及学习记录库”中的信息是由系统实时更新和维护的,它反映了学生实际的学习和测试情况,为个性化学习引导服务。

3 系统实现

系统采用B/S架构,数据库为MySQL,开发语言以Java为主,在Web网页编程中使用了Servlet/JSP、JavaScript、CSS等技术。

3.1 实现在线学习

根据学习目标,利用章节和知识点之间的关系建立学习导航图,如图2、图3所示。系统采用树形图和网状知识地图两种导航方式对章、节和知识点之间的关系进行可视化表示。图中的结点表示章、节或知识点,结点之间的连线表示结点间的包含关系,箭头表示先后关系[6]。

图2是学生首次开始学习时进入的课程导航界面,显示各章之间的先后关系。学生选择知识地图中的相应结点后,在屏幕的右下方将出现该结点的简要说明,以便让学生了解自己所需要学习的内容。学生通过选择图中的结点可以确定学习目标,进入相关章节的学习。图3显示了个性化学习导航,包括学习路径和学习情况,如黑色结点表示学生已经通过知识点的测试,白色节点表示还没有掌握。

学生点击章节或知识点,进入学习界面,选择Word、PPT或视频等学习资源进行在线学习。

个性化学习导航的思路是:

(1)自行确定学习目标。默认情况下,以掌握整个课程的知识点为学习目标,学生也可以通过选择章、节或知识点来确定学习目标。

(2)按目标生成学习路径。如果学生是以整个课程为学习目标,则系统按照各章之间的关联关系生成学习路径;如果学生选择的是章或节,则系统根据章、节和知识点的关联关系生成学习路径;如果学生选择的是知识点,则根据知识点的前序知识点生成学习路径。

(3)自主学习和测试。学生在生成的学习路径上单击节或知识点就可以打开相应的学习资源,进行在线学习。学生完成相应知识学习后,可以进行在线测试。系统将根据学生学习和测试的结果,动态调整节点状态,让学生了解自己的学习进展。

3.2 实现在线测试

在线测试分为章节测试和课程测试。这两种测试的目的和产生测试题的算法是不一样的。章节测试是检测学生对本章知识点的掌握程度,对于没有掌握的知识点会推荐学生重新学习和做题,而课程测试主要检测学生对课程总体掌握情况,巩固所学知识。

3.2.1 生成章节测试题

当学生选择要对某章进行测试时,系统将根据知识点覆盖最大化的原则和学生学习这一章的情况生成测试题,具体算法如下:

(1)从题库中按照知识点升序把属于该章的各种题型的测试题筛选出来;

(2)如果学生不是首次测试,则在“学生个人信息及学习记录库”中已经记录学生完成该章测试题的情况,这时需将最近两周已经答对的题去掉;

(3)根据每种题型、每个知识点不超过2题的原则,随机抽取形成测试题;

(4)去掉重复试题。

3.2.2 生成课程测试题

当学生选择要进行课程测试时,系统将根据知识点的重要程度、题目的难度系数等生成测试题,具体算法如下:

(1)学生可以设定每种题型需要抽取的题目数;默认情况是,抽10道填空题、10道判断题、20道单选题和10道多选题。

(2)每种题型按照知识点的重要程度来分配试题数,即了解、理解和掌握的抽题比例是2:3:5。

(3)构建抽题信息临时表tmp_test,按照题型、知识点的重要程度顺序抽题。

(4)从知识点信息表中按照知识点的重要程度降序排列,查询出所有的知识点。

(5)按照一个知识点一道题的原则产生测试题。在同等重要程度的知识点集合中随机选出与所需题目数相同的知识点(多次抽取时需要去掉已经抽取过的知识点),从指定的题型中查询出与这些知识点相关的试题。如果某个知识点有多道题,则优先选择未做试题,其次选择在课程测试中最近做错的题。

(6)检测抽到的题号是否在临时表tmp_test中,如果存在,则维持原题;否则,就保存新题。

(7)检测指定题型中抽取的试题数是否达到要求,如果没有,则重复(5)。

(8)如果所有题型的试题数已经达到要求,则根据临时表tmp_test保存的试题号,生成课程测试题,供学生测试。

3.2.3 测试评价和分析

学生解答测试题并提交后,系统会实时公布正确答案和答案简析。系统将根据学生的答题情况,分析学生还有哪些知识点没有掌握,指出需要进一步强化的知识点,如图4所示。

确定和显示需要强化知识点的方法如下:

(1)系统按照评分标准(答对给分,答错不给分)计算出每个知识点的总分和学生实际得到的分数。

(2)计算每个知识点的正确率,如果正确率大于等于该知识点的通过阈值就认为已经掌握;否则认为该知识点还需强化[7]。

(3)按照知识点的正确率由低到高显示,推荐给学生继续学习。

学生可以进行多次的章节测试和课程测试,系统将为学生记录每次的测试结果,以供学生、教师查询参考

3.3 实现在线交流

系统提供在线交流,学生与教师之间、学生与学生之间可以提问并回答。在整个过程中,学生可以对问题的回答进行评价,系统会将这些信息保存在“学生个人信息及学习记录库”里。这些信息不仅反映了学生的学习情况,也将为今后进行智能化和个性化的问答服务奠定基础。

4 结 语

基于测试的个性化学习引导系统,实现了学生的自主学习、自主评价以及学习过程化管理等功能;通过章节测试和课程测试,可以对学生的学习结果进行实时评价和反馈,并给出相应的学习建议。该系统已运用在数据库课程中,经过61名学生的使用,大家普遍反映比较实用,在线学习的兴趣和积极性有了较大的提高,学习效果也得到相应提升。

目前系统初期只实现了对客观题型的测试和自动评阅。我们将进一步完善系统功能,如正在添加SQL题型,即根据SQL语句的语法进行自动评阅,这样不仅能够检验学生对理论知识的掌握情况,还能考查学生操作数据库的能力。

教育期刊网 http://www.jyqkw.com
参考文献

[1] 王俊祥, 赵呈领. 引领式在线学习设计与研究[J]. 中国远程教育, 2011(9): 58-61.

[2] 马汉达. 在线学习过程监控系统设计与实现[J]. 实验技术与管理, 2011 (5): 93-111.

[3] 陶明华, 王斌. 网络课程学习过程中监控策略和实施方法的研究[J]. 中国远程教育, 2010 (3): 60-63.

[4] 崔巍, 王晓波, 车蕾. 数据库应用与设计[M]. 北京: 清华大学出版社, 2009: 152-153.

[5] Manan J, Shagufta R, Aditi N.User Profiling based Adaptive Test Generation and Assessment in E- Learning System[C]// Proc. of the 3rd IEEE International Advance Computing Conference. Washington, DC: IEEE, 2013: 1425-1530.

[6] 陈毅波. 基于关联数据和用户本体的个性化知识服务关键技术研究[M]. 武汉: 武汉大学, 2012: 91-100.

[7] She J, Zhang X, Chen S.Construction of a Personally Adapted e-learning System Using Collective Intelligence [C]//Proc. of the 15th International Conference on Interactive Collaborative Learning. Washington, DC: IEEE, 2012: 1-5.

(编辑:彭远红)