您好, 访客   登录/注册

基于知识图谱的初中数学问题研究

来源:用户上传      作者:

  摘 要:随着信息技术的发展,数字化时代的到来,数学的作用日益凸显,且初中数学对学生有举足轻重的作用。然而对于一些中学生来说,对数学知识的学习存在着很大的个体差异性。由此,可利用Neo4j构建一个关于初中数学学科各章节目录中所包含的知识点的知识图谱,帮助学生在学习过程中,提高学习效率。除此之外,利用爬虫技术爬取一定数量的数学题目进行研究。通过知识图谱将题目所包含的知识点对应到各个章节,有助于学生对知识进行复习巩固。
  关键词:初中数学;Neo4j  知识图谱爬虫
  中图分类号:G63          文献标识码:A          文章编号:1673-9132(2020)17-0083-02
  DOI:10.16657/j.cnki.issn1673-9132.2020.17.041
   知识图谱技术已经广泛应用到金融、工业、医学、教育等领域, 成为真实世界研究中的热点问题[1]。知识图谱就是以科学知识为研究对象,以可视化的方式来揭示科学知识的发展历程及其结构关系,并且以空间结构的形式将学科内部或多学科间的交互关系展示出来。因此,知识图谱不仅可以对知识进行查找、匹配、获取、推送和共享等功能,还具有智能工具化和可视化的特性[2]。通过知识图谱,将网页中的非结构化文本内容中提取出实体及实体关系,将这些文本内容转化为相互连接的图谱结构[3]。
   初中数学知识有着自己独有的特点,可以分成多个模块。如果对于中考生复习来说,按照模块复习更为系统,但对于初一、初二年级的学生来说,他们并没有系统的将知识学完,因此按照章节帮助学生查漏补缺是最为有效也是最为合适的。本研究是根据数学题目中的考查范围大,题量和题型多等特点,帮助学生提取出题目中考查的知识点,然后对应到教材中的章节里面,可以及时地帮助学生了解自己的薄弱知识点,从而有的放矢地填补缺漏。因此文章所构建的知识图谱是通过教材中的各章节来组织的。
   附图1是整个流程图,先构建知识图谱,然后将题目分词之后与图谱中的知识节点做匹配,再对应到相关章节内容中。
  一、知识图谱的绘制
   知识图谱是一种基于图的数据结构,由节点和边组成。其中节点即实体,边即实体之间的关系。目前可用于知识图谱绘制的软件有多种,其中使用的较多的有Cite Space、Gephi、Neo4j等[1]。由于Neo4j在知识图谱的绘制中有着独特的优势:以图的结构存储,可以存储图的节点、属性和边,这有助于提高数据库的性能;同时它的安装过程比较简单[4]。因此本文将利用Neo4j软件对所获得的知识节点,知识节点之间的关系进行知识图谱的绘制。
   本文所采用的语言工具是python语言,使用的系统是Windows7系统。
  (一)实体识别
   数学知识的实体即节点,本文采用人教版初中数学教材,利用里面各章节的目录及其所包含的知识点作为知识图谱中的节点,具体节点信息示例如下:
   在七年级上册中,第一章目录为有理数,其节目录第一节正数和负数,则其所包含的知识点为正数、负数等。
  (二)关系识别
   鉴于节点统计完之后,我们可以统计节点与节点之间的关系。一般根据目录做的节点关系的统计为包含关系。因为这主要是为了学生针对性地学习某一节的内容而制订的,是针对各章节的知识点来进行统计分析的,因此并没有系统地将各模块的知识点的关系统计出来,对于各知识点之间的关系在之后制作各模块知识图谱的时候将会进行统计。文中关于各节点之间的关系主要体现了节点之间的包含关系,因为主要是想让学生通过错题对应到各节内容中,以此来补习自己所欠缺的知识。
  (三)知识图谱绘制
   以上将节点信息和节点关系信息统计出来之后,利用neo4j软件并结合python语言将知识图谱绘制出来,如图2所示。由于知识图谱包含的内容较多,因此这张图只是展示了部分节点和节点间的关系。
  二、初中数学问题研究
  (一)数据来源
   本文主要研究学生有不会的题目或是出错的题目时,如何将这些题目对应到教材中准确地补习自己欠缺的知识点。因此在选取数据时通过网络爬虫的技术对21世纪教育网中的初中数学试题进行爬取,然后对试题进行数据的清洗。
  (二)分 词
   当我们获取知识点的时候,要通过分词的方法来进行。这样就可以将之前的句子分成多个词语。分词的方法有多种,但通过比较,本文采用jieba分词的技术对试题进行分词。jieba分词有三种模式:精确模式、全模式和搜索引擎模式[5]。但由于数学这一学科的特殊性,例如:‘平行四边形’这一数学名词,它还可以分成‘平行’和‘四边形’这两个数学名词,因此为了分词的效果更加准确,本文在分词的时候选用了jieba分词中的全模式进行分词,这样所分得的数学名词更加全面。
  (三)实验过程
   分词之后,将所有的词與之前在制作知识图谱时所得到的各章节的知识点进行逐一匹配,当有这一知识点出现时,就先匹配到包含这一知识点的章节中,然后再根据题目中的其他词进行精确匹配,如果没有精确匹配的知识点,就直接对应到这一节甚至是这一章的内容。例如:一道题目是‘判断0的平方根是0这一说法是否正确’,在这道题目中我们通过jieba分词之后所得到的结果是‘判断 0 的 平方 平方根 方根 是 0 这 一 说法 是否 正确’。通过这个我们可以对比之前所得到的图谱中的数学知识,可以找到‘平方’和‘平方根’是数学知识,那么我们就能找到它所对应的章节为第六章的6.1这一小节。
  三、结语
   本文主要是通过制作的知识图谱让学生更加清晰地看到每个章节所包含的知识点,同时在自己出错的题目中可以找到对应的知识点,便于补习自己所不擅长的章节,同时也可以通过模糊匹配看到所包含这一知识点的相关章节,可以进行系统的学习。同时,本文获取的知识点不是很全面,因此需要后续持续往这一知识图谱中加入新的知识点;另外,本文对于各个知识点之间的关系没有进行统计,在今后的研究过程中可以将知识点之间的关系统计出来,以构成一个完整的初中数学知识图谱,方便学生的学习和查找知识点,且更系统地将整个初中数学架构掌握起来。
  参考文献:
  [1]李新龙,刘岩,何丽云,刘保延,张艳宏.知识图谱研究概况及其在中医药领域的应用[J].中国中医药信息杂志,2017(7):129.
  [2]朱游娟.初中数学问题的全知识图谱设计与实现[D].电子科技大学,2016.
  [3]赵军,刘康,何世柱,陈玉博.知识图谱[M].北京:高等教育出版社,2018.
  [4]郝培豪,高洁.基于Neo4j图数据库的警务安保知识图谱可视化分析[J].研究与开发,2018(4):8.
  [5]涂铭,刘洋,刘树春.python自然语言处理实战:核心技术与算法[M].北京:机械工业出版社,2018.
转载注明来源:https://www.xzbu.com/1/view-15232191.htm