大数据环境中微课程个性化学习的研究
2015-04-22余小高
余小高
摘要:为了解决个性化学习问题,提高学习的兴趣,笔者给出了大数据环境中微课程个性化学习机制。通过对学习用户行为数据的获取、存储、清洗、挖掘,由改进的余弦相似度算法计算出微课程的相似度,向用户推荐其喜欢的微课程。实验证明,该机制可以有效提升微课程推荐的准确性,增强用户黏性,达到微课程精细化的目的。
关键词:大数据;微课程;个性化学习;相似度矩阵
中图分类号:G434 文献标识码:A 论文编号:1674-2117(2015)07-0126-03
● 引言
教学变革的关键是让每位学生都能以适合自己的方式与节奏进行学习,让每位学生都能够在自己原有的基础上发展前进。然而班级授课制的存在使得每位教师不得不同时面对几十位学生。同样的教学内容,不同学习起点与学习风格的学生,或许只有教师掌握了某种神奇的魔法才能帮助班上的每位学生都能在短短的40几分钟内以适合自己的速度与方法进行学习。然而在大数据时代,这一美好的愿望将迎来走向现实的那一刻。[1]
微课程是指在信息化环境中,为满足人们个性化学习的需要,针对某个知识点或教学主题,由教育工作者精心设计并开发的、以视频为主要载体,包含辅助资源和学习支持服务的网络教学资源集合,具有短小精悍的特点。[2]
大数据创新发展带动了微课程迅速发展,目前,微课程已开始影响我国信息化教学实践。湖北、广东、上海等十多个省、市、自治区纷纷开展微课程实践。微课程实践的积累,将促进微课程群的形成,微课程群的应用又会形成新的应用数据,将有利于大数据分析与挖掘、发现与预测的创新应用。[3]
在国内,高校学者、区域教育研究者、一线教师等对微课程进行了相关的研究或实施,微课程的研究是近三年以来才在中国开始萌芽,主要关注于概念、资源设计和教学模式的研究。[4]
近年来,国外越来越重视“微课程”、“微视频”的研究,但其核心组成资源不统一,呈现方式是教案式或视频式;课程结构较为松散,主要用于学习及培训等方面,应用领域有待扩充;在课程资源的自我生长、扩充性还不是很成熟。[5]
微课程个性化学习是利用个性化推荐技术,是根据用户的兴趣特点及行为向用户推荐其感兴趣的学习内容。主要解决如何在海量的微课程资源中发现用户感兴趣的内容。对于微课程平台来说,通过基于大数据挖掘技术构建个性化学习系统,能有效帮助用户发现喜欢的微课程,同时也体现了微课程提供者的贡献。
结合笔者在微课程平台研发和数据分析的相关工作经验,本文提出了大数据环境中微课程个性化学习架构。首先将学生海量学习行为数据存储,然后利用Hadoop框架对存储的数据进行处理,计算微课程之间的相似度矩阵,运用Redis存储中间结果和最终推荐结果,最后向用户提供微课程学习列表。
● 体系架构
1.数据获取与存储
笔者利用湖北经济学院教研项目(2014015)“大数据背景下管理信息系统课程教学改革研究”的成果,建成了管理信息系统微课程资源库。目前校内外用户数超过20000户,日均数据增量1000 MB左右,数据分析需要获取数据并存储数据。微课程平台的个性化学习系统一般采用用户的下载行为作为用户的行为数据,一旦用户下载了一个微课程,则视该用户对微课程产生了一个正向喜欢。数据获取与存储的架构如图1所示。
微课程下载功能由微课程下载服务器提供,当用户发出微课程下载请求,下载服务器在本地日志上记录一条用户下载记录。日志采集系统RLog对日志数据进行实时、高效的采集,然后传递给实时计算系统RFilt,RFilt按照设定的规则进行数据过滤,最后将有效数据存入Hadoop分布式文件系统(HDFS)[5]进行固化。
HDFS对硬件要求比较低,能够在一般服务器集群上运行,充分利用计算机的存储能力。通过HDFS的“一次写入、多次读取”机制[6],用户海量访问的数据能够快速处理;通过分布式文件存储机制,能够长久地存储用户的历史访问记录,为用户行为分析提供坚实的数据支撑。
2.数据清洗与挖掘
微课程数据清洗与挖掘如图2所示。
数据存储好之后,采用MapReduce计算框架[7],可以快捷地对大型数据矩阵进行计算,从而为个性化学习系统提供计算支持。首先,进行数据清洗,过滤掉非法的用户和微课程;然后,进行数据重构,把用户和微课程的标识唯一化,同时生成用户的下载数表和微课程被下载次数表;最后,进行相似度矩阵计算,计算结果以两份的方式存储,一份存储在Oracle数据库中,供系统评测和统计使用,另一份存储在Redis高速缓存服务器中,为各类应用提供查询。
3.微课程个性化学习流程
面向用户的微课程个性化学习流程如图3所示。
(1)用户通过客户端访问微课程平台,点击进入任意微课程详情页面。
(2)客户端发送用户的访问请求给后台程序。
(3)后台程序获取用户当前访问的微课程ID,并根据用户ID来获取用户的历史记录。
(4)通过Redis获取该微课程的相似度矩阵。
(5)使用个性化学习算法根据用户的相似度矩阵、当前访问微课程ID、用户历史访问微课程ID,计算用户可能喜欢的微课程列表。
(6)对用户可能喜欢的微课程列表按照相似度排列。
(7)取前TopN个微课程,并返回结果给客户端,客户端将相应的微课程显示在学习栏目中。
● 算法验证
“微课程”平台目前每天的下载用户数为10000户左右,人均下载3~5个微课程,累计3个月的用户下载数据为370万条左右,微课程相似度矩阵规模为5000×5000。应用余弦相似度推荐算法,对数据进行了计算,结果如表1所示。
从表1中的结果可以看出,改进的余弦相似度的归一化推荐算法相对基本算法在准确率、召回率等各个指标上均有所提升。通过降低热门微课程的权重,能有效提升准确率和召回率。通过降低活跃用户的权重,能有效提升微课程覆盖度和多样性,从而强化个性化学习系统发掘长尾的能力。
推荐算法还有一个重要的影响因素,即向用户推荐的微课程个数,针对该因素影响情况进行针对性的效果分析,分析结果如表2所示。
由图4可知,随着微课程推荐数的增大,微课程的准确率、覆盖率明显上升,召回率则逐步下降,与实践情况相符,从而说明了算法的正确性和实用性。
● 结束语
本文介绍了在大数据环境中,利用数据挖掘技术,构建微课程平台,进行个性化学习。采用Hadoop框架处理数据,计算微课程之间的相似度矩阵;中间结果和最终推送结果存储在Redis中。结合微课程平台实际情况研究了余弦相似度算法,利用降低活跃用户权重和降低热门微课程权重等几种方法,改进算法。根据计算结果,对比和分析了相应算法,构建了一种适用于微课程平台的个性化学习机制和方法,为其他平台大数据分析提供了良好的参考和借鉴。随着用户行为和微课程数据趋于多样化和复杂化,我们下一步研究的方向和目标是进一步拓展数据源,包括用户访问、用户已安装的应用软件、微课程的描述信息等,将采用复合权重相加的方式拟合微课程相似度矩阵,并考虑不同数据源的权重,提升个性化学习效果。
参考文献:
[1]梁文鑫.大数据时代——课堂教学将迎来真正的变革[J].北京教育学院学报(自然科学版),2013,3(1):14-16.
[2]陈川.基于微课程的自主学习支持系统设计与开发[D].武汉:华中师范大学,2014.
[3]金陵.大数据与信息化教学变革[J].中国电化教育,2013,10(321):8-13.
[4]姜玉莲.微课程研究与发展趋势系统化分析[J].中国远程教育,2013(12):64-73.
[5]海浪,钱锋,黄祥为.基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践[J].电信科学,2014(10):27-32.
[6]Shin-gyu Kim, Junghee Won, Hyuck Han, et aL. Improving Hadoop performance in intercloud environments[J]. Performance Evaluation Review,2011,39(3):107-109.
[7]FangW,Pan W B, Cui Z M. View of MapReduce: programming model, methods, and its applications[J]. IETE Technical Review,2012,29(5).
基金项目:湖北省教育科学“十二五”规划课题:大数据环境中微课程教学研究(No.2014B135)。