计算机专业领域课程知识图谱的构建

发表时间:2021/3/15   来源:《科学与技术》2020年10月30期   作者:杨文茵,杨帝强,马莉,黄营
[导读] 本文分析了面向个性化学习的知识图谱构建思路
        杨文茵,杨帝强,马莉,黄营
        (佛山科学技术学院 电子信息工程学院,广东 佛山 528222)
        摘  要: 本文分析了面向个性化学习的知识图谱构建思路,以计算机科学与技术领域为例,构建了该学科领域课程的知识图谱,存储于Neo4j图数据库中,该学科领域的知识图谱可结合到个性化学习的课程资源的推荐、搜索等应用中。
        关键词:本体;知识图谱;Neo4j
1.引言
        在《知识图谱发展报告(2019)》中有关知识图谱的定义是:知识图谱(Knowledge Graph)是用某种具有结构的形式解析自然界中概念、实例及其之间的联系,提供了一种较好地整合、处理和理解互联网巨大信息的能力[1]。在二十世纪50年代开始出现知识图谱的雏形,未来知识图谱将会继续高速发展。本文主要研究计算机科学与技术这个学科领域里的知识图谱构建过程,所构建的学科课程领域的知识图谱,可根据知识图谱中各种实体间的联系来计算和表示知识进行基于知识图谱的课程资源推荐。
2.学科课程领域的知识抽取
    (1) 学科课程领域知识图谱分析
        当前并没有与学科课程方面紧密相关的知识库,为解决该难题,本次研究的实验数据主要从MOOC平台由人工爬虫得到。经过分析,决定把学科课程领域的知识归结为“课程””、“课程授课人”和“课程所属大学”这三种基本信息,构成学科课程领域知识三种主要的知识元素。
        (2) 学科课程领域的本体与知识
知识建模方法在目前可分为人工手动建模方式和半自动建模方式。本文采用前者进行建模。学科课程领域本体库的模式层定义五个概念类,分别是“课程”、“授课人”、“大分类”、“分类”和“机构”。
        (3) 学科课程领域本体库的构建
        知识资源需要在互联网中具有唯一的标识符,本项目把本体库的资源标识符定义为“义为源需要在互联网中具有唯一的标识符,本项目把本体库的资源标,构建得到的学科课程领域本体库,可通过可视化插件OntoGraf展示出来。
        (4) 学科课程领域的知识获取
        从MOOC平台获取得到基础数据并抽取出实体后,将使用Zhishi.me知识库[2]和CN-DBpedia知识库[3]尝试为“授课者”实体和“机构”实体进行属性扩充。获取方法是使用基于Python语言的一些爬虫框架技术。基于已经构建的本体库,要获取本体概念类相关的网页数据。爬取非结构化数据的任务分为以下几个子任务:1)爬取MOOC平台的所有课程详情页面的URL链接;2)爬取MOOC平台的所有机构/大学详情页面的URL链接;3)根据前两步得到的课程详情页面URL链接和机构/大学详情页面URL链接来分别爬取与“课程”、“授课人”、“分类”和“机构”相关的非结构化数据。
  (5) 获取半结构化的学科课程数据
        学科课程领域知识图谱的数据范围不像开放域类的知识图谱具有不可预测性和不可控性[4],领域知识图谱包含的实体内容是一般是某一研究领域的专业知识。项目把半结构化数据以队列形式组织,获取学科课程领域半结构化数据的过程如下:弹出队列头部取文件,重复一下操作直到队列为空:判断数据文件属于哪种实体类。如果是“课程”实体类,则对文件进行“课程”实体类相关标记;如果属于“机构”实体类,则进行“机构”实体类相关标记;如果都不是,则根据标记抽取实体、属性和关系知识,并保存在文件中。
  (6) 融合概念类实体的实例属性知识
        在1983年知识融合的概念被提出,指对来自多源的不同概念、上下文和不同表达等信息进行融合的过程。使用Zhishi.me知识库和CN-DBpedia知识库对“机构/大学”实体的其他属性的知识获取。扩充概念类实体的实例属性的流程如下:首先,读取“机构/大学”实体类文件数据,初始化实体名参数,进入Zhishi.me知识库请求获取知识。若知识库返回相关实体的数据为空,则将返回的实体知识进行缓存,否则初始化实体名参数进入CN-DBpedia知识库请求获取知识。然后判断CN-DBpedia知识库返回相关实体的数据是否为空。如果不为空,则读取实体类文件数据,直到到达末尾数据末尾。
3.学科课程领域知识图谱的知识存储
        目前根据存储结构的划分,知识图谱的存储主要可分为基于表结构的存储和基于图结构的存储。超图在一般的图形基础上,定义它的边能与任意个数的结点相连接,使其能解决简单图形中某些共指消解的问题。而据DB-Engines的统计,Neo4j已经成为使用频率最高的一个图数据库,本项目使用Neo4j作为存储工具。
        根据构建的本体库进行知识获取后,使用Cypher查询语言即可展示图谱中的知识。
4.结合学科课程领域知识图谱进行推荐的思路
        基于物品的相似度进行推荐是一种常见的推荐思想。只要得到了某一门课程资源的相似度课程列表,在该列表中选择相似度得分靠前的课程,便可以为用户当浏览或点击该课程时进行资源推荐。图1展示的是以课程“Python语言程序设计”节点为中心展开的关系的局部知识图;由此可以发现,当图谱中的节点与节点连通的边越多时,则节点与节点的关系就越紧密。由此可见,计算课程的相似度将通过计算学科课程领域知识图谱中三元组知识得到。
        

        图1 课程“Python”为中心展开的局部知识图
5.总结
        本文介绍了面向计算机“学科课程”领域的本体库和知识图谱的构建构成过程,并分析了基于“学科课程”领域的知识图谱进行推荐的思路;除此以外,该“学科课程”领域的知识图谱还能实现课程资源垂直领域的分布式集群搜索引擎等。


参考文献:
[1] 中国电子技术标准化研究院.知识图谱标准化白皮书(2019)[R/OL].        http://www.cesi.ac.cn/201909/5589.html.
[2]Xing Niu, Xinruo Sun, HaofenWang,ShuRong,GuilinQi,and Yong Yu. Zhishi.me-Weaving chinese linking open data[C]. The Semantic Weba[C].n 2011:205-220.
[3]Bo Xu, Yong Xu, Jiaqing Liang, Chehao Xie, Bin Liang, Wangyun Cui, and Yanghua Xiao. Cn-dbpedia: A never-ending chinese knowledge extraction system[J]. In International Conference on     Industrial, Engineering and Other Applications of Applied Intelligent Systems, 2017:428-438.
[4]Michele Banko,Michael J Cafarella,Stephen Soderland,Matthew Broadhead,and Oren Etzioni. Open information extraction from the web[J]. IJCAI,2007:2670-2676.

基金项目:佛山市自筹类科技计划项目(2018AB003691),广东省基础与应用基础研究基金联合基金项目(2019A1515111080),广东省自然科学基金项目(2018A0303130082)。
作者简介:杨文茵,1982年生,女,汉族,广东开平人,副教授,博士.
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: