基于规则库的用户选课健康状态感知及推荐
2018-10-16邵景峰王蕊超
邵景峰,王蕊超
西安工程大学 管理学院,西安 710048
1 引言
在十九大报告中明确指出要“办好网络教育”,这表明仅靠传统的教育模式已经无法应对未来,而互联网教育打破了传统的“教&学”方式,能够满足全社会参与所形成各种形态的学习型组织,为加快建设学习型社会、学习型国家提供基础条件。2013年5月,清华大学携手edX进入中国互联网教育市场,掀起了中国“互联网+教育”新模式的高潮。然而,MOOCs的崛起及风靡全球,为更多求学者带来学习机遇的同时,课程高辍学率的问题也逐渐暴露,其根本原因之一是学习者知识储备与课程不匹配[1],主要表现为用户在线课程选择过程中忽略课程学习的进阶性,进而导致知识间出现断层。而科学的课程引导是解决该问题的一种有效途径。
推荐系统作为一种高效的信息过滤方法[2]和引导手段,其主要任务是借助推荐算法[3](基于内容的算法、基于协同过滤的算法、混合推荐算法),通过分析用户信息、物品信息或其他辅助信息,进而获得用户对物品的偏好或相关特征,并据此为用户进行物品推荐[4]。
对此,本研究借助“中国大学MOOC”平台,提出了一种基于规则库的用户选课健康状态感知及推荐方法。该方法首先依据课程属性信息构建了基于课程进阶关系的规则库。在此基础上,利用用户行为反馈信息和协同过滤算法提出了用户选课健康状态感知模型,并实现了课程的个性化推荐。
2 文献回顾
针对用户在线课程推荐这一主题,研究人员主要围绕课程资源信息过载[5-6],进而导致用户课程选择出现“迷航”这一核心问题展开探究。如:Elbadrawy等人[7]探讨了学生课程学习行为特点是如何影响学生选课,并借助基于用户的协同过滤算法(User-Based Collaborative Filtering)和Top-N的推荐方式进而实现课程推荐。Hoiles等人[8]考虑到学生知识、学习行为和目标的多样性,将专家知识库融入推荐算法中,为用户提供高效的个性化课程推荐服务。而Aher等人[9]则将多种数据挖掘方法(k-means和Apriori关联规则)引入得到课程推荐系统中,并将其进行组合研究。然而,上述研究聚焦在推荐算法和用户选课喜好上,而忽略了对象属性信息的重要性。因此,Salehi等人[10]将课程多属性和用户等级融合在统一的模型中,进而提高了课程推荐的质量。沈苗等人[11]提出了一种以学生属性分类为前提的协同过滤算法,该方法借助学生属性信息并改进学生相似度的计算方法,进而实现课程推荐。而马莉等人[12]则将访问序列的先后次序作为推荐的重要依据,进而基于向量及利用DBSCAN算法对用户进行协同过滤聚类并实施知识点推荐。为了进一步提高用户对选课的满意度,徐扬等人[13]从信息资源建设的实用性、系统性和共享共建原则角度出发,建立了高校课程定制与推荐的模型,当学生输入一套课程序列时,自动为每个学生提供一套满意度最高的课程方案。而考虑到用户课程选择可能有不同的目的和背景,Jing等人[14]则设计了一个基于用户访问行为的内容感知推荐算法,该算法充分利用了人口统计学属性和课程前提关系,更好地揭示用户的潜在选择。
综上,学者们借助用户属性及喜好、课程多属性及满意度等信息,将其融合到各种推荐算法中,解决了课程资源信息过载导致用户课程选择出现“迷航”这一核心问题,并不断提高了推荐效率及用户满意度。但对于用户在线课程选择过程中忽略课程学习的进阶性,进而导致知识间出现断层的问题尚未很好解决。因此,本研究以“中国大学MOOC”平台为例,提出了一种基于规则库的用户选课健康状态感知及推荐。该方法首先依据课程属性信息构建了基于课程进阶关系的规则库,进而借助协同过滤算法提出了用户选课健康状态感知模型,并实现个性化的课程推荐。
3 规则库及模型构建
3.1 用户选课健康状态概念的提出
用户在线课程选择过程中忽略课程学习的进阶性,进而导致知识间出现断层的问题。而课程作为知识获取的载体,因此,用户所选课程进阶关系的完整性是保证其课程知识结构健壮性的一种有效途径。对于该健壮性程度的描述,本研究将其命名为用户选课健康状态。
由上述概念可知,探索课程进阶关系是感知用户选课健康状态的基础。对此,本研究借助课程属性信息,识别与构建了一种基于课程进阶关系的规则库,为用户选课健康状态感知和计算提供依据和标准,并在此基础上,提出了用户选课健康状态感知模型及推荐方法,实现了用户在线课程选择的引导及个性化推荐。
3.2 识别与构建基于课程进阶关系的规则库
在线课程碎片化的课程设计模式,打破了传统课程体系的层次进阶结构,采用“化整为零”、开放性和无门槛的策略赢得了用户的青睐。然而,“支离破碎”的碎片化课程学习方式必然会导致用户获得的知识分散、结构无序,丧失了其原有的完整意蕴,而从“碎片”到“整体”的嬗变,最终能让碎片化学习效能达到最大化[15]。课程作为知识获取的载体,课程进阶关系结构的完整性是保证这种嬗变的一种有效途径。
系统科学认为,事物的结构是其功能赖以存在的条件和形式,没有特定的结构,就无法产生特定的功能[16]。对于课程知识获取的结构,主要体现在课程学习的进阶性。具体而言,课程结构需要按照依次进阶、逐级深化的原则设置。现阶段我国课程体系中课程学习进阶模型如图1所示。
图1 课程学习进阶模型
就“中国大学MOOC”平台而言,图1中的基础课程是指该课程无前导课程或前导课程为高中相关课程;进阶课程指学习该课程前需要具备前导课程相关知识;LP(cij,ci+1j)表示课程Cij与课程Ci+1,j是否存在进阶关系,其中,Cij为前导课程,Ci+1,j为进阶课程。具体表达式如式(1)所示:
基于上述的课程学习进阶模型,通过对“中国大学MOOC”平台进行深入了解,在该平台课程信息的“课程详情”模块中发现该课程已经明确指出了与该门课程相关的“预备知识”要求。基于此,借助网络爬虫技术,依次对该平台中每门课程的“预备知识”描述信息进行提取,并且根据其语义表达关系进行课程进阶关系提纯,进而构建了基于课程进阶关系的规则库。具体流程如图2所示。
图2 规则库构建流程图
图2 中,“与”关系表示任意进阶课程的多个前导课程之间存在并列关系;“或”关系表示任意进阶课程的多个前导课程之间存在或关系;“非”关系表示该门课程属于基础课程,没有前导课程或者具备高中水平即可。
为了进一步阐述规则库的识别与构建过程,以该平台中的“软件测试与质量”课程为例,对其核心流程“数据提取及处理”进行说明,具体如图3所示。
图3 数据提取及处理流程图
为了细化前导课程之间的关系,本研究在关系提纯及存储过程中对课程间的关系承接进行标识。其中,“与”关系之间用“,”连接;“或”关系用“;”连接;“与&或”之间用“-”连接;“非”关系则用“0”表示。
3.3 用户选课健康状态感知模型
就学习者而言,课程学习是其获得相关知识的主要载体,用户所选课程进阶关系的完整性是保证其课程知识结构健壮性的一种有效途径。因此,用户选课进阶关系越完整,其知识结构的健康状态越良好。但由于课程参与及选择渠道较广(如:在校课程、MOOCs、培训、自学等),用户课程吸收及转化情况复杂,进而使得用户原有或基础的知识及水平无法得知。基于此,依据3.2节所构建的基于课程进阶关系的规则库,采取基于物品的协同过滤方法(Item-Based Collaborative Filtering)[17-18]来挖掘及估计用户对某一进阶关系中未选择的前导课程已在其他渠道选择的概率,进而构建了用户选课健康状态感知模型,具体如下:
对于用户uv所选择的课程集合c(uv)而言,其内部课程之间会依据规则库中的课程进阶关系划分为多个课程进阶体系,并对各课程体系进行补全,保证各独立的进阶体系完整,同时移除独立的基础课程,进而形成用户uv的课程选择进阶体系S(uv),具体如图4所示。
图4 用户课程进阶体系集合
图4 中,sn表示由课程cn所构成的课程进阶体系,该体系包括进阶课程cn以及该课程所需的前导课程。由于用户所选课程c7为独立的基础课程,将其进行移除操作处理。对于完整的进阶体系而言,c8为该体系中的进阶课程,此外,该体系还包括用户未选择的课程c5。表示用户uv参与课程ci学习且已选择该课程的前导课程cj的概率(采用基于物品的协同过滤算法进行估计),具体表达示为:
式中,u(ci)表示已经选择课程ci的用户集合;u(cj)表示已经选择课程cj的用户集合;c(uv)表示用户uv所选择的课程集合。
由于进阶课程一般需要多门前导课程作为其预备知识,并且各前导课程对其进阶课程的贡献度和重要程度难以衡量,但对于该进阶课程所构成的课程进阶体系而言缺一不可。因此,本研究将前导课程进行均等化处理,即:对于某一进阶课程所需的所有前导课程,其中的任意一门前导课程对该进阶课程的贡献度和重要程度相等。基于此,可得由该进阶课程构成的课程进阶体系完整度ruv(si),具体计算方式如下所示:
则用户选课健康状态良好度r(uv)可表示为:
3.4 基于用户选课健康状态感知模型的课程推荐方法
本研究的目的是为解决用户在线课程选择过程中忽略课程学习的进阶性,进而导致知识间出现断层的问题,而用户所选课程进阶体系的完整性是保证用户知识结构健壮的一种有效途径。根据3.3节构建的用户选课健康状态感知模型可知,本研究课程推荐的目标为。其次,为了提高推荐效率,该方法将按照ruv(si)降序的原则,优先推荐完整度较高的体系si中用户未参与且较低的课程。此外,为了避免用户所选课程偏向基础课程,进而导致课程推荐列表不足。因此,本研究将依据规则库,由已选课程作为前导课程并采取基于物品的协同算法来补充推荐列表,具体表达式为:
表1 数据集
输入:用户uv;用户选课集合c(uv);进阶关系LP(c);推荐数量n。
输出:推荐课程集合cv。
1.获取用户uv所关注的课程集合c(uv),依次检索并将所选课程按照进阶关系LP(c)构建课程进阶体系S(uv)。
2.计算每一课程进阶体系si(uv)的完整度ruv(si),并将ruv(si)<1的课程进阶体系si(uv)保存至R集合中。
3.对R按照降序排序。
4.依据R排序反向搜索si(uv)中用户未参与的课程,并按照升序排序存入推荐列表cv中。
综上,首先通过对目标网站进行分析,使用网络爬虫工具提取课程信息及其属性信息,进而识别和构建了基于课程进阶关系的规则库。其次,针对用户原有或基础能力及水平无法得知的问题,采用基于物品的协同过滤方法来挖掘及估计该用户已参与该课程学习的概率,并在规则库的基础上构建了用户选课健康状态感知模型。最后,针对用户选课健康状态实现了在线课程的个性化推荐。
4 实验分析
4.1 实验数据来源
借助网络爬虫工具,以“中国大学MOOC”平台网站课程及用户作为目标,收集其课程资源信息、用户信息及其行为信息。其中,课程资源信息以网站导航分类栏作为入口,依次爬取各类别下课程资源信息;用户信息的获取,参照平台用户ID编码形式,随机选取多个类ID编码作为起始账号并设置ID增加步长为1,依次对“中国大学MOOC”平台用户信息进行爬取,同时进行有效性筛选及确认;在用户信息的基础上,依次访问用户主页并获取其课程参与信息。通过2轮的数据收集(分别于2017年10月5日和2017年11月7日),获取到的数据详细情况如表1所示。
4.2 用户选课健康状态感知及推荐
(1)用户选课健康状态感知及分析
本研究以3 609名用户作为研究对象,借助其选课行为反馈数据,利用构建的用户选课健康状态感知模型对用户的健康状态进行分析,结果如图5所示。
图5 用户选课健康状态感知结果
由图5可知,目前该平台用户选课健康状态良好度主要集中在区间[1 ,0.7),其中在区间[1 .0,0.9)人数最多。由于在日常的考试(100分制)等级评分中,80分为“良好”等级的划分线,因此,以0.8作为阈值,即用户选课健康状态良好度低于0.8时,表明该用户选课健康状态较差。参考该阈值,对用户选课健康状态进行分析。结果显示,在r(uv)∈( ]0.8,0区间内的用户数量占比为37.46%;就参与进阶课程学习的用户集合而言,在该区间内的用户占比达到41.03%。这说明,目前该平台用户选课健康状态的问题较为突出。
表2 用户uv选课集合及其健康状态感知
(2)课程推荐模拟
从用户选课健康状态感知结果发现,当前所获取到3 609名用户中,37.46%的用户选课健康状态较差,亟需科学的课程推荐方法来引导用户进行课程选择。基于此,本研究将借助用户行为反馈的信息对其健康状态进行感知,进而依据计算结果来引导用户完成在线课程的选择和学习,保证其知识结构的完整性和健壮性。为了更清晰地展示本研究所提出的推荐方法应用过程,从3 609名研究对象中随机选取1名用户作为示例对象,按照构建的模型及方法对其选课健康状态进行感知及课程推荐。通过对用户uv所选的课程集合进行分析,得到如表2所示的结果。
表2结果显示,该用户在选课结构上,其进阶课程占比达到55.56%,而且该用户课程选择更偏向于计算机类课程。从用户选课健康状态良好度r(uv)=0.581可知,该用户选课健康状态较差,而且两个进阶体系完整度低于0.5。因此,该用户亟需通过科学的课程推荐方法来引导其进行课程选择,避免用户知识断层的问题进一步恶化而导致用户“辍学”或者厌学,造成网络课程资源和用户时间的浪费。对此,结合上表2中的结果及基于用户选课健康状态感知模型的课程推荐方法,通过对该用户行为反馈数据的计算(其中,课程推荐数量n=5),为其推荐如表3所示的课程。
表3 用户uv课程推荐列表
表3中,课程《大学计算机基础》与《计算机导论》之间属于或关系,但从用户选课情况得知,选择《大学计算机基础》这门课程的用户数量较高,所以优先推荐该课程。
基于此,依据本研究提出的推荐方法及表3的示例,针对3 609名研究对象的课程推荐效果进行分析。通过逐步递增推荐课程的数量n(0≤n≤5),并假设用户接受所推荐的全部课程,进而应用本研究提出的感知模型对用户选课健康状态良好度依次计算,并针对所有研究对象求其平均用户选课健康状态良好度(简称:平均良好度),同时对r(uv)=1的用户占比情况进行统计,得到了如图6所示的结果。
图6 课程推荐效果
从图6结果显示,平均用户选课健康状态良好度随用户所接受课程推荐数的增加而递增。同时,用户选课健康状态良好度r(uv)=1的用户占比也逐步递增。结果证明,本研究提出的课程推荐方法能够科学地引导用户进行课程选择,保证了用户选课结构的健壮性和完整性,可有效解决用户在线课程选择过程中忽略课程学习的进阶性,进而导致知识间出现断层的问题。
5 总结
为解决用户在线课程选择过程中忽略课程学习的进阶性,进而导致知识间出现断层这一问题,本研究借助网络爬虫工具从“中国大学MOOC”平台获取到课程及用户行为反馈信息,并借助协同过滤方法构建了基于规则库的用户选课健康状态感知模型,进而实现了课程的个性化推荐。通过数据分析及实验结果表明,目前该平台用户选课健康状态较差,而本文提出的推荐方法能够科学地引导用户进行课程选择并解决该问题,进而助力于我国办好网络教育。