+-
自适应学习

试题自动匹配知识点,并根据使用者的使用情况,为其推送相应的试题。

知识图谱

什么是知识图谱

知识图谱是一种结构化的语义网络,是用来表示实体与实体之间关联的结构化语义网络。

在使用知识图谱的时候,会用图的形式来描述知识工程中知识实体的关系。其中节点表示实体,边用来表示实体之间的关系。在这里引入三元组“实体-关系-实体”或“实体-属性-属性值”进行知识表示, 每个实体可用一个全局唯一确定的ID标识, 属性-属性值描述知识实体的内在特性, 知识实体之间通过关系构成网状的知识结构。

所以在这里,笔者突然对知识图谱产生一种熟悉的感觉,没错,ER图!不难发现,这根我们构建ER图所用到的元素基本一致。

下图为知识图谱的网络结构,其中Ei为知识实体,Ri,j表示实体之间的关系,ET表示实体的属性:

image.png

我们也可以将实体的属性用外连一个圆的方式表示,比如:

image.png

知识图谱从逻辑上分为数据层和模式层,数据层上一知识以事实为单位储存在数据库中,每条知识用一个SPO(Subject-Predicate-Object)三元组表示。模式层用于存储经过提炼的知识。

知识图谱的构建

知识图谱的构建从原始数据出发,通过一些技术,将知识事实从原始数据中提取出来,再把知识元素放到知识库的数据层和模式层中。知识图谱的构建是一个迭代更新的过程

image.png

知识图谱包括自顶向下和自下而上两种构建方式

关联规则的挖掘

以搜索引擎为例,我们在输入要搜索的内容时,都会为我们补全要搜索的内容。它会找出互联网上常常一起出现的词语对,然后为我们进行推送补全。

应用到我们的内容上,当有某个词语常常与某个知识点进行匹配,那么我们就可以找出高频的进行推荐,那么在进行匹配的时候,就不需要扫描整个知识库,这将节省很大一部分匹配时间。

FP-Growth算法,将数据集存储在一个特定的称做FP树的结构之后发现频繁项集或者频繁项对,即常在一块出现的元素项的集合FP树。然后再对FP树进行挖掘,找到我们需要的关联信息。

文本分类

机器学习中有监督(需要对数据进行已知分类的标记)的分类方法,基于提前定义好的文本类别,通过把文本数据作为分类的对象,将需要分类的文本划分至提前定义好的文本类别中。

该技术将会用于试题的知识点匹配。

聚类分析

相较于文本分类,聚类分析是一种无监督(不需要对数据进行标记)的学习方法。它的原理是基于特定的数据集寻找该数据集中具有相似特征的数据,并把拥有相似特征的数据划分为一组。

该技术会在分析使用者的行为时使用。

试题自动匹配知识点

思路分析

文本数据预处理——>文本特征的提取——>分类模型效果比对——>选择分类模型:
image.png

文本预处理

处理分词和停用词过滤。

分词,将长句或段落转换为多个简单词和标点表示。可以将中文连续字节流用离散单词流形式代替。即采用特定词典的分词方法按照特定的分词算法进行分词。

停用词过滤处理。分词后的文本包含许多没有意义的单词,停用词过滤处理就是将一些完全没有用或是没有意义但是出现频率很高的单词去除。

文本特征提取

TF-IDF:常用语数据挖掘的加权技术。在进行之前,需要将处理过的文本用计算机能识别和处理的结构化形式表示,用向量空间模型VSM来表示。同时,将加权的文本特征记性形式转换处理,记为:Ci=(Ci1,Ci2,Ci3...Cij...Cin),Cij表示第i个试题文本,第j个特征值的权重。

Cij = TFij x IDFj

其中TFij表示第i个试题文本中,文本特征项j出现的词频,IDFj表示整个文本特征集中特征项j出现的次数,即逆向文档频率。

分类器分类

生成矩阵表示试题和知识点之间的从属关系:

image.png

其中qkij表示试题Qi和知识点Kj之间是否具有从属关系,即是否属于知识点Kj

总结

初步对功能实现的基本过程,以及对实现过程中可能会用到的方法、算法做了整理总结,还有很多细节的地方没有考虑清楚。整体上,实现将题目和知识点进行匹配,最关键的还是知识图谱的构建。

相关参考:
https://blog.csdn.net/javastart/article/details/50521453
基于知识图谱的自适应学习系统的设计与实现
基于知识图谱的自适应学习系统的研究与实现