时间:2022-10-16 06:33:54
【摘 要】
本文探讨了在网络智能教学系统中建立一个双层动态学生模型的方法,模型的初始层采用复合认知型学生模型,高级层利用Hopfield神经网络算法,在初始层数据的基础上加入兴趣、爱好、知识状态、学习历史等信息进行评价、分类。该模型克服了单一学生模型结构数据处理的障碍,能够灵活、全面地对学生的学习特征进行分析,有效改善了智能网络教学系统的教学决策过程。
【关键词】 学生模型;智能教学系统;Hopfield神经网络
【中图分类号】 G434 【文献标识码】 A 【文章编号】 1009―458x(2011)12―00645―04
引 言
目前,网络教学系统正向着智能化的方向发展,智能化的主要目标是解决现代远程教学中的个别化教学问题,提高系统对学生的适应性和针对性[1]。
网络智能教学系统中的学生模型(Student Model)是个别化教学决策的依据,是适应性教学中“因材施教”的“材”的量化标准。学生模型是指在智能教学系统中根据需求构造出的一种能可靠表示学生认知特征的数据结构,记录着学生对知识的掌握程度和个人的学习水平,是学生知识结构和认知特征的反映。学生模型一般依据学生和系统之间的交互及应答历史而形成,可以根据学生的学习情况动态地修改。
在国外的相关研究中,有的学者用贝叶斯网络建立学生模型,进行个性化教学推理[2];有的学者利用对话来获得学生对领域知识的掌握程度,从中分析学生学习的速度、掌握程度以及记忆能力,采用一定策略对学生实施个别化教学[3];也有的学者通过对学生学习某个主题的评价,来判断该学生是否可以进入下一个主题的学习[4]。在国内,刘宇,解月光对CELTS-11学习者模型规范进行了取舍、组合,利用模糊评价方法对学生的认知能力进行评判[5]。在最近的研究中,孙中红提出基于决策树的遗传算法,将学生的学习标准、兴趣、爱好、知识状态、学习历史、心理因素和认知能力等信息进行数据挖掘和分类,从而构建一个综合覆盖模型、偏差模型、认知型模型或是几种模型组合的全面学生模型[1]。郭富强从学习者个体学习情况和学习需求出发,在研究分析影响学习者的学习基础、认知能力、心理因素的基础上,设计了学生模型,并给出了学生模型的动态调整算法[6]。
本文设计的双层动态学生模型是基于网络的SQL查询语言智能教学系统,它采用任务驱动的个性化学习方式,以模拟在线实验为平台,同时提供学习资源、实例演示与综合测试等服务。SQLlearning学习系统因其实验交互、智能引导等特点在实践应用中取得了较好的效果。
一、双层动态学生模型的工作原理
在SQLlearning中双层动态学生模型的工作原理如图1所示,学生登录系统后,利用双层动态学生模型智能引导学生的实验、学习、测试等活动,系统一般选用学生模型的高级层驱动相应数据库,生成用户的个性化实验任务、测试题目、学习资源等,而对于未经高级层处理或网络条件不允许进行高级层处理的学生模型则选用初始层参数。
一般来说,高级层的处理过程是在搜集了一定量的初始层学生模型参数后,经Hopfield网络处理生成标准化模型库,进行评价、分类,并将结果取样到样本库、存储到评价库的过程。
二、初始层――复合认知型学生模型
初始层采用轻量化数据设计,结合认知型学生模型的特点,在SQLlearning系统中设计了如下的数据结构来记录学生的认知能力:
SM={Knowledge, Comprehension,Application,Analysis,Synthesis, Evaluation,CorrectRate, ExAccuracy}。
其中,Knowledge、Comprehension、Application、Analysis、Synthesis、 Evaluation依次为识记、理解、应用、分析、综合、评价6项认知能力参数,ExAccuracy,CorrectRate分别对应实验正确率、测试正确率。
初始层学生模型的参数由系统与用户的交互形成,在SQLlearning系统中主要通过资源学习、平时实验、综合测试等活动来记录。需要说明的是,系统在设计实验任务与综合测试题目时,每项均进行了认知改造, 也就是每个项目均设有认知能力观测点,如果测试项目通过,则该认知能力观测点记为1,未通过记为-1,未测试记为0,所以学生的每一次活动都有反应一项或几项认知能力的参数记录在学生模型库中。
从改造后的测试项目中可以汇总得到学生各项认知能力的信息,在矢量式 si=(a1,a2,a3,a4,a5,a6)中,ai代表某项认知能力的正确率,ai=■,其中,0
Rij(1)代表第i项认知能力到目前为止的测试中所答对的次数。
Rij(-1)代表第i项认知能力到目前为止的所有测试中答错的次数。
每个学生的认知能力ai的平均值会随时更新到学生模型库中,同样每次的测试与练习正确率CorrectRate,ExAccuracy也会以平均正确率更新到学生模型库中。
在实际应用中,若遇到新注册人数较多、服务器负担较重、网络不畅等制约条件,可以对初始层模型参数进行简单加权评价、分类,在牺牲部分评定准确性的基础上保证系统正常运行。
三、高级层――利用Hopfield神经网络处理
根据初始层的复合认知型学生模型,横向对比众多用户的学习数据,挖掘出初始层学生模型中的有用信息,对学生模型进行细致的刻画与分类,是高级层学生模型构造的关键。在这里将初始层模型的数据,加上兴趣、爱好、知识状态、学习历史等作为高级层学生模型分类的生成要素。
1. Hopfield神经网络算法设计
在高级层中,将若干个典型的、理想的学生模型对应的初始层学习数据、兴趣、爱好、知识状态、学习历史等作为Hopfield神经网络的平衡点,Hopfield神经网络学习过程即为典型的学生模型的数据要素逐渐趋近于Hopfield神经网络的平衡点的过程。学习完成后,Hopfield神经网络储存的平衡点即为各种学生模型所对应的数据要素。当需要判定学生模型时,Hopfield神经网络即利用其联想记忆能力逐渐趋近于某个储存的平衡点,当状态不再改变时,此时平衡点所对应的状态即为待判定的学生模型。具体算法设计步骤如下:
步骤1:设计理想的学生模型评价指标
从初始层的每类学生模型中随机选取样本,按类汇总以各分量的平均值作为理想学生模型的评价指标,如表1所示。
步骤2:为理想的学生模型评价指标编码
由于Hopfield网络神经元的输出只取1和-1,所以将评价指标映射为神经元的状态时,需要对其进行编码。编码规则为:当大于或等于某个等级的指标时,对应的神经元状态设为“1”,否则设为“-1”。理想的4个等级评价指标编码如表2所列,其中表示神经元状态为“1”,即大于或等于对应等级的理想评价指标值,反之用表示。
步骤3:为待分类的学生模型评价指标编码
设有5个待分类的学生模型,提取信息后有表3所示的学习数据。
根据上述编码规则得到对应的编码,如图2所示。
步骤4:利用MATLAB中神经网络工具箱函数创建Hopfield网络,对表1中的标准样本数据进行训练。
步骤5:利用训练好的网络对高级层的待分类数据仿真、分类,分类结果如图3所示。
2. Hopfield神经网络算法在网络环境中的实现
Hopfield神经网络算法处理高级层学生模型基于Matlab 7.10.0(R2010a)实现,在网络环境中,网页功能模块基于Visual Studio 2010开发。具体实现步骤如下 :
步骤1. 基于Matlab实现Hopfield神经网络算法,伪码如下:
function [re]=hop_ddm()
%% 连接数据库,获取高级层模型库数据aa,获取样本库数据bb
代码A
%% 将获取的数据转变预处理
[mx,my]=size(aa)
[bx,by]=size(bb)
%% 为高级层模型库、样本库中的数据编码
代码B
%% 创建Hopfield神经网络
net=newhop(bz);
%% 仿真、分类、评价
Y=sim(net,{mx*4,15},{},A); % A为最后待处理的数据
for m=1:mx
for n=1:4
if Y{15}(:,(m-1)*4+n)>[0 0 0 0 0 0 0 0 0 0 0]'
%% 更新评价库中的评价结果
update(conn,'pjk',{'myrank'},{n}, strcat('where myid=',num2str(m)))
commit(conn)
end
end
end
end
步骤2. Deployment for .NET Assembly制作dll组件
将Matlab中编写的函数用Deployment Tool工具进行编译,生成 .NET Assembly动态链接库hop_ddm.dll文件。
步骤3. 将上述生成的hop_ddm.dll文件和MWArray.省略项目中添加对hop_ddm.dll和MWArray.dll的引用。
步骤4. 混合编程,在网页中调用。
hop_ddm.myhop dm_ins = new hop_ddm.myhop(); //将myhop类实例化
dm_ins.hop_ddm(); //调用hop_ddm方法
结束语
本文 结合实际应用的SQLlearning系统探讨了网络智能教学系统中一个双层动态学生模型的构建方法,重点阐述了高级层中Hopfield神经网络算法原理及其在网页中的实现方法。为验证学生模型的有效性,2011年上半学期将忻州师范学院计算机系2008级248名学生随机分为两组,实验组168名学生采用如图4所示的SQLlearning实验教学环境;对照组的80名学生则采用真实上机实验环境。在学习时间等同的情况下,对4份测试,成绩如表4所列,实验组学生平均成绩比对照组高出16.29%。在随后针对学生模型认可度的调查中,收到有效问卷152份,其中非常认可、认可、不认可的学生人数分别为109、38、5,学生模型的分类结果在受测试学生中的认可度达96.7%。
?眼参考文献?演
[1] 孙中红. 个性化智能网络教学系统中学生模型的研究[J]. 中国电
化教育,2009,(10):107-110.
[2] Peng-Kiat Pek, Kim-Leng Poh. Using Decision Networks for Adaptive Tutoring[DB/OL]. www.eric.ed.gov/ERICDocs/data/ericdocs2sql/content_storage_01/0000019b/80/17/2a/8e.pdf.
[3] Yujian Zhou Martha W. Evens. A Practical Student Model in an Intelligent Tutoring System[DB/OL]. www.cs.iit.edu/~circsim/documents/yzitai99.pdf.
[4] Mia K. Stern and Beverly Park Woolf. Curriculum Sequencing in a Web-based Tutor[DB/OL]. www.省略/index/4MBNT2BNUMKB3A2G.pdf.
[5] 刘宇,解月光. 动态学生模型与智能支持服务研究[J]. 中国电化教
育,2006,(10):94-98.
[6] 郭富强. 智能教学系统中动态学生模型的研究与设计[J]. 中国电
化教育,2011,(1):119-123.
[7] 郝耀军,程国忠. 基于在线实验的SQL语言智能教学系统的设计
与实现[J]. 现代远距离教育,2007,(1):76-78.
[8] 史峰,王小川,郁磊等. MATLAB神经网络30个案例分析[M]. 北
京:北京航空航天大学出版社,2010.
[9] 陈仕品,张剑平. 适应性学习支持系统的学生模型研究[J]. 中国电
化教育,2010,(5):112-117.
收稿日期: 2011-08-25
作者简介:郝耀军,讲师,硕士;王建国;赵青杉。忻州师范学
院计算机系(034000)。