一种基于Neo4j和大数据的初等数学知识图谱构建方法

文档序号:26578215发布日期:2021-09-08 02:59阅读:289来源:国知局
一种基于Neo4j和大数据的初等数学知识图谱构建方法
一种基于neo4j和大数据的初等数学知识图谱构建方法
技术领域
1.本发明属于初等数学知识图谱构建技术领域,尤其涉及一种基于neo4j和大数据的初等数学知识图谱构建方法。


背景技术:

2.2012年谷歌提出知识图谱概念以来,国内外很多的研究机构及科技公司开始构建知识图谱,涉及到多个领域,如搜索、电商、金融风控系统、医疗、教育等。同时,国内很多互联网公司和高校也在构建知识图谱。如百度公司曾致力于构建以知识图谱为核心的“百度知心”,用于增强公司的搜索引擎;搜狗公司也构建了知识图谱“知立方”来增强其搜索引擎;2018年4月,阿里巴巴领头开始了关于知识引擎研究方面的探讨,构建和研究的知识图谱包含了多个领域,如商品、客户体验、安全、旅游等。阿里巴巴的商品知识图谱包含了百亿级别的核心商品信息的三元组;腾讯云也从金融、安全、政府、企业等方向出发进行知识图谱的构建,用于数据存储和索引查找;腾讯ai lab在知识图谱方面也有所建树;2019年小米公司开发的小爱同学改良之后的版本,该产品以百度科普为中心,外接垂直类知识图谱和小米业务图谱,三元组规模达到300亿。但目前涉及初等数学领域的知识图谱构建较少,完备性较高的初等数学知识图谱也还没有。


技术实现要素:

3.针对现有技术中的上述不足,本发明提供的一种基于neo4j和大数据的初等数学知识图谱构建方法解决了将初等数学自然语言文本转换成为初等数学领域知识图谱,并把初等数学题目中的实体与实体之间关系清晰、准确地表示的问题。
4.为了达到上述发明目的,本发明采用的技术方案为:
5.本发明提供一种基于neo4j和大数据的初等数学知识图谱构建方法,包括如下步骤:
6.s1、根据neo4j图形数据库分别对实体、关系以及属性的定义,自上而下构建初始知识图谱;
7.s2、根据大数据和深度学习自下而上的构建方法完善所述初始知识图谱,得到完整的初等数学知识图谱。
8.本发明的有益效果为:本发明提供的初等数学知识图谱构建方法所构建的完整初等数学知识图谱,其实体和关系对应准确,可以准确表示初等数学各实体与实体间的语义关系,且可应用于初等数学自然语言理解和问题自动求解,涵盖了初等数学大纲内全部知识点。
9.进一步地,所述步骤s1包括如下子步骤:
10.s11、根据初等数学知识体系获取知识图谱数据;
11.s12、根据知识图谱数据构建初始数据库;
12.s13、将初始数据库中的实体和关系转换得到neo4j数据库中的各实体关系三元
组,完成初始知识图谱构建。
13.采用上述进一步方案的有益效果为:根据初等数学知识体系构建初始知识图谱,所述初始知识图谱包括各实体关系三元组,所述实体关系三元组对应首实体、尾实体和首实体与尾实体间对应关系。
14.进一步地,所述步骤s13包括如下步骤:
15.a1、在java项目中建立实体包和关系包;
16.a2、将实体包和关系包中的实体和关系划分入初始数据库中初等数学知识体系的各知识点模块中;
17.a3、利用java语言反射机制获取各知识点模块中实体类的名称和属性,以及各知识点模块中关系类的首实体、尾实体和关系的属性;
18.a4、根据java语言反射机制获取结果,利用neo4j cypher java api创建各实体间的关系,得到neo4j数据库的各实体关系三元组,完成初始知识图谱构建,其中,所述neo4j cypher java api自定义cypher并进行封装。
19.采用上述进一步方案的有益效果为:所述neo4j cypher java api可以执行所有neo4j支持的数据库操作,需要用户自定义cypher并进行封装,相较于neo4j自带的简单封装api,更加适合java与neo4j之间的交互api进行自定义设计。
20.进一步地,所述实体关系三元组定义为首实体、尾实体以及首实体与尾实体间的关系;
21.所述步骤a2中实体包括实体名称和实体包含属性,其中,所述实体包含的属性包括属性key值和value值;
22.所述步骤a2中关系包括关系名称和关系包含属性,其中,所述关系包含的属性包括属性key值和value值。
23.采用上述进一步方案的有益效果为:对初等数学知识图谱内容对应的实体关系三元组进行了定义与解释,根据实体、关系和属性可以构成初等数学中各知识模块对应内容。
24.进一步地,所述步骤s2包括如下子步骤:
25.s21、利用大数据技术获取非结构化初等数学数据;
26.s22、利用自然语言处理技术抽取非结构化初等数学数据中的实体和关系;
27.s23、将抽取得到非结构化初等数学数据中的实体和关系进行数据预处理和相似度比对,得到相似度对比结果;
28.s24、判断相似度对比结果是否满足与初始知识图谱数据存在不同实体、不同关系和不同属性之一或任意组合的情况,若是,则得到待添加非结构化初等数学数据并进入步骤s25,否则结束流程;
29.s25、将待添加非结构化初等数学数据添加至所述初始知识图谱,得到完整初等数学知识图谱。
30.采用上述进一步方案的有益效果为:利用大数据技术获取非结构化初等数学数据,并对非结构化初等数学数据进行预处理和相似度对比,得到初始知识图谱中不存在的若干不同实体、关系和属性,并将其添加进入初始知识图谱,得到完整初等数学知识图谱。
31.进一步的,所述步骤s22抽取非结构化初等数学数据中的实体和关系的方法如下:
32.b1、根据语言技术平台ltp和类型递进逻辑采用流水线方式命名非结构化初等数
学数据中实体;
33.b2、利用双向长短期记忆网络和条件随机场建立初等数学实体类型识别模型;
34.b3、利用初等数学实体类型识别模型识别非结构化初等数学数据中的实体,完成抽取非结构化初等数学数据的实体;
35.b4、根据非结构化初等数学数据中包含实体关系三元组的若干条数学文本构建初等数学关系库;
36.b5、利用bert模型对待抽取关系的数学文本与初等数学关系库中已有数学文本进行相似度计算,并将最相似的待抽取关系的数学文本的实体关系三元组抽取出,得到抽取出文本,完成非结构化初等数学数据中的实体和关系的抽取。
37.采用上述进一步方案的有益效果为:首先根据语音技术平台ltp对给结构化初等数学数据中实体命名,其次采用深度学习的方法,利用双向长期记忆网络和条件随机场建立初等数学实体类型识别模型,并利用模型抽取非结构化初等数学数据中的实体,根据实体找到实体三元组数学文本,抽取出给结构化初等数学数据中的实体与关系。
38.进一步地,所述步骤b5中最相似待抽取关系的数学文本的判别方法如下:
39.c1、将若干条待抽取关系数学文本转换成若干个句向量;
40.c2、根据各所述句向量通过余弦距离计算得到各待抽取关系的数学文本与初等数学关系库中已有数学文本的距离;
41.c3、根据所述各待抽取关系的数学文本与初等数学关系库中已有数学文本的距离,将各句向量中余弦距离最近的待抽取关系的数学文本抽取出,得到抽取出文本。
42.采用上述进一步方案的有益效果为:抽取出与初始知识图谱中最相似待抽取关系数学文本。
43.进一步地,所述步骤s23中得到的相似度对比结果包括若干实体、若干关系以及若干属性。
44.进一步地,所述步骤s23包括以下步骤:
45.d1、非中文数据预处理:通过正则表达式判断非结构化初等数学数据中的非中文字符,并使用成对的美元符号将其包括在中间,得到非中文数据预处理结果;
46.d2、新定义和命题题目数据预处理:将非中文数据预处理结果中的新定义和命题题目的实体关系三元组封装为已知和结论两部分,得到新定义和命题题目处理预结果;
47.d3、短截分割数据预处理:将新定义和命题题目处理预结果根据中文标点逗号、分号以及句号进行短句分割,得到若干短句分割处理结果;
48.d4、实体相似度比对:将各短句分割处理结果中实体名称和实体包含属性抽取出,得到若干实体;
49.d5、关系相似度比对:将各短句分割处理结果中的首实体、尾实体、关系名称以及关系包含属性抽取出,得到若干关系;
50.d6、属性相似度比对:将各短句分割处理结果中属性key值和value值抽取出,得到若干属性。
51.采用上述进一步方案的有益效果为:通过预处理与相似度比对,得到若干实体、若干关系和若干属性,用于与初始知识图谱中的各实体、各关系、各属性进行比对并完善。
52.进一步地,所述步骤s24中得到的待添加非结构化初等数学数据包括与初始知识
图谱数据若干不同实体、若干不同关系和若干不同属性。
53.采用上述进一步方案的有益效果为:所述待添加非结构化初等数学数据用于补充和完善初始知识图谱中的实体、关系和属性,解释清楚添加入初始知识图谱中数据内容。
附图说明
54.图1为本发明实施例中知识图谱构建步骤流程图。
55.图2为本发明实施例中知识图谱构建概念图。
56.图3为本发明实施例中初等数学知识图谱中单个实体表示方法。
57.图4为本发明实施例中在neo4j图形数据库中初等数学知识图谱的平面几何知识点模块图。
58.图5为本发明实施例中各实体之间的继承和实体关系图。
具体实施方式
59.下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
60.由于初等数学知识表示的准确性需要,如命题中,根据命题表示需要引入实体已知和实体结论,所述实体已知和实体结论将命题分为两部分,才能满足对实体已知和实体结论间的充要关系精确表述,本发明提出的基于neo4j和大数据的初等数学知识图谱构建方法将初等数学自然语言文本转换成初等数学领域知识图谱,从而把初等数学题目中的实体与实体间关系清晰准确地表示出,便于初等数学理解与解题。
61.如图1所示,在本发明的一个实施例中,本发明提供一种基于neo4j和大数据的初等数学知识图谱构建方法,包括如下步骤:
62.s1、根据neo4j图形数据库分别对实体、关系以及属性的定义,自上而下构建初始知识图谱;
63.s2、根据大数据和深度学习自下而上的构建方法完善所述初始知识图谱,得到完整的初等数学知识图谱。
64.本发明提供的初等数学知识图谱构建方法所构建的完整初等数学知识图谱,其实体和关系对应准确,可以准确表示初等数学各实体与实体间的语义关系,且可应用于初等数学自然语言理解和问题自动求解,涵盖了初等数学大纲内全部知识点。
65.如图2所示,所述步骤s1包括如下子步骤:
66.s11、根据初等数学知识体系获取知识图谱数据;
67.s12、根据知识图谱数据自上而下构建初始数据库;
68.s13、将初始数据库中的实体和关系转换得到neo4j数据库中的各实体关系三元组,完成初始知识图谱构建。
69.所述步骤s13包括如下步骤:
70.a1、在java项目中建立实体包和关系包;
71.a2、将实体包和关系包中的实体和关系划分入初始数据库中初等数学知识体系的
各知识点模块中;
72.a3、利用java语言反射机制获取各知识点模块中实体类的名称和属性,以及各知识点模块中关系类的首实体、尾实体和关系的属性;
73.a4、根据java语言反射机制获取结果,利用neo4j cypher java api创建各实体间的关系,得到neo4j数据库的各实体关系三元组,完成初始知识图谱构建,其中,所述neo4j cypher java api自定义cypher并进行封装。
74.所述实体关系三元组定义为首实体a、尾实体b以及首实体a与尾实体b间的关系;
75.进一步地,所述实体关系三元组定义为首实体、尾实体以及首实体与尾实体间的关系;
76.所述步骤a2中实体包括实体名称和实体包含属性,其中,所述实体包含的属性包括属性key值和value值;
77.所述步骤a2中关系包括关系名称和关系包含属性,其中,所述关系包含的属性包括属性key值和value值。
78.所述初等数学知识图谱内容对应的实体关系三元组的定义与解释,根据实体、关系和属性可以构成初等数学中各知识模块对应内容。
79.所述步骤s2包括如下子步骤:
80.s21、利用大数据技术获取非结构化初等数学数据;
81.s22、利用自然语言处理技术抽取非结构化初等数学数据中的实体和关系;
82.s23、将抽取得到非结构化初等数学数据中的实体和关系进行数据预处理和相似度比对,得到相似度对比结果;
83.s24、判断相似度对比结果是否满足与初始知识图谱数据存在不同实体、不同关系和不同属性之一或任意组合的情况,若是,则得到待添加非结构化初等数学数据并进入步骤s25,否则结束流程;
84.s25、将待添加非结构化初等数学数据添加至所述初始知识图谱,得到完整初等数学知识图谱。
85.所述步骤s22抽取非结构化初等数学数据中的实体和关系的方法如下:
86.b1、根据语言技术平台ltp和类型递进逻辑采用流水线方式命名非结构化初等数学数据中实体;
87.b2、利用双向长短期记忆网络和条件随机场建立初等数学实体类型识别模型;
88.b3、利用初等数学实体类型识别模型识别非结构化初等数学数据中的实体,完成抽取非结构化初等数学数据的实体;
89.b4、根据非结构化初等数学数据中包含实体关系三元组的若干条数学文本构建初等数学关系库;
90.b5、利用bert模型对待抽取关系的数学文本与初等数学关系库中已有数学文本进行相似度计算,并将最相似的待抽取关系的数学文本的实体关系三元组抽取出,得到抽取出文本,完成非结构化初等数学数据中的实体和关系的抽取。
91.所述步骤b5中最相似待抽取关系的数学文本的判别方法如下:
92.c1、将若干条待抽取关系数学文本转换成若干个句向量;
93.c2、根据各所述句向量通过余弦距离计算得到各待抽取关系的数学文本与初等数
学关系库中已有数学文本的距离;
94.c3、根据所述各待抽取关系的数学文本与初等数学关系库中已有数学文本的距离,将各句向量中余弦距离最近的待抽取关系的数学文本抽取出,得到抽取出文本。
95.所述步骤s23中得到的相似度对比结果包括若干实体、若干关系以及若干属性。
96.所述步骤s23包括以下步骤:
97.d1、非中文数据预处理:通过正则表达式判断非结构化初等数学数据中的非中文字符,并使用成对的美元符号将其包括在中间,得到非中文数据预处理结果;
98.d2、新定义和命题题目数据预处理:将非中文数据预处理结果中的新定义和命题题目的实体关系三元组封装为已知和结论两部分,得到新定义和命题题目处理预结果;
99.d3、短截分割数据预处理:将新定义和命题题目处理预结果根据中文标点逗号、分号以及句号进行短句分割,得到若干短句分割处理结果;
100.d4、实体相似度比对:将各短句分割处理结果中实体名称和实体包含属性抽取出,得到若干实体;
101.d5、关系相似度比对:将各短句分割处理结果中的首实体、尾实体、关系名称以及关系包含属性抽取出,得到若干关系;
102.d6、属性相似度比对:将各短句分割处理结果中属性key值和value值抽取出,得到若干属性。
103.所述步骤s24中得到的待添加非结构化初等数学数据包括与初始知识图谱数据若干不同实体、若干不同关系和若干不同属性。
104.在本发明的另一个实施例中,根据初等数学知识体系的教辅中得到点、直线和三角形等实体,并定义各实体之间的两两关系,如文本:点在直线上,表示实体点和实体直线之间有在上关系,完成自上向下构建初始知识图谱的步骤;从非结构化初等数学数据的高考题中抽取,如题:设m∈r,过定点a的动直线x+my=0和过定点b的直线mx

y

m+3=0,求直线ab的一般方程,,通过相似度比对得到在此题中含有动直线,判断得到初始知识图谱中没有该实体,则将其添加入初始知识图谱中,对初始知识图谱进行完善。
105.如图3所示在本发明的另一个实施例中,对初始知识图谱中的单个实体进行表示,该实体为圆实体,包括其概念为平面几何体,编号为165,圆心用o表示,中文名称为圆,直径用d表示,半径用r表示以及英文名称为circle;
106.在知识图谱的基本概念定义中,分为实体、关系和属性,分别如下所述:
107.实体:大多指的是名词,即是现实世界中存在或者虚拟的事务,在知识图谱中可视化表示为一个节点的形式,在初等数学中的实体有范围小,数据精确的特点;
108.关系:关系是用来表示不同实体或者相同实体之间的某种联系,关系可以拥有方向;
109.属性:实体和关系都可以拥有属性,在图形数据库中可以设置自己的属性,属性是由key

value的形式存在的键值对,属性并不细分实体属性和关系属性的key值一般可以作为一个实体存在于知识图谱中。
110.例如短句:函数f(x)与x轴相交,包括实体函数f(x)和实体x轴,且实体函数f(x)和实体x轴间存在相交关系;
111.所述相交关系的属性如表1所示:
112.表1
113.keyvalue交点个数(numbers)m
114.本方案完整初等数学知识图谱中共构建完成实体378个,关系561条,部分实体与关系内容如表2和表3所示:
115.表2
116.实体中文名实体英文名函数function向量vector集合set三角形triangle球ball数列sequence
117.表3
118.关系中文名关系英文名相切关系tangencyrelation拥有关系haverelation相交关系crossrelation面积关系arearelation距离关系distancerelation
119.如图4和图5所示,在本发明的一个实施实例中,本方案对实体和关系的定义采用了继承的方式,如:实体顶点继承于实体点,关系继承表示关系父类有的关系其关系子类也会有;如:实体点、实体直线和实体点与实体直线间关系为在上关系;实体顶点作为实体点的子类,实体动直线作为实体直线的子类,就会生成:实体顶点、实体动直线和实体顶点与实体动直线间关系为在上关系的实体关系三元组;对于实体三角形,其包括子类有等边三角形、直角三角形、锐角三角形和钝角三角形,拥有边、角和顶点,属于几何图形,则其子类等边三角形、直角三角形、锐角三角形和钝角三角形继承拥有边、角和顶点,且其子类均属于几何图形。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1