APP下载

融合学习者时序行为和认知水平的个性化学习资源推荐算法①

2018-10-24林木辉

计算机系统应用 2018年10期
关键词:语义对象学习者

林木辉

(福建师范大学 教育学院, 福州 350117)

“以教育信息化带动教育现代化”, 是我国《教育信息化十年发展规划》的既定方针[1]. 作为落实方针举措之一的标志性工程“人人通”建设方案, 祝智庭[2]指出:保证“人人通”建设应用效果的前提是网络教与学环境的个性化应用. 杨现民[3]则强调:网络学习的过程就是学习者从个人出发联结任何可能的外部节点(知识、机构、人等), 经过提取、重组、最终形成个性化学习网络的过程. 《美国教育技术规划2010》[4]提出的技术赋能学习模型中, 强调利用技术为学生构筑强大的、开放的和自适应的“连通小世界”, 最大限度地促进知识信息的交流与共享. 促进联通的个性化学习环境是构建智能学习环境的内在要求, 需要探寻连结学习者和学习资源相关性算法促进两者之间有效联结,提高学习资源的利用概率, 解决在线学习容易产生的迷航问题.

推荐算法已被广泛应用在电子商务[5]、新闻[6]、图书[7]、音乐[8]、电影[9]等领域的个性化服务, 其中Goldberg等在1992年首次提出的协同过滤算法[10–14]是最为经典和成功的. 针对教育领域的个性化推荐技术, 也引起了国内外学者关注. Khribi等[15]研究了一种根据学习者导航历史、偏好以及教育内容计算推荐学习资源的自动系统;Milicevic 等[16]则是基于学习者的学习风格和学习兴趣点改进协同推荐算法;李保强[17]采用用户相似度和项目的混合协同过滤方法来向学习者推荐匹配其特征的个性化学习资源;姜强[18]提出了一种能力导向的个性化学习路径生成及评测方案, 重点研究了学习者个性特征、知识水平及个人能力应用情境;张杰[19]提出了一种基于主题学习的学习伙伴推荐算法. 以上研究有效地提高了信息系统的智能化和个性化. 但针对学习认知领域的特殊性, 仍存在以下不足:

(1)采用的推荐方式主要基于用户和资源之间的二元关系. 学习资源不是零散的个体, 而是之间有一定相互关联的结构特性, 推荐要考虑用户、资源、知识本体之间的三元关系, 才能更好地提高推荐的准确率.

(2)缺乏考虑学习者时序行为所反映的时间特性.学习是一个动态过程, 学习者的学习对象在不断更新,其时序行为隐藏着学习者真正的学习兴趣点, 需要给予关注和捕捉.

(3)不符合循序渐进的认知规律. 学习不只是兴趣问题, 学习效果还要受学习者的认知水平限制, 在向学习者推荐学习资源时, 既要满足其兴趣, 也要兼顾推荐符合其认知水平的学习资源.

针对上述分析结论, 本文提出融合学习者时序行为和认知水平的个性化学习资源推荐算法, 旨在能够向学习者推荐当前需要且更能适应其认知水平的学习对象.

1 个性化学习系统架构及组成表示

教师和学生是个性化学习系统中两个主要角色,教师负责知识库的建设和管理, 知识库的构建可运用基于本体的知识库方式[20], 基本思路是:将知识库分为语义库和资源库两部分, 语义库由本体概念表示知识点, 用本体属性来描述知识点之间的联系, 组成语义层;资源库由学习对象组成, 元数据描述可参照IEEE LOM标准[21], 学习对象所封装的学习资源(课件, 作业, 习题等)可通过URI来唯一标识和定位. 教师的任务之一就是使用语义库中的概念标注学习资源, 并注明该学习资源中概念所映射知识点的学习难度.

学生在线学习时, 系统自动记录学生的学习行为,通过学习分析引擎分析学习者的学习过程和所访问资源, 建立学习者知识结构及相应的认知水平的特征模型. 推荐引擎则依据建立的学习者特征和标注过的学习资源, 按照推荐算法计算推荐值, 采用倒排索引向学习者推荐个性化的Top-n学习资源. 具体工作过程描述如图1所示.

1.1 符号定义

为了更直观准确表述算法思想, 现将文中各个符号做如下定义:

(1)si:学习者i, 表示唯一的标识为i的学习者;

(2) S:学习者集合, S= {s1,s2,···,sm}, 表示m个学习者构成的集合;

(3)oj:学习对象j, 表示唯一的标识为j的学习对象;

(4) O:学习对象集合, O ={o1,o2,···,on} 表示n个学习对象构成的集合;

(5)ck:概念k, 表示唯一的标识为k的概念;

(6) C:概念集合, C ={c1,c2,···,cp}, 表示p个概念构成的集合;

(7) Con(oj):学习对象oj标注的概念集合,Con(oj)={cj1,cj2,···,cjt};表示学习对象oj标注了t个标签, 其中cjx∈C ;

图1 个性化学习系统的一般架构

(8) L(si):学习者si学习过的学习对象集合, L(si)={{oi1,oi2,···,oiq}, 表示学习者学过q个学习对象, 其中oix∈O;

(9)tim(si,cx):表示si学习概念cx的最后时间点;

(10)abi(si,cx):表示si学习概念cx的认知水平;可以将其划分成6个层级{初学, 不及格, 及格, 中等, 良, 优},依次量化为离散值{1,2,3,4,5,6};

(11)dif(oj,cy):表示学习对象oj所标注的概念cy的学习难度;可以将其划分成6个层级{基础, 理解, 运用,分析, 综合, 创新}, 依次量化为离散值{1,2,3,4,5,6}.

1.2 学习者特征模型的形式化表示

学习者特征模型的形式化是对学习者学习行为的抽象表示, 从图1所描述的个性化学习系统的一般架构可以看出:它是系统的重要组成部分, 国内外不少学者对此展开过研究[22,23], 是设计推荐引擎的基础. 本文从推荐算法的视角出发, 抽取出学习者的认知结构和认知水平特征, 并关注与它们相关的两个方面:

(1)学习者学习点的动态迁移. 学习是一种动态过程, 学习者不同时间段的学习内容会随着本身知识结构的变化处在迁移当中. 比如:学习者如果已经掌握了一些基础知识点, 会进入后续阶段学习, 不会一直停留在某些知识点上. 显然, 系统要反映学习者这种兴趣点转移现象并加以捕捉. 为了表达兴趣点的时间性, 引入符号tim(si,cx)表示学生si学习概念cx时的最后时间点,作为时间衰减函数的变量.

(2)学习的循序渐进特点. 根据最近发展区的认知原则和因材施教的教育理念, 推荐学习资源应该尽量适应学习者的认知水平, 如果推荐过于简单或者太难的学习资源都难以表现个性化. 因此, 以知识点(对应到本体中的概念)为基本单位, 引入能力评估模型, 测算学习者对知识点掌握程度, 评价过程重点考虑2个因素:用户答题的正确率和题目难度值, 并将评价结果量化成{1,2,3,4,5,6}之间的离散值, 分别代表{初学, 不及格,及格, 中等,良,优}6个不同的认知层级, 用abi(si,cx)符号表示.

因此, 对于 ∀si∈S, 根据si学习行为所记录的学习对象集合L(si), 其特征表示为:M(si)={<cx,tim(si,cx),abi(si,cx)>|1≤x≤u,cx∈C}

1.3 学习资源的标注

在本系统中学习资源会封装成学习对象, 主要工作内容是标注学习资源涉及到的知识点, 由教师进行管理. 标注了语义信息的学习资源增强了机器对它的了解, 有利于增强学习者与资源之间的联通性. 因此,对于∀oj∈O学习对象的语义特征可表示为:

2 融合学习者时序行为和认知水平的推荐算法

从图1所描述的个性化学习系统的一般架构可以看出:推荐引擎是系统的核心, 学习资源推荐算法是设计推荐引擎的重要工作内容, 其目标是计算学习者和学习资源的相关性来产生推荐, 必须以学习者的特征表示和学习资源的标注为基础数据结构.

学习是一个动态变化的过程, 对时间相当敏感, 要充分考虑时间因素, 比如:学习者对学习过且已掌握的知识点显然没有再学习的必要, 如果继续推荐, 不但不会引起学习者的兴趣, 反而会造成干扰. 因此, 引入一个时间衰减函数来描述学习者这种学习兴趣点的变化.

认知理论强调:学习是一个循序渐进的过程, 理想的教育是因材施教, 因此, 在设计学习资源推荐算法时必须考虑到学习资源的难度与学习者认知水平的匹配问题, 才能体现个性化. 首次在推荐算法中导入难度匹配算子以对所推荐学习资源的权重产生影响, 反映不同认知水平学习者在获取学习资源之间的差异.

2.1 时间衰减函数

为了合理地运用时间衰减函数表达时序特征, 应该让函数值随着学习活动发生时间产生波动, 且时间越久远, 函数值越小;反之, 时间越近, 函数值越大.因此, 对学习者si学习知识点cx的时间权重形式化表示为:

式中,tim(si,cnearest)代表学习者si最后的学习时间点.

DSpan函数用于计算出学习者si学习知识点cx时距离学习知识点cnearst的天数;

μ是常量, 代表时间衰减因子, 用于调整衰减速度,比如:1 / 7,1/30 分别表达衰减速度是按星期衰减和按月衰减.

分析不难得出:衰减函数在最后学习发生时间的函数值达到最大值1, 表达了最近的学习点是最能表达学习者的兴趣点;函数值会随着时间变量的减小而逐渐增大, 反映了时间越近的学习活动, 相关学习对象应该得到更大的推荐机会, 符合现实逻辑, 具有合理性.

2.2 学习者认知水平与学习资源难度匹配算子

学习资源的难度与学习者认知水平越相当, 其匹配值应该越大;反之, 则应当减小. 因此, 学习者si兴趣的知识点cx与标注cx的学习资源oj匹配度计算可形式化为:

对公式(3)分析不难得出:难度值与认知水平相等时, 其值达到最大值1;难度值与认知水平差异越大时,其值会越小.

2.3 学习者与学习资源的匹配度计算

设si∈S,oj∈O,si的特征M(si)={<cx,tim(si,cx),abi(si,cx)>|1≤x≤u,cx∈C},oj的 特 征V(oj)={cy,dif(oj,cy)|1≤x≤t,cy∈Con(oj)}, 计算学习者si和学习资源oj的匹配度Rec_Val(si,oj) 为:

式中, α ,β 是调整因子, 两者取值必须满足α ·β=1 ;

公式(4)的含义是:学习者与学习资源的匹配度是由其相交的语义概念元素的累和;概念匹配值大小受时间因素和认知水平影响, 学习资源难度与学习者认知水平越相近, 且学习时间点越近, 其匹配值越大, 就越有可能得到被推荐给学习者的机会.

3 实验分析

为了验证所提出算法的有效性, 以《C语言程序设计》课程为主题, 以VS 2012+C#+Sql Server+XML为开发环境, 建立简化的但具备一般性的在线学习平台. 受篇幅所限, 这里只列举具有代表性的部分测试数据, 为了更好地理解算法的计算过程, 实验数据以表格形式展示. 实验结果表明:该算法能根据学习者的特征, 向学习者推荐个性化学习资源, 较好地体现出自适应性.

3.1 算法实验过程描述

(1) 构建《C语言程序设计》课程知识库

① 构建语义库

构建语义库时, 以知识点名称表达概念, 因为本推荐算法不涉及到知识点之间关系运算, 故所有知识点是并列的集合, 部分知识点如表1.

表1 《C语言程序设计》知识点集合(部分)

② 标注资源库

资源库由学习对象组成, 数据标准可参照IEEE LOM进行元数据描述, 其封装的学习资源(课件, 作业,习题等)可通过URI来唯一标识和定位, 由于实验的核心是测试算法, 这部分的工作重点是标注学习对象的语义和难度, 语义标签就是学习对象所涉及到的知识点. 其部分内容列举如表2.

表2 学习对象及其语义标注

二、学习者形式化特征

经过一段时间学习之后, 分析引擎得到表3所示学习者特征向量.

三、匹配度计算

试验时, 时间函数公式(2)的衰减因子采用按月即µ=1/30速度衰减;时间因素和难度因素被认为同等重要, 对公式 (4)的权重取值:α=1,β=1;以表 1、表 2 的知识库, 表3的学习者特征向量为基础, 计算两者的相关性, 从而为每位学习者产生按值倒排索引方式的Top-3学习资源推荐, 公式(4)的计算具体过程数据列举为表4.

表3 学习者形式化特征

从表4 可以看出:

(1)时间函数较好反映了学习的动态迁移特性. 对于时间函数W_Time(si,cx), 学习者最后学习的知识点,为时效性最大值1, 显然标注为此知识点的学习资源被推送的可能性增大;而学习者学习知识点的时间距离越久, 权值越小, 比如:S2学习“表达式”的时间点在[2016-7-10], 距离最后学习“循环语句”时间点[2017-9-1]418天, 其权值只有0.067, 则标注为此知识点的学习资源被推送的可能性大大减少.

(2)认知水平与难度匹配算子较好地体现出学习循序渐进的认知原则. 对于匹配算子Mathch(abi(si,cx),dif(oj,cx)), 学习资源的难度值与认知水平相等时, 其值为最大值1, 显然该学习资源被推送的可能性增大;而难度值与认知水平差异越大时, 其值就越小, 比如:S4学习“函数”的认知水平为1, 学习资源(24)“函数”知识点难度值达到4, 其匹配度仅为0.47, 最后没有得到被推荐的机会.

(3)推荐算法所产生的学习资源, 符合学科教师的教学经验. 以S5学习者为例:其形式化特征为(数组[2017-8-11,4], 函数[2017-10-20,4], 指针[2017-11-11,2]), 说明该学习者最近正在学习“指针”, 而对于“函数”和“数组”的认知水平已经达到中等水平, 需要通过学习指针与数组关系、指针与函数关系来进一步提升对指针、数组、函数的理解. 从表4可以看出, 对S5最后推送的学习资源依次是 是(24)、(23)、(22)(分别是:(24)第10 章 指针习题与答案(3)(函数[4],指针[3]), (23)第 10 章 指针习题与答案 (2)(数组[4],指针[3]), (22)第10 章 指针习题(指针[2])), 而没有优先推荐学习资源 (21)、(19)、(18)、(17)、(16)、(15)、(14)、(13)因为这些资源是学习者已经学习过、较为简单的学习资源, 不符合学习者认知现状.

表4 公式(4)匹配度计算过程

3.2 算法的时间复杂度分析

学习者的学习资源推荐是需要实时计算的, 其时间复杂度不能过于复杂, 这里采用事前估算方法评估所提出的推荐算法时间复杂度. 假定个性化推荐系统中的学习者数为s, 本体概念映射的知识点数为m, 学习资源的数目为n;深入分析公式(4)后不难得出, 对于任一学习者其推荐计算的时间复杂度最坏情况下为(m×n). 但在实际情况下, 由于学习者的学习内容是有限的, 不妨设最大值为常量C, 因此, 所提出的推荐算法的实际时间复杂度为(C×n). 由此可见, 算法具有较低的复杂度, 具备实时计算性能.

4 总结与展望

本个性化学习资源推荐算法从学习者学习行为的时间性和认知水平存在差异视角出发, 提出一种计算学习者特征和学习资源相关性算法. 通过导入时间衰减函数反映学习者学习兴趣点动态迁移, 应用难度匹配算子匹配认知水平和学习难度, 实验证明, 算法效果和性能良好, 具备实践应用的可行性. 未来, 此推荐算法还可以充分利用知识点之间的关系, 计算学习资源标签语义的相关性进行改进, 以提高推荐算法的查全率.

猜你喜欢

语义对象学习者
真实场景水下语义分割方法及数据集
晒晒全国优秀县委书记拟推荐对象
你是哪种类型的学习者
十二星座是什么类型的学习者
青年干部要当好新思想的学习者、宣讲者、践行者
攻略对象的心思好难猜
“吃+NP”的语义生成机制研究
区间对象族的可镇定性分析
高校学习者对慕课认知情况的实证研究
情感形容词‘うっとうしい’、‘わずらわしい’、‘めんどうくさい’的语义分析