江西科技师范大学数学与计算机科学学院 程山英
在“互联网+”教学时代,学生面对呈爆炸式增长的学习平台和学习资源,容易陷入知识迷航,面对各种质量参差不齐的教学资源无法高速、有效、精准地在海量信息中找到所需要的学习资料。《数据库原理》课程是一门知识点多、关联性强的专业必修课程,学习者在互联网中进行学习时,很难精准地找到所需要的学习资源。因此,将知识图谱技术应用到《数据库原理》课程的教学中,用可视化的形式进行知识表达,学习者能进行有效、科学地学习。因此,将专业学科与知识图谱的可视化相结合,能提高教学质量,促进教育发展。
知识图谱是一种语义网络,对现实世界的实体和实体之间的关系用可视化的形式显现出来。知识图谱通过有向图把相关联的语义信息连接在一起,能将网络大数据的应用价值大幅提高。
课程知识图谱是知识图谱与教育相融合,在教育上的具体应用。课程知识图谱将知识图谱技术应用于某个学科或者课程,将课程内的所有知识点以(实体,关系,实体)的三元组形式构建一个网状的结构。不同的知识点用“实体”表示,知识点的关联用“关系”表示,关系在直观上就是有向边,有起点,有终点,边的方向和标签能说明具体的关系类型。这样通过知识图谱可以将知识点、知识点之间的概念以直观明了的方式呈现在学习者面前,以便学习者能客观和清楚地理解知识点和知识之间的关系。
本文所构建的知识图谱是采用自底向上的方式完成的,首先进行了实体提取的工作,其次构建模式层的本体模式。
构建课程知识图谱的第一步是获取大量的数据。首先确定领域范围为《数据库原理》;其次对经典数据库教材,高等教育出版社的《数据库系统概论》进行人工提取文字内容,整理收集成文件;最后以《数据库原理》教材作为参考依据,应用网络爬虫技术,对教材中的相关知识点进行数据采集,并在维基百科中找到相关的知识数据进行下载。应用相关算法对语料库做处理,自动处理与人工筛选相结合,对所有数据进行过滤与整合,得到知识点,为《数据库原理》学科知识图谱的构建提供充分的数据支持。
XLink是基于跨语言知识库XLORE的实体链接系统。将数据收集阶段的知识点文档进行输入,XLink能识别出《数据库原理》知识点文档中的知识点实体并链接到XLORE相对应的实体上。文本信息和知识库通过实体链接进行桥接,为知识点文本理解提供了外部知识。本文的知识图谱通过清华实验室的实体抽取,XLink接口对之前数据收集阶段形成的文件中的知识概念进行抽取,得到文件中包含的知识概念。
BERT模型的全称是Bidirectional Encoder Representations from Transformer。BERT模型是多层的Transformer架构。在BERT模型中,多层的编码器进行编码,对句子中的每一个词应用自注意力机制建立线性相关,词向量和位置向量在数据库原理知识点中起着关键作用。因此本文将BERT模型引入数据库原理知识点实体关系抽取模型框架中,运用BERT模型对知识概念进行词向量,然后以种子概念为聚类中心对抽取的知识概念进行聚类,得到种子概念聚类后的结果,聚类越靠前,知识概念和本课程越有关系。
完成了数据采集和概念抽取后,将下来的工作是要从数据中抽取实体和关系。对聚类后的概念和课程对应的概念进行三元组划分,构造实体与实体间的关系,并将整理好的三元组写入Neo4j图形数据库。假设:任意一个实体对仅有一个关系。定义了六类实体对关系,分别是依赖,被依赖,包含,属于,无关,有关。需要特别说明的是,本文构建了“章节概念”,将每一章的内容进行了知识点的归纳。
考虑到课程知识点的特殊性和知识的严谨性,初步对实体关系进行了人工标注。同时为了增强系统的可扩展性,预留了手工标注数据的功能,在以后的使用过程中,如果发现数据、关系有误差,随时可以进行更改。
在完成了数据采集、概念和关系抽取的工作后,就需要对《数据库原理》知识图谱进行可视化的设计与实现。
应用Python的py2neo,把之前文件中的实体和关系三元组全部存储到Neo4j图形数据库中,在应用Cypher语言对《数据库原理》课程知识图谱进行各种个性化的查询和路径分析操作,如图1所示,各知识点的关系很直观清晰地显示出来。
图1 实体关系
Django是一个开源的Web框架,它拥有丰富的在线文档,文档记录了完备的信息,特别容易上手进行开发设计。Django有强大的数据库访问组件,方便进行数据库的访问,且界面友好,有效的错误提示和帮助,适合连接数据库的应用程序。
实现开发知识图谱展示Web页面,根据查询的知识概念,得到该知识概念对应的知识图谱,同时调用开源的知识概念解释接口,获取对当前知识概念的解释。运用Django框架,对Neo4j后台图形数据库中的知识图谱数据与Web前端进行交互,前端是通过Ajax方法调用后端接口查找数据,实现可视化技术。
在Web页面中,默认显示《数据库原理》课程知识指定个数的节点,在右侧的查询中输入查询的内容,能展开查询节点的功能。
选择计算机专业学生进行对比学习实验,将40名学生随机分成二组,对比实验学习,然后进行测试和调查问卷进行学习效果分析。测试表明,应用课程知识图谱进行学习,测试时间有效缩短,测试成绩明显提升。对使用课程知识图谱学习的学生进行问卷调查。从结果可以看出90%的学生认为课程知识图谱使用方便,95%的学生认为知识图谱能帮助掌握课程整体结构,93%的学生认为课程知识图谱能帮助理解知识间的关联。
通过效果分析可知,《数据库原理》课程知识图谱能帮助学生掌握知识整体结构和理解知识点之间的关系,改善学生学习体验,提升教学效果。
实践结果表明,《数据库原理》可视化知识图谱系统的使用,使学习者形成清晰的知识体系,将知识内容直观简洁地呈现给学习者,降低了学习者的视觉负担,提升学习者的学习效率,为知识图谱应用在教学中的发展提供启示。