结合认知诊断和答题行为分析的试题推荐方法*

2022-12-16 09:23熊超马华
计算机时代 2022年12期
关键词:主观题掌握情况答题

熊超,马华

(湖南师范大学信息科学与工程学院,湖南 长沙 410081)

0 引言

随着近年来在线教育大规模普及,线上学习已经成为当前的主要学习形式之一,在线学习平台中丰富的试题资源,对于学生巩固与强化所学知识,发挥了重要作用[1]。但是,试题库中的试题资源数量通常比较庞大,而多数现有的试题系统仅由学生自主选择所需练习的试题,学生往往凭借主观感觉去选择试题,可解释性不高。同时,学生对需要练习的知识点的感知较为笼统[2],容易陷入典型的学习困境,即不清楚自己对各个知识点的掌握情况,也不知道应该挑选哪些适合自己的试题来巩固或强化所学的知识点。因此,我们对学生的认知状态进行科学的诊断分析,并以此来指导在线学习平台对学生进行个性化的试题推荐,这已成为当前的一个研究热点[3-4]。

心理与教育测量中,对个体的认知过程、加工技能或知识结构的诊断评估被称为认知诊断[5]。DINA模型[6]是一种典型的认知诊断模型,目前,大多数基于认知诊断的试题推荐都是基于DINA 模型,例如,朱天宇等人[7]基于DINA 模型提出了一套试题推荐方法。DINA 模型仅支持对客观题的处理,即答案仅为对或错两种情况。针对DINA 模型的局限性,Liu 等人[8]提出了模糊认知诊断框架(fuzzy cognitive diagnosis framework,FuzzyCDF)以支持认知诊断模型处理主观题。然而,现有研究在进行个性化试题推荐时,侧重于考虑学生个体的认知诊断情况,缺乏对学生群体的共性特性的评估。

综上所述,本文在模糊认知诊断框架的基础上,对学生在主观题和客观题上的答题行为进行建模分析,计算学生答题风格相似度,再采用协同过滤方法计算具有相似做题风格的学生得分上的相似度。

通过充分考虑学生的个体知识点掌握程度和群体的学生学习共性,本文提出了一个新的个性化试题混合推荐方法,并基于它进行了系统实现,该系统以学生的试题作答情况、知识点关联矩阵和答题行为作为输入,对学生进行认知诊断分析与建模,获取学生的知识点掌握情况,为其推荐合适的试题,生成学生认知诊断报告,以此为学生自主学习提供指导,可有效提升学生的学习质量和效率。

1 相关理论

1.1 模糊认知诊断框架

传统的DINA 模型仅能有效地处理客观题,而无法有效地处理主观题。针对这一问题,Liu 等人[8]提出了FuzzyCDF。该框架的思路是首先通过IRT 的双参数反应模型表达式计算出学生对知识点的认知状态,即使用一个模糊集合中的值(即一个从0 到1 的实数)来表示学生对于知识点的认知能力,再用模糊并和模糊交运算来建立主观题和客观题的认知作答模式。使用知识点相关的模糊集的隶属函数来确定学生i 对知识点k的掌握程度,其计算方法如下所示。

其中,αik表示学生i对知识点k的掌握程度,即学生i对知识点k的隶属度i(k);aik表示知识点的区分度;bik表示知识点k对于学生i来说的难度;θi表示学生i的潜在特质水平;D为常数等于-1.7。对于客观题,学生只有掌握试题考察的所有知识点才能答对它。而对于主观题,学生在主观题上的得分越高,说明他掌握的知识点越多,其对该题的掌握程度也越高。客观题和主观题的计算公式如下:

其中,ηij表示学生i对试题j的掌握程度;αik表示学生i对知识点k的掌握程度;qjk表示试题j是否考察了知识点k,取值为1代表考察了,取值为0代表未考察;∩和∪分别代表模糊交和模糊并运算。

1.2 概率矩阵分解

概率矩阵分解(probabilistic matrix factorization,PMF)作为一种传统的预测方法,最开始被用于电影推荐,之后被广泛用于推荐系统,可以通过预测学生在试题上的得分来将其应用于个性化试题推荐。首先将学生和试题分别对应到传统推荐系统中的用户和商品,再将学生的答题情况矩阵对应用户对物品的喜爱程度。图1为将概率矩阵分解应用于学生得分矩阵分解时的图模型,PMF 将学生得分矩阵R分解为学生和试题的特征矩阵M、N,其中M∈ZD×V、N∈ZD×V且Mu和Nv分别表示特定学生u和试题v的潜在特征向量来刻画学生和试题在低维空间下的表现。

图1 学生成绩PMF图模型

2 一种新的个性化试题推荐方法

2.1 学生答题行为和作答情况获取

本文获取的学生答题行为为学生跳题行为与学生修改答案行为。其中,学生跳题行为可分为明显性跳题和技巧性跳题,明显性跳题即用户由于对试题考察知识点不熟悉等原因放弃试题,而技巧性跳题则表示学生为了取得更好的成绩去运用一些技巧跳题,如在规定时间内作答试题,学生主动放弃一些耗时较大而分值较少的试题。由于本系统不限制学生做题的时间,因此仅需考虑学生的明显性跳题行为。首先,系统在生成推荐试题列表时将试题号按列表顺序存入数据库中,之后在学生作答过程中将正在作答试题号与数据库中应作答试题号进行比较,若相等则不记录,若不相等则将数据库中该学生跳题次数加1。同时,在用户的作答过程中,除了记录答案外还记录本次答案提交时刻及上次答案提交时刻,若两个时刻不相等,则说明用户在作答后修改答案,将数据库中该学生改题次数加1。

将学生每次作答完推荐试题后的答题情况存入数据库中,每一条作答情况记录对应一条推荐列表,0表示错误,1表示正确,以字符串形式存储。

2.2 计算学生答题风格相似度

从数据库中提取学生答题行为矩阵B矩阵,该矩阵一行表示一名学生,第一列为跳题次数,第二列为改题次数。通过式⑷计算两个学生u1和u2之间的相似度。

计算当前学生与其余所有学生的相似度,然后选取相似度最高的前50名学生组成学生集U。

2.3 基于FuzzyCDF进行学生认知诊断

基于FuzzyCDF 进行学生认知诊断的步骤如下:①使用MCMC算法对FuzzyCDF进行失误率s、猜测率g、潜在特质θ、主观题归一化方差σ、分度a和困难度b的参数估计,并结合一部分初始数据获得训练后的模型。②提取学生作答模型,使用训练过的FuzzyCDF对学生作答情况进行分析,由式⑴计算学生对各个知识点的掌握情况,由式⑵、式⑶计算学生在各个试题上的掌握水平,学生试题掌握水平表现为一个矩阵(即学生试题掌握矩阵A,A中的每一行代表一个学生,每一列代表一个试题)。③由于每次学生在使用系统进行习题练习之后都会产生新的历史作答记录,因此在学生每次使用完系统退出之后,都需要更新参数以准确获得学生的知识点掌握情况。

2.4 基于PMF的得分预测

在得到学生认知诊断信息和答题风格相似的学生集合U后,将其用于概率矩阵分解。具体的,首先在学生试题掌握矩阵A中提取出学生集合U中所有学生的试题掌握情况组成相似学生试题掌握矩阵S,然后由式⑸从相似学生试题掌握矩阵S中提取特征buv,其作为PMF的先验信息[6]。

其中,bu表示学生Pu的学习得分先验程度,体现了学生之间知识点掌握程度的差异,为矩阵A第u行的平均值bv表示试题v的先验得分程度,体现了题目之间难易程度的差异,为矩阵A第v列的平均值。然后利用概率矩阵分解和式⑹获得学生的潜在作答情况ηuv。

其中,μ为总体平均分,ρ表示学生个性学习状态与共性学习状态在预测时所占的比例,ρ∈[0,1],ρ越大表示预测得分更多的受学习状态共性影响,可自行调节,M、N表示PMF 分解出的低纬因子。其中,个性学习表示不考虑与其他学生的相似度,而共性学习则考虑当前学生与其他学生间的相似度。

2.5 根据学生得分预测进行试题推荐

在获得学生潜在作答情况ηuv后,计算出学生Pu正确回答试题v的概率,随后设定边界值low和high(low<high),根据学生潜在作答情况向学生Pu从待推荐试题集合J中向其推荐正确作答概率在low和high之间的试题集合J0。

3 个性化试题推荐系统的设计和实现

3.1 系统设计

系统采用SpringBoot、Layui、Thymeleaf 开发,数据库选用Mysql,FuzzyCDF 与PMF均以Python 语言编码,使用EChart 进行数据可视化,运用Runtime.getRuntime()执行脚本文件从而实现在Java 项目中调用FuzzyCDF与PMF算法。系统主要包括了用户管理、试题管理、知识点管理、试题推荐、学习诊断报告、习题练习等六个模块。系统的功能模块结构如图2所示。

图2 系统功能模块结构

系统中六个核心模块的特点如下。①用户管理模块:系统支持管理员、教师、学生三种权限登录,管理员负责管理教师和学生账号,教师负责知识点管理、试题管理,学生可进行试题练习和查看认知诊断报告。其中,管理员账号只能在数据库中添加,教师账号只能由管理员进行管理而不能注册,学生账号允许学生自主注册。②试题管理模块:系统支持教师录入、修改、删除试题,为试题添加相关知识点。③知识点管理模块:系统支持教师增加、修改、删除知识点信息,同时知识点的变化会影响Q矩阵的变化。④试题推荐模块:系统用本文提出的试题推荐方法生成学生试题推荐列表。⑤学习诊断模块:系统将学生对各知识点的掌握情况通过Echart 以可视化的方式呈现,让学生直观地了解自己对各个知识点的掌握情况,有助于提高增强学习针对性和提高学习效率。⑥试题练习模块:系统支持学生自己选择不同知识点关联的试题,也支持学生练习系统推荐试题。学生选择练习推荐试题时,系统访问数据库查看学生最新的试题推荐列表,将试题展示出来。学生在进行试题练习时系统会记录其作答情况及答题行为。

3.2 系统实现

学生登录后的首页如图3 所示,认知诊断结果的展示页面如图4所示。

图3 学生首页

图4 认知诊断报告页面

4 结束语

本文提出的个性化试题推荐方法和系统,基于模糊认知诊断框架获取学生的当前认知状态,分析学生答题过程中的动态行为数据,获得学生的共性特性,通过结合这两方面的信息来提高个性化试题推荐的准确性有利于提高学生的学习效率和试题资源利用率。未来研究中,我们将引入自然语言处理,使系统能处理简答题等多种主观题,以完善系统对更多主观和客观题型的处理机制。

猜你喜欢
主观题掌握情况答题
浅谈“立体几何主观题”的复习备考
浅谈高中政治“认识类”主观题答题技巧
极坐标方程主观题考点分析
邀你来答题
邀你来答题
不同健康教育模式对女性人工流产术后保健知识掌握情况的影响研究
邀你来答题
高考政治主观题对学生思维能力的考查
邀你来答题
菏泽学院公共体育课学生篮球规则掌握情况及对策分析