北京大学自主研发的知识图谱自动化构建平台gBuilder日前完成了与openGauss的适配,实现了从“数据”到“知识”的无损转换。
北京大学王选计算机研究所数据管理研究室(PKUMOD)围绕着知识图谱数据、图数据流等开展了大量的基础研究工作,已经发表包括SIGMOD,VLDB等在内数据库领域国际顶级会议和期刊论文近百篇,获得过教育部自然科学二等奖等学术奖项。同时该团队构建了面向海量知识图谱数据的自动化构建平台gBuilder、开源图数据库系统gStore和自然语言问答系统gAnswer,初步打造了面向知识图谱全生命周期的一体化解决方案,在开源社区获得了广泛的关注。
gBuilder平台是结合NLP技术、机器学习、人工智能、知识图谱、图数据库等众多技术,打造的一个针对结构化数据和非结构化数据的知识图谱自动化构建平台,实现数据向知识的转化。gBuilder可从多个关系型数据库中抽取数据形成知识图谱数据导入到图数据库gStore中,向用户提供知识图谱存储和管理服务。当前重点适配了openGauss数据库,将之前存储在openGauss数据库中的数据通过映射的方式无损抽取成RDF三元组数据。
此次,gBuilder与openGauss适配成功,标志着以openGauss为代表的关系型数据库和以gStore为代表的图数据库在数据链路上正式打通,从而构建了以业务处理为核心的业务信息系统到以数据分析为核心的数据分析系统一体化解决方案,在开源社区获得了广泛的关注。未来,gBuilder和gStore将与社区合力打造国内图数据库和知识图谱产品生态,加速推进图数据库产品技术的自主研发与创新,以满足金融、电信、能源、公安、教育、工业互联网等行业对图数据库和知识图谱需求。双方各优势相互赋能,共同发展,为国内基础软件发展树立行业典范。
详情请见官网
gStore:www.gstore.cn
gBuilder:gbuilder.gstore.cn
欲了解更多图谱研究和技术进展,欢迎关注“图谱学苑”公众号。
1. 项目管理功能
gBuilder平台以项目形式来管理每个知识图谱构建任务,在项目管理模块中,用户可以创建项目,项目分为结构化项目和非结构化项目,并可以实时了解各项目流程情况,并可以在项目管理面板上对项目进行各项操作,如导入、导出、删除、编辑等。2. 知识图谱Schema设计功能无论是结构化项目还是非结构化项目,均需首先设计知识图谱Schema。知识图谱Schema一方面可以描述知识图谱中的实体类型、实体属性和关系等信息,另一方面也是知识图谱查询和分析的重要参考,相当于关系型数据库的表结构。知识图谱Schema可视化设计是gbuilder的特色功能之一,与protege不同的,是gBuilder的Schema设计采用的是以图的方式来表述知识图谱schema,用户可以通过拖拽的方式可以在画布上设计类、类属性和关系。3.结构化项目映射
设计完知识图谱Schema之后,需要根据项目类型分情况设计知识抽取流程,对于结构化项目而言,其知识抽取流程设计就是将结构化表及字段,与Schema中的实体类型、属性、关系等进行映射,并形成映射文件。映射总共分为四个步骤:
第一步是连接数据源,获取数据源表结构信息,目前gBuilder支持openGauss、MySQL、Oracle、SQL Server,PostgreSQL和达梦等常见的关系型数据库,并可以获取指定数据库中表和视图的结构信息。
第二步是表与实体对象的映射,该步骤主要是将表与对应的实体对象进行绑定,并设置实体对象的URI列的取值字段,如人物类实体与人物表绑定,同时取人物表的ID字段作为人物类实体的URI。
第三步是将表字段与实体属性和关系进行映射,该步骤可以通过拖拽的方式将表的字段与实体属性和关系进行映射,对于实体关系,还需要指定该关系对象所对应的表字段,从而当执行抽取流程时将该值自动转化为对应的实体对象
第四步是处理跨表数据。该步骤主要用于处理代码类型的数据,如人物性别字段取值来源于代码表,如果不进行跨表处理,则抽取的RDF数据中性别将显示为代码,通过跨表关联,可以将性别转变为代码表中的标题字段,从而得到可理解的正确值。4.非结构化项目抽取流程设计
构建步骤如下:
加载数据集,将需要用于构建图谱的非结构化数据按照每行一个样本的形式存储,在数据管理模块将这个数据集导入系统中设计构建流程。根据需要构建的图谱特点与数据的类型,从左边的模型与算子列表中拖拽合适的节点至构建画布中。在流程构建过程中,可以随时使用系统自带的流程检查功能和测试功能来测试流程的正确性与构造效果。
完成构建后,可以查看构建的结果,可以看到前面设计的构造流程顺利从数据集中抽取出了构建知识图谱所需要的人物关系三元组。这些输出可以直接导出为 nt 文件,或存入图数据库中。
此外,我们提供了大量的可选模型,它们有着不同的特性,以及在不同的数据上预训练,用户可以根据需求,挑选出最合适的模型作为构建模型,也可以使用自己的数据训练模型进行图谱构建。
5.自定义模型训练(新功能)
gBuilder开发了自定义模型训练功能来构造属于自己的信息抽取模型,并将自定义模型保存在模型库中。用户可以直接在构建面板拖入自定义的训练模型完成非结构化知识抽取。具体地,gBuilder在模型中心中通过Fork系统中的内置模型作为基础,上传自己的训练数据、设定自定义模型的标签类型(如实体类型、关系类型等),gBuilder将根据用户上传的训练数据进行自动训练。训练完成后,自定义模型保存在用户个人的模型库中,就能在非结构抽取的流程中使用自定义模型了。
6.任务管理和导出下载
结构化项目和非结构化项目流程设计完成之后,则需要进入任务执行过程,由于知识抽取是一个耗时操作,因此需要在后台执行,任务管理功能可以实时查看任务执行状态,并手动或定时执行任务。
任务执行完毕后,将自动生成RDF三元组数据文件,用户可以通过下载功能下载RDF数据文件。