热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于深度学习知识追踪研究进展(综述)数据集模型方法

基于深度学习的知识追踪研究进展计算机研究与发展中文核心期刊https:kns.cnki.netkcmsdetaildetail.aspx?dbcodeCAPJ&dbnameCAPJ

基于深度学习的知识追踪研究进展


计算机研究与发展 中文核心期刊

https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CAPJ&dbname=CAPJLAST&filename=JFYZ20210608001&v=8SqcXNnYzq3Od8MixO%25mmd2Bb0hnPGsfdzLN%25mmd2Byb7OHxxKZuyjdCrFsuZNA5r%25mmd2F3dkSqGtL


看看之前写的课程综述,在看看别人的工作,距离还是很远啊,拆解拆解他们工作做的不错

基于深度学习的知识追踪(deep learning based knowledge tracing,DLKT)

本文常用符号定义


符号定义
k_{t}知识成分KC
q_{t}题目

DLKT 领域开创性模型DKT

DKT以循环神经网络(recurrent neuralnetwork,RNN)为基础结构.RNN 是一种具有记忆性
的序列模型,序列结构使其符合学习中的近因效应并保留了学习轨迹信息[17].这种特性使RNN(包括长短期记忆网络[18](long short term memory,LSTM)和门控循环网络[19](gated recurrent unit,GRU)等变体)成为了DLKT 领域使用最广泛的模型.

DKT 以学生的学习交互记录为\left ( x_{1} ,x_{2}\cdot \cdot \cdot x_{t}\right )输入,通过one-hot 编码或压缩感知[20](compress sensing),x_{t} 被转化为向量输入模型.在DKT 中,RNN 的隐藏状态h_{t} 被解释为学生的知识状态, h_{t} 被进一步通过一个Sigmoid 激活的线性层得到预测结果y_{t}.y_{t}的长度等于题目数量,其每个元素代表学生正确回答对应问题的预测概率.具体的计算过程如下所示:

相对于以BKT 为代表的传统机器学习模型,DKT 不需要人工标注的数据就有更好的表现(AUC
提高了20%[21]),且能够捕捉并利用更深层次的学生知识表征[22-23],这使其非常适合以学习为中心的教学评估系统


2 DKT 的改进方法

可解释性差、长期依赖问题和学习特征少是DKT模型最显著的3 个问题,许多研究许多研究者致力于对其进行扩展和改进,以解决这些问题.我们将各种改进方法梳理为下图

下表总结了各种模型所属的改进方向类别和其主要的改进方式


2 DLKT 领域公开数据集简述、下载链接及使用其的模型

数据集
简述
下载链接
Synthetic
DKT 模型使用的模拟数据集,它模拟了 2000 名虚拟学生,他们回答了来自 5 个虚拟知识点的 50 问题.仅在此数据集中,所有学生回答问题的顺序相同

https://github.com/chrispiech/

DeepKnowledgeTracing/tree/

master/data/synthetic

Static2011
来自一个大学级的工程静力学课程,具有 333 个学生在 1223 个问题上的 189927 个交互
https://pslcdatashop.web.cmu.edu
/DatasetInfo?datasetId=507
KDDCup2010
2010 KDD 杯比赛开发数据集,具有 574 个学生 在 436 个问题上的 607026 个交互
https://pslcdatashop.web.cmu.edu
/KDDCup/downloads.jsp
EdNet
Santa(一个人工智能导学系统)收集的大规模 分层的学生活动数据集,包含 784309 名学生131317236 个交互信息,是迄今为止发布的最大的 公共交互教育系统数据集
https://github.com/riiid/ednet
Junyi
来自 Junyi Academy(一个在线教育网站),除 EdNet 外数据量最多的开源数据集
https://pslcdatashop.web.cmu.edu/
DatasetInfo?datase tId=1198
ASSIST2009
来自 ASSISTMENTS 在线辅导系统,去掉重复记 录之后,包含4151个学生在110个问题上的325673 个交互
https://sites.google.com/site/
assistmentsdata/home/assistment-2009-2010data/skill-builder-data-2009-2010
ASSIST2012
包含 27066 个学生在 45716 个问题上的 2541201个交互
https://sites.google.com/site/assistmentsdata/
home/2012-13-school-data-with-affect
ASSIST2015
包含 19840 个学生在 100 个问题上的 683801 个交互
https://sites.google.com/site/assistmentsdata/
home/2015-assistments-skill-builderdata
ASSIST2017
包含 686 个学生在 102 个问题上的942816 个交互
https://sites.google.com/view/assistments
datamining/dataset?authuser=0


表4 总结了使用公开数据集的DLKT 模型的性能表现(以大多数论文都采用了的
AUC 指标为基准),表中的数据皆来自于模型初始论文,取最大值.需要指出的是,深度学习模型受参数设置影响较大,且同一个模型在不同论文中的表现也存在较大


未来展望


1)现有DLKT 模型大多使用二元变量来表示题目的回答情况,这种建模方式不适合分数值分布连续的主观题.Wang 等人[86]和Swamy 等人[89]在处理学生的编程数据时,使用了学习者回答的连续快照作为回答情况的指示器,这提供了一种对主观题目建模的方式.而其他的对主观题目的建模方法仍有很大的研究前景.
2)目前DLKT 主要应用于在线教育平台,如何利用好在线平台所提供的大量学习轨迹信息,是研究的难点之一.Mongkhonvanit 等人[95]提供了一种对教学视频观看行为建模的方法,Huan 等人[96]则利用了鼠标轨迹信息.而其他学习特征信息的提取、建模亟需更多的研究.与此同时,特征的添加也是一大难点.对于以RNN 为基础的DLKT 模型来说,输入向量的长度会显著影响模型的训练速度.这就需要使用降维方法减小向量的长度,或者采用其他的嵌入方式(如LSTMCQ)融合更多特征而不增加向量长度.总而言之,学习特征信息的提取、建模、添加将会是DLKT实际应用中的重点研究方向.
3)DLKT 的优秀性能使利用其验证经典教育理论成为可能.如Lalwani 等人[90]验证改进的布鲁姆分
类与遗忘曲线.同时,已提出的教育理论也可以为建模提供指导,如Gan 等人[80]结合了学习与遗忘理论.经典教育理论在DLKT 领域的应用值得更多的研究者加以关注.
4)利用DLKT 模型构建知识图谱.DLKT 模型可以用来发现知识点之间的相互关系,构建出知识点关系图,这可以看作是简化的知识图谱.知识图谱作为当前人工智能时代最为主要的知识表现形式,如何扩展模型的知识结构发现能力,将知识点关系图扩展为知识图谱将会是未来的重点研究方向.
5)目前的DLKT 模型中仍存在许多不确定因素,现有的理论推断并不足以解释DLKT 模型的训练过程.在基于Transformer 的模型中,掩码机制被用来屏蔽后面时间的权重,这是为了防止未答的题目影响已答的题目.而Xu 等人[97]使用双向LSTM 以融合过去和未来的上下文序列信息.两者所依据的原理是相悖的,但都获得了性能提升.如何深入研究,以完整解释DLKT 模型的训练过程,将会是未来的重点研究方向.
6)目前DLKT 主要使用RNN 模型,许多研究已经证明了RNN 的优越性.同时,Transformer 模型,GNN 模型也在知识追踪领域有着优秀的表现.而其他更多模型的应用仍亟需深度研究,对其他深度学习模型的应用将会是重要研究方向.
7)Transformer 相对于RNN 的一大优势就是没有长期依赖问题,但目前基于Transformer 的DLKT
模型却并没有利用好这个优势,如SAKT 和SAINT,它们都将序列长度设置为100,这个长度并没有超过LSTM 的序列学习容量(200).同时,实验显示,位置编码的有无对最终的结果影响并不大.这似乎说明长期依赖与序列关系对KT 任务的影响没有目前所认为的那么大,以此类推,各种学习特征对于KT 任务的影响值得进一步研究.

其他的内容可以看文章本身。写的很不错,向其学习


推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了在Python张量流中使用make_merged_spec()方法合并设备规格对象的方法和语法,以及参数和返回值的说明,并提供了一个示例代码。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
author-avatar
b01453901
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有