精华内容
下载资源
问答
  • 知识图谱构建流程

    2018-05-14 21:54:25
    一个完整的知识图谱构建方法及流程,其中详细说明了信息抽取的研究历史和所用算法,如:基于规则和统计学方法等。
  • 小型金融知识图谱构建流程 小型金融知识图谱构流程示范 小型金融知识图谱构流程示范 1 知识图谱存储方式 2 图数据库neo4j 2.1 下载 2.2 启动 2.2.1 打开 http://localhost:7474 2.2.2 初始账户和密码均为neo4j...
  • 知识图谱构建流程详解

    千次阅读 2019-06-13 13:40:00
    知识图谱构建 1. 主要流程 2. 层次划分 知识图谱建设是一项系统工程,从模块划分角度,可划分为如下层次: 数据获取:通过爬虫,内部CP等数据源获取数据,涉及到主要技术有网页抓取技术,包括结构化数据和非结构...

    知识图谱构建

    1. 主要流程

    在这里插入图片描述

    2. 层次划分

    知识图谱建设是一项系统工程,从模块划分角度,可划分为如下层次:

    在这里插入图片描述

    • 数据获取:通过爬虫,内部CP等数据源获取数据,涉及到主要技术有网页抓取技术,包括结构化数据和非结构化数据抽取以及一些列爬虫相关工具链,产出的结果为原始数据
    • 知识获取:旨在把原始数据变为领域知识的过程,本层涉及到的技术有schema建设,信息抽取技术如yago的三元组抽取技术。本层产出的结果为结构化的知识(实体以及其属性值,实体可能的关联等),本层工具链建设包含:schema管理工具(schema完备性一致性检查工具),知识抽取算法,知识对齐等
    • 知识融合:第二层更多从领域的角度获取知识,本层更多从全局的角度出发,把相关的领域知识融合在一起,做到实体消歧,实体对齐,本层会在知识层面上输出一个图谱,工具链建设有实体消歧融合算法,schema融合算法等
    • 知识服务:提供知识图谱可视化服务,存储查询,包括如何把知识图谱对外提供服务以及一些线上交互工具
    • 应用技术:基于知识图谱的应用,包括知识推理、知识问答、实体链接等。每一块都是NLP领域的难点

    五大模块从逻辑上比较独立,每层的评价标准不同工作量不同

    可以加微信讨论:crazy042438

    展开全文
  • 知识图谱构建流程与实现技术浅谈

    千次阅读 2021-11-14 20:54:55
    知识图谱的原始数据类型一般来说有三类(也是互联网上的三类原始数据): 结构化数据(Structed Data):如关系数据库 半结构化数据(Semi-Structed Data):如XML、JSON、百科 非结构化数据(UnStructed Data):...

    一些预备知识

    结构化、半结构化与非结构化数据

    知识图谱的原始数据类型一般来说有三类(也是互联网上的三类原始数据):

    • 结构化数据(Structed Data):如关系数据库
    • 半结构化数据(Semi-Structed Data):如XML、JSON、百科
    • 非结构化数据(UnStructed Data):如图片、音频、视频、文本

    实体

    实体可以简单理解为一个对象,它是知识图谱最基本的单位

    多关系图

    那什么叫多关系图呢? 学过数据结构的都应该知道什么是图(Graph)。图是由节点(Vertex)和边(Edge)来构成,但这些图通常只包含一种类型的节点和边。但相反,多关系图一般包含多种类型的节点和多种类型的边。比如左下图表示一个经典的图结构,右边的图则表示多关系图,因为图里包含了多种类型的节点和边。这些类型由不同的颜色来标记。

    在这里插入图片描述

    图数据库

    在这里插入图片描述

    三元组

    三元组是指形如((x,y),z)的集合,三元组是计算机专业的一门公共基础课程——数据结构里的概念。主要是用来存储稀疏矩阵的一种压缩方式,也叫三元组表。假设以顺序存储结构来表示三元组表(triple table),则得到稀疏矩阵的一种压缩存储方式,即三元组顺序表,简称三元组表。

    在这里插入图片描述

    掀开知识图谱的神秘面纱

    我会先讲什么是知识图谱,再介绍其诞生背景,虽然看上去逻辑不对,但是我觉得只有大概了解了什么是知识图谱后才能更好地品味其诞生的背景

    什么是知识图谱

    知识图谱,英文是Knowledge Graph,简称KG

    知识图谱由谷歌在2012年最早提出,目的是提升其搜索质量。知识图谱常用的表示方法包括(实体1,关系,实体2)三元组,(概念,属性,属性值)三元组。以三元组表示,则可以选择图数据库作为存储介质,如开源的Neo4j,Twitter的FlockDB,sones的GraphDB等。

    在当前的人工智能大数据时代,知识图谱作为重要的知识表示方式之一,为机器语言认知提供了丰富的背景知识,使得机器对人类自然语言的理解更加精确。知识图谱本质上是语义网络(semantic network)的知识库,从应用的角度可以说知识图谱是一种多关系图谱(multi-relational graph)。

    百度百科对知识图谱的定义更加侧重于知识图谱的可视化,但其实知识图谱背后的逻辑不是可视化,并且可视化只是知识图谱构建过程中最简单的一环。目前对知识图谱并没有一个很标准的定义,当然了,定义只是定义,这并不妨碍我们从多角度去看待知识图谱:

    • 在Web视角下,知识图谱如同简单文本之间的超链接一样,通过建立数据之间的语义链接,支持语义搜索
    • 在自然语言处理视角下,知识图谱就是从文本中抽取语义和结构化的数据。
    • 在知识表示视角下,知识图谱是采用计算机符号表示和处理知识的方法。
    • 在人工智能视角下,知识图谱是利用知识库来辅助理解人类语言的工具。
    • 在数据库视角下,知识图谱是利用图的方式去存储知识的方法。

    知识图谱呢,它不是一个单独的技术,可以理解为一个大杂烩,你如果需要构建一个知识图谱呢,它可能牵扯很多技术,最最关键的就是自然语言处理,即NLP,这是最最关键的。其次呢还会涉及爬虫、数据库、计算机视觉、语言学、可视化等。

    在这里我还是需要强调一下,我特意可视化放在了最后,还是想给大家提个醒,可视化确实是构建图谱最简单的一环,他只是将数据以一种喜闻乐见的形式表现了出来,但可视化背后的逻辑才是最最以关键的,也是最最困难的。其实知识图谱这个概念更加偏重后端,而不是前端。

    知识图谱的诞生背景

    随着移动互联网的发展,万物互联成为了可能,这种互联所产生的数据也在爆发式地增长,而且这些数据恰好可以作为分析关系的有效原料。如果说以往的智能分析专注在每一个个体上,在移动互联网时代则除了个体,这种个体之间的关系也必然成为我们需要深入分析的很重要一部分。 在一项任务中,只要有关系分析的需求,知识图谱就“有可能”派的上用场。

    知识图谱的类别

    知识图谱的表示

    在知识图谱里,我们通常用“实体(Entity)”来表达图里的节点、用“关系(Relation)”来表达图里的“边”。实体指的是现实世界中的事物比如人、地名、概念、药物、公司等,关系则用来三元组表达不同实体之间的某种联系,比如人-“居住在”-北京、张三和李四是“朋友”、逻辑回归是深度学习的“先导知识”等等。

    现实世界中的很多场景非常适合用知识图谱来表达。 比如一个社交网络图谱里,我们既可以有“人”的实体,也可以包含“公司”实体。人和人之间的关系可以是“朋友”,也可以是“同事”关系。人和公司之间的关系可以是“现任职”或者“曾任职”的关系。 类似的,一个风控知识图谱可以包含“电话”、“公司”的实体,电话和电话之间的关系可以是“通话”关系,而且每个公司它也会有固定的电话。

    在这里插入图片描述

    在现实世界中,实体和关系也会拥有各自的属性,比如人可以有“姓名”和“年龄”。当一个知识图谱拥有属性时,我们可以用属性图(Property Graph)来表示。下面的图表示一个简单的属性图。李明和李飞是父子关系,并且李明拥有一个138开头的电话号,这个电话号开通时间是2018年,其中2018年就可以作为关系的属性。类似的,李明本人也带有一些属性值比如年龄为25岁、职位是总经理等。

    在这里插入图片描述

    知识图谱的存储

    可以用RDF来表示,也可以用以Neo4j为首的原生图数据库表示。它们之间的区别如下图所示。RDF一个重要的设计原则是数据的易发布以及共享,图数据库则把重点放在了高效的图查询和搜索上。其次,RDF以三元组的方式来存储数据而且不包含属性信息,但图数据库一般以属性图为基本的表示形式,所以实体和关系可以包含属性,这就意味着更容易表达现实的业务场景。

    RDF表示法:

    在这里插入图片描述

    Neo4j原生图数据库表示法:

    在这里插入图片描述

    其中RDF主要还是用于学术的场景,在工业界我们更多的还是采用图数据库(比如用来存储属性图)的方式。

    在这里插入图片描述

    部分图数据库排行榜:

    在这里插入图片描述

    知识图谱vs思维导图

    很多人会把知识图谱和思维导图混淆,我记不得是谁了,说把只是总结一下,做个知识图谱,我当时震惊了,我想,哇,还把知识抽取出来做成图谱,真的有心了。没想到一看是一个思维导图。

    更加偏重于百度百科的定义,希望大家严谨一些。。。。

    知识图谱vs深度学习

    我们将深度学习归纳为隐性的模型,它通常是面向某一个具体任务,比如说下围棋、识别猫、人脸识别、语音识别等等。通常而言,在很多任务上它能够取得非常优秀的结果,同时它也有非常多的局限性,比如说它需要海量的训练数据,以及非常强大的计算能力,难以进行任务上的迁移,而且可解释性比较差。

    另一方面,知识图谱是人工智能的另外一大技术驱动力,它能够广泛地适用于不同的任务。相比深度学习,知识图谱中的知识可以沉淀,可解释性非常强,类似于人类的思考。

    在这里插入图片描述

    海量数据和大规模分布式计算力,催生了以深度学习为代表的第三次(1993-目前)人工智能高潮。Web 2.0产生的海量数据给机器学习和深度学习技术提供了大量标注数据,而GPU和云计算的发展为深度学习的复杂数值计算提供了必要算力条件。深度学习技术在语音、图像领域均取得了突破性的进展,这表示学习技术成果使得机器首次在感知能力上达到甚至超越了人类的水平,人工智能已经进入感知智能阶段。

    然而,随着深度学习被广泛应用,其局限性也愈发明显:

    • 缺乏可解释性:神经网络端到端学习的“黑箱”特性使得很多模型不具有可解释性,导致很多需要人去参与决策,在这些应用场景中机器结果无法完全置信而需要谨慎的使用,比如医学的疾病诊断、金融的智能投顾等等。这些场景属于低容错高风险场景,必须需要显示的证据去支持模型结果,从而辅助人去做决策。
    • 常识(Common Sense)缺失:人的日常活动需要大量的常识背景知识支持,数据驱动的机器学习和深度学习,它们学习到的是样本空间的特征、表征,而大量的背景常识是隐式且模糊的,很难在样本数据中进行体现。比如下雨要打伞,但打伞不一定都是下雨天。这些特征数据背后的关联逻辑隐藏在我们的文化背景中。
    • 缺乏语义理解。模型并不理解数据中的语义知识,缺乏推理和抽象能力,对于未见数据模型泛化能力差。
    • 依赖大量样本数据:机器学习和深度学习需要大量标注样本数据去训练模型,而数据标注的成本很高,很多场景缺乏标注数据来进行冷启动。

    在这里插入图片描述

    先看几个案例

    思知

    https://www.ownthink.com/knowledge.html

    在这里插入图片描述

    辞海

    https://www.cihai.com.cn/pages/zhishidaotu

    在这里插入图片描述

    全历史

    https://www.allhistory.com/

    在这里插入图片描述

    还有一些比较常见的,例如说企查查等

    知识图谱的整体架构

    一个简单的架构图,如下图所示

    在这里插入图片描述

    知识图谱的构建

    数据信息

    知识获取是指从不同来源、不同结构数据中,抽取相关实体、属性、关系、事件等知识。从数据结构划分可以分为结构化数据、半结构化数据和纯文本数据。

    结构化数据指的关系型数据库表示和存储的的二维形式数据,这类数据可以直接通过Schema融合、实体对齐等技术将数据提取到知识图谱中。

    半结构化数据主要指有相关标记用来分隔语义元素,但又不存在数据库形式的强定义数据,如网页中的表格数据、维基百科中的Infobox等等。这类数据通过爬虫、网页解析等技术可以将其转换为结构化数据。

    现实中结构化、半结构化数据都比较有限,大量的知识往往存在于文本中,这也和人获取知识的方式一致。对应纯文本数据获取知识,主要包括实体识别、实体分类、关系抽取、实体链接等技术。

    知识抽取

    从各种类型的数据源中提取出实体、属性以及实体间的相互关系,在此基础上形成本体化的知识表达;

    实体抽取

    实体抽取又称命名实体识别,是知识图谱的核心单位,从文本中抽取实体是知识获取的一个关键技术,实体抽取的质量(准确率和召回率)对后续的知识获取效率和质量影响极大,因此是信息抽取中最为基础和关键的部分。

    文本中识别实体,一般可以作为一个序列标注问题来进行解决。传统的实体识别方法以统计模型如HMM、CRF等为主导,随着深度学习的兴起,BiLSTM+CRF模型备受青睐,该模型避免了传统CRF的特征模版构建工作,同时双向LSTM能更好地利用前后的语义信息,能够明显提高识别效果。

    案例:黄晓明,1977年11月13日生于山东省青岛市市南区,中国内地男演员、歌手、商人。2006年他出演武侠剧《神雕侠侣》,2007年凭借民国剧《新上海滩》获得第13届上海电视节白玉兰奖最佳男演员提名,粉丝喜欢称他为教主。

    关系抽取

    关系抽取是从文本中自动抽取实体与实体之间的特定的语义关系,以补充图谱中缺失的关系。方法包括人工构造予以规则以及模版的方法识别实体关系。

    文本语料经过实体抽取,得到的是一系列离散的命名实体,为了得到语义信息,还需要从相关的语料中提取出实体之间的关联关系,通过关联关系将实体(概念)联系起来,才能够形成网状的知识结构。

    案例:从“干酪鱼原来是奶酪做的”中抽取出<干酪鱼,食材,奶酪>。

    其实可以粗暴地归为分类问题,为什么这么呢?因为最后我们需要得到的是食材这个关系,我们训练一个模型进行多分类就OK了。

    属性抽取

    属性抽取是从不同信息源中采集特定实体的属性信息。例如针对某个公众人物,可以从网络公开信息中得到其昵称、生日、国籍、教育背景等信息。属性抽取技术能够从多种数据来源中汇集这些信息,实现对实体属性的完整勾画。

    案例:黄晓明,1977年11月13日生于山东省青岛市市南区,中国内地男演员、歌手、商人。2006年他在武侠剧《神雕侠侣》中饰演杨过,2007年凭借民国剧《新上海滩》获得第13届上海电视节白玉兰奖最佳男演员提名,粉丝喜欢称他为教主。

    属性抽取可以转换为实体抽取+分类问题,因为实体的属性可以看成是实体与属性值之间的一种名称关系。

    知识融合

    知识融合就是将多个知识库中的知识进行整合,形成一个知识库的过程,知识融合需要解决的问题是实体对齐。

    不同数据源的实体收集知识的侧重点不同,可能会指向现实世界的同一个客体,比如有的知识库可能侧重于其本身某个方面的描述,有的知识库可能侧重于描述实体与其它实体的关系,通过实体对齐进行知识融合可以将不同知识库中的知识进行互补融合,形成全面、准确、完整的实体描述。

    案例:对于历史人物曹操的描述,在百度百科、互动百科、维基百科等不同的知识库中,描述有一些差别。

    数据来源特征描述百度百科互动百科维基百科
    曹操所处时代东汉东汉末年东汉末期
    曹操主要成就实行屯田制,安抚流民消灭群雄,统一北方,奠定曹魏政权的基础,开创建安文学,提倡薄葬统一北方统一了东汉帝国核心地区

    实体对齐主要有两个关键:

    • 实体消岐
    • 指代消岐

    实体消岐

    在文本中可能同一个实体会有不同的写法,比如说“Angelbaby”就是杨颖的别称,因此“杨颖”和“Angelbaby”指的就是同一个实体。

    作用就是对具有相同名称的实体进行区分。例如两个人同名,那就通过性别、工作、兴趣爱好等其他属性进行区分。

    指代消岐

    指代消岐跟实体消岐类似,都是处理同一个实体的问题。比如上述黄晓明案例中的“他”其实指的就是“黄晓明”。所以指代消解要做的事情就是,找出这些代词,都指的是哪个实体。

    知识加工

    对于经过融合的新知识,需要经过质量评估之后(部分需要人工参与甄别),才能将合格的部分加入到知识库中,以确保知识库的质量。

    本体抽取

    本体比较抽象,简单理解即为一系列概念,这一系列概念集合能够描述某个具体领域里的一切事物的共有特征,之后概念间又有一定的关系,构成一个具有层级特征的结构。比如足球领域即为一个本体。

    本体抽取过程包含三个阶段:

    • 实体并列关系相似度计算
    • 实体上下位关系抽取
    • 本体的生成

    举例:当知识图谱得到“阿里巴巴”、“腾讯”、“手机”这三个实体的时候,可能会认为它们三个之间并没有什么差别,但当它通过第一步计算三个实体之间的相似度后,就会发现,阿里巴巴和腾讯之间可能更相似,和手机差别更大一些,但仅此知识图谱实际上还是没有一个上下层的概念,它仍然为判断出阿里巴巴和手机就不隶属于一个类型,无法比较。因此通过第二步实体上下位关系抽取去完成这样的工作,从而生成第三步的本体。

    在这里插入图片描述

    当三步结束后,这个知识图谱即明白,“阿里巴巴和腾讯都是公司这样一个本体下的细分实体,它们和手机不属于一类。”

    知识推理

    知识推理是指从知识库中已有的实体关系数据出发,经过计算机推理,建立实体间的新关联,从而拓展和丰富知识网络,知识推理是知识图谱构建的重要手段和关键环节,通过知识推理,能够从现有知识中发现新的知识。

    举例:

    在这里插入图片描述

    质量评估

    对知识的可信度进行量化,保留置信度较高的,舍弃置信度较低的,有效保证知识的质量。

    目前亟待解决的问题

    知识的自动获取

    结构化、非结构化、半结构化的处理

    长句的关系抽取

    句子很长的时候无法准确抽取关系

    多源知识的自动融合

    基于机器学习和深度学习

    知识的存储与检索

    图数据库、分布式存储、高效检索

    面向知识的表示学习

    将原始数据转换成为能够被机器学习来有效开发的一种形式。它避免了手动提取特征的麻烦,允许计算机学习使用特征的同时,也学习如何提取特征:学习如何学习。

    知识推理与应用

    基于深度学习的知识推理

    应用层的整体架构

    到上面介绍为止,我们已经了解了如何构建一个知识以及相关问题,但是这只能说我们有了知识储备,那我们怎么提取或者去利用构建好的知识呢?比如说,我们要做一个智能客服、智能搜索、图谱可视化那我们怎么去做呢?其实不同的业务场景的构建逻辑不一定,具体情况具体分析,下面我就介绍一下我们参加计算机设计大赛的项目

    在这里插入图片描述

    项目的架构图如下:

    在这里插入图片描述

    应用层的构建

    数据清洗

    首先使用jieba分词工具对用户输入的话进行分词,然后将分词后的结果进行过滤,最后进行词性标注。

    问题分类

    我们开始尝试过基于深度学习的方式的分类,但是由于问题句子短,同时鉴别度较低,后来我们就换成了基于规则的问题匹配,同时使用一些方法为系统提高了容错率。

    地名景区识别

    使用BERT预训练模型对地名和景点名分类,这两个都会被归类到地名,因此需要再对它进行一次单独的分类。

    查找相关知识

    和黄鹤楼相关的游记为例:识别出关系游记、识别出后置实体黄鹤楼,我们只需要根据[x] --> [黄鹤楼]逻辑来编写CQL得到X即可,具体数据库内部是怎么查询的不是我们关注的点,大家可以后续深入了解一下Neo4j图数据库,它在数据结构上以及检索方式上都做了很大的优化。

    知识图谱的应用

    除了金融领域,知识图谱的应用可以涉及到很多其他的行业,包括医疗、教育、证券投资、推荐等等。其实,只要有关系存在,则有知识图谱可发挥价值的地方。 在这里简单举几个垂直行业中的应用。

    • 信息检索/搜索:搜索引擎中对实体信息的精准聚合和匹配、对关键词的理解以及对搜索意图的语义分析等;
    • 自然语言理解:知识图谱中的知识作为理解自然语言中实体和关系的背景信息;
    • 问答系统:匹配问答模式和知识图谱中知识子图之间的映射;
    • 推荐系统:将知识图谱作为一种辅助信息集成到推荐系统中以提供更加精准的推荐选项,知识图谱+推荐系统;
    • 电子商务:构建商品的知识图谱用于精准匹配用户的购买意愿和商品候选集,知识图谱+推荐系统;
    • 金融风控:利用实体之间的关系分析金融活动的风险以提供在风险触发后的补救措施(如反欺诈等);
    • 公安刑侦:分析实体和实体之间的关系获取案件线索等;
    • 司法辅助:法律条文的结构化表示和查询用于辅助案件的判决等;
    • 教育医疗:提供可视化的知识表示,用于药物分析、疾病诊断等;
    • 社交类业务:社交类业务具备高度连接的特点,比如 好友关系 等,<用户1,关注,用户2>。
    • 辅助决策:构建决策主题研究相关知识库、政策分析模型库和情报研究方法库,建设并不断完善辅助决策系统,为决策主题提供全方位、多层次的决策支持和知识服务。

    语义搜索

    语义搜索:通过识别用户语义获得搜索结果

    在这里插入图片描述

    智能推荐

    推荐系统首先要采集用户的需求,分析用户的以往数据,提取共同特征,然后根据一定的规则,对用户提供推荐的产品。淘宝即是典型的例子。

    传统推荐系统的主要类型包括热门推荐、人工推荐、相关推荐、个性化推荐四大类。

    • 热门推荐:当下热点事件,具有广泛的社会关注,以达到“广而告之”的效果。例如知乎、新浪微博的“热榜”等
    • 人工推荐:编辑或内容运营人员人工推荐的优秀内容/物品
    • 相关推荐:根据当下浏览的内容按照一定的信息或关联规则进行的内容推荐,主要起“丰富扩展”的作用,例如看了“快乐大本营”第四期,就会推荐第一期、第三期等
    • 个性化推荐:根据用户的历史记录、实时行为以及个人偏好,通过算法和模型为用户自身定制化的推荐,已达到“想你所想”的效果

    知识图谱将来还可以实现:用户想看[七月与安生],系统根据[七月与安生]→[曾国祥]→[少年的你]、[七月与安生]→[周冬雨]→[少年的你]两条路径,为用户继续推荐了新上映的[少年的你],可以直接根据两条连接的路径为用户生成推荐理由:都由曾国祥导演,周冬雨主演。

    在这里插入图片描述

    金融风控

    当一个事件出现了反面影响时,可迅速根据知识图谱相关信息控制与之相影响的人物或者事件,将损失降到最小。

    在这里插入图片描述

    智能问答

    智能问答,和语义搜索类似,对于提问的内容,计算机首先分析问题的语义,然后将语义转换为查询语句,到知识图谱中查找,将最贴近的答案提供给提问者。

    简单案例:

    在这里插入图片描述

    复杂案例:

    在这里插入图片描述

    相关资料推荐

    书籍

    《知识图谱:方法、实践与应用》

    在这里插入图片描述

    公众号

    开放知识图谱,强烈推荐

    知识图谱(Knowledge Graphs)综述

    很新很全的知识图谱综述论文,长达135页

    https://arxiv.org/pdf/2003.02320.pdf

    组织社区

    http://www.openkg.cn/

    展开全文
  • 下文主要讲述“知识图谱构建流程及方法”,让我们先睹为快。 什么是知识图谱? 知识图谱是由实体、关系和属性组成的一种数据结构。以下图为例,“刘德华”是一个人物类型的实体,“刘德华”有自己的身高、国籍等信息...

    作者 | 郑毅

    封图| CSDN│下载于视觉中国

    出品 | CSDN云计算(ID:CSDNcloud)

    随着AI技术的发展和普及,当今社会已经进入了智能化时代。与以往不同的是,在这一波浪潮中,企业不仅是向数字化转型,更是向知识化转型。那么,如何助力企业破解智能化知识挖掘和管理难题,实现知识化转型?

    3月13日下午14:00起举行的华为开发者大会2020(Cloud)第三期华为DevRun Live开发者沙龙中,华为云自然语言处理技术专家郑毅将分享《企业级知识计算平台的技术解读和案例实践》,带你了解华为云知识计算平台及相关技术、知识图谱构建流程及方法,以及知识计算行业案例。下文主要讲述“知识图谱构建流程及方法”,让我们先睹为快。

     

    什么是知识图谱?

    知识图谱是由实体、关系和属性组成的一种数据结构。以下图为例,“刘德华”是一个人物类型的实体,“刘德华”有自己的身高、国籍等信息,这些信息便称之为实体的属性。同样,“无间道”是一个电影类型的实体。我们知道“刘德华”是“无间道”这部电影的主演,所以“刘德华”与“无间道”之间有“主演”关系。通过实体、关系、属性,就能够把我们人可以理解的知识有效地组织起来。知识图谱的构建与应用涉及数据库、自然语言处理(NLP)和语义网络等技术。

    图1 知识图谱示例

    通用知识图谱or行业知识图谱?

    按照知识图谱的用途,知识图谱可分为通用知识图谱和行业知识图谱。通用知识图谱侧重构建常识性的知识,并用于搜索引擎和推荐系统等。行业知识图谱(也可称企业知识图谱)主要面向企业业务,通过构建不同行业、企业的知识图谱,对企业内部提供知识化服务。华为云知识图谱服务可用于以上两类知识图谱的构建、管理和服务,更侧重面向企业知识图谱。

    如何构建知识图谱?

    知识图谱构建主要分为自顶向下(top-down)与自底向上(bottom-up)两种构建方式。自顶向下构建方式需要先定义好本体(Ontology或称为Schema),再基于输入数据完成信息抽取到图谱构建的过程。该方法更适用于专业知识方面图谱的构建,比如企业知识图谱,面向领域专业用户使用。自底向上构建方式则是从开放的Open Linked Data中抽取置信度高的知识,或从非结构化文本中抽取知识,完成知识图谱的构建。该方式更适用于常识性的知识,比如人名、机构名等通用知识图谱的构建。本文侧重介绍自顶向下构建方式的相关流程和技术,并用于构建企业知识图谱。

    目前业界暂无知识图谱云服务,也没有统一标准的自顶向下构建流程。当前业界主流的知识图谱构建方式是基于企业内部数据、公开数据,图谱服务商以解决方案形式帮助客户定制构建知识图谱。这样的方式无疑成本非常高并且效率很低,通常需要很长的周期才能完成。同时,企业没有参与感,图谱构建也可能存在很大偏差,难以用于实际业务中。

    站在用户角度,我们通过抽象知识图谱构建流程及相关技术,推出华为云知识图谱云服务(图2),为不同行业、不同企业提供快速构建知识图谱能力的平台,赋能大中小型企业构建属于自己的知识图谱。

    图2 华为云知识图谱云服务

    华为云知识图谱云服务提供流水线式图谱构建能力,将图谱构建抽象为如下基本流程:本体构建、数据源配置、信息抽取、知识映射以及知识融合。

    图3 知识图谱构建基本流程

    进一步通过将每一个流程模块抽象成插件形式,并通过组合配置生成图谱构建任务。面向不同的行业和领域,只需要修改插件配置即可完成企业知识图谱的构建。同时,基于流水线设计,知识图谱云服务可以在只修改数据源的前提下完成知识图谱的更新操作,非常适用于需要频繁更新的知识图谱。

    2.1 如何构建知识图谱的本体?

    知识图谱构建的第一步需要完成图谱本体(Ontology)的设计和构建。本体是图谱的模型,是对构成图谱的数据的一种模式约束。对于企业知识图谱的构建,一般是由垂直领域的行业专家和知识图谱专家合作完成。

    本体的构建和设计对于知识图谱的构建至关重要。可以通过梳理领域知识、术语词典、专家的人工经验等作为本体构建的基础,结合知识图谱的应用场景来完善图谱的构建,最终获得实体类别、类别之间的关系、实体包含的属性定义。华为云知识图谱云服务提供图形化本体设计工具,可以通过拖拽编辑灵活完成企业知识图谱本体的构建。

    图4 华为云知识图谱云服务-本体设计界面

    2.2 如何配置数据源?需要做哪些准备

    在配置数据源之前,需要将不同类型、不同格式的数据进行初步的整理。比如:针对本地非电子化文档,需要先进行扫描电子化,结合OCR等技术将扫描件转换成文本文档。再比如:针对本地电子化文档,需要将本地文档按文档类型、格式进行归档解析整理成规范的格式,或者针对网络资源,需要根据网站特点,开发相应的爬虫,对数据进行爬取,并存储到本地数据库等等。还有一些第三方资源,需要获取相应的数据访问接口,并通过接口获取相应数据。

    整理好的数据上传到华为云OBS对象存储服务后,知识图谱云服务就可以进行数据源的配置,包括指定格式的针对结构化数据和非结构化文本的配置等。

    2.3 什么是信息抽取?怎样抽取?

    信息抽取的目的是根据不同的数据源、不同的数据格式,完成实体、属性、关系这种知识的抽取。这是知识图谱构建流程中非常关键的一环,信息抽取的质量决定了知识图谱的质量。实体之间的关系以及实体的属性值,都可以用三元组(主语、谓词、宾语)来表示,所以信息抽取又可以简单叫做三元组抽取。华为云知识图谱云服务支持结构化Key-Value格式和非结构化文本的三元组抽取。针对结构化数据,可以通过配置预置函数的组合,完成字段的处理。与之对应的,针对非结构化文本,云服务提供算法模型抽取能力,支持业界前沿的基于机器阅读理解(Machine Reading Comprehension,MRC)的三元组抽取方法,通过使用多轮对话的思想进行三元组抽取,先抽取主语(Subject),然后根据抽取结果和候选谓词对应的模板构造问句抽取宾语(Object),最终组成(主语,谓词,宾语)三元组。该框架模型效果可以达到当前业界最好水平(state-of-the-art)。华为云知识图谱服务支持基于该算法的模型训练、预测以及管理功能,同时以插件形式完成流水线中信息抽取部分。

    图5 基于机器阅读理解(MRC)的三元组抽取方法

    信息抽取中模型训练推理功能是基于华为云一站式AI开发管理平台ModelArts完成的,该平台提供高效的AI计算、模型训练、推理及部署能力,同时为了方便训练三元组抽取模型,额外提供三元组标注工具,用户可以基于该工具快速获得训练数据,完成信息抽取以及知识图谱构建工作。

    图6 三元组标注工具示例

    2.4 知识融合是如何完成的?

    所谓知识融合,就是对多个数据源进行知识抽取后的大量三元组数据进行对齐合并。举个例子:百度百科有明星刘德华,互动百科有明星刘德华,我们构建的知识图谱不能有两个明星刘德华吧?这时候就需要把他们识别出来放在一起,然后合并成一个实体,这就是实体的对齐以及知识的融合。这其中关键的问题是怎样高效的完成实体对齐,技术路线基本可以分为两类:基于实体属性相似度的框架、基于联合表征的深度学习框架。考虑到基于联合表征的深度学习框架依赖大量标注数据,并且模型与行业及数据强相关,无法提供很好的通用化能力,因此,华为云知识图谱服务当前支持基于实体属性相似度的框架,可以通过定义相似度度量及组合,完成实体对齐以及知识融合。

    除此之外,华为云知识图谱云服务还提供图谱可视化服务,可以直观地观察分析实体及关系。

    图7 病毒蛋白知识图谱可视化示例

    知识图谱需要怎样的存储方式?

    经过知识图谱构建,我们现在已经有了大量的三元组知识。那么要怎样来存储这些三元组知识呢?

    最直接的方式是使用表格式的存储方式,如关系型数据表,三元组以三列数据或多列数据的形式存储。这种方法在图谱规模比较小的时候是可行的,但是如果图谱规模变大了,是否依然可行呢?举个例子,假使我们有了娱乐明星+电影这样一个娱乐图谱,其中包括了大量的明星人物、电影以及他们之间的关系。如果想查询“刘德华和梁朝伟共同演过的电影中,年龄最大的导演是谁?”,就需要对关系型数据库中知识图谱结果表做2-3次自连接操作,如果三元组的数量是千万、亿、十亿规模的话,显而易见,这样的查询效率极低,基本不可行。

    华为云知识图谱服务采用的是业界主流的图数据库方式存储知识图谱,直接把数据或知识图谱以图的形式存储,可以非常高效地完成多跳关系、属性的查询。具体的,我们使用华为云图引擎服务,包括图存储、图计算一体的架构设计,不仅可以提供高效的查询性能,同时也可以提供多种预置的图深度学习算法,使用起来非常方便,欢迎大家前来试用。

    图8 华为云图引擎服务产品优势

    华为云知识计算案例介绍

    中国石油基于华为云知识计算服务的知识建模、油气图谱构建、图谱存储、自然语言处理、机器学习等能力构建了业界首个油气知识计算平台。以油气勘探开发数据为基础,通过知识计算技术的应用,为油气勘探开发增储上产、降本增效提供智能辅助和决策。

     

    图9 油气知识计算的价值和意义

    华为知识计算解决方案提供丰富的知识应用,从解决企业痛点、提升企业效率、提供知识化服务的角度全面赋能企业,体现了知识计算在各行业中的智能化价值,让各行业的企业可以快速、低成本、高效率地管理,通过应用企业知识、实现知识化转型,释放知识化带来的红利,全面提升企业在智能化时代的竞争力。

     

    想要get知识图谱全流程能力?更多精彩干货请收看3月13日的DevRun Live直播!

     

    DevRun Live是华为开发者大会2020(Cloud)旗下的线上开发者沙龙活动,以直播的形式分享前沿科技和应用实践,开发者可以了解技术趋势、学习最新实践应用、获取最新开发工具。

    点击阅读原文,预约观看直播

    展开全文
  • 从具体案例了解知识图谱构建流程

    万次阅读 2018-06-14 12:01:49
    参考链接:https://blog.csdn.net/heuguangxu/article/details/80230720经济责任审计知识图谱构建流程总结。    自2012年Google提出“知识图谱”的概念以来,知识图谱就一直是学术研究的重要方向,现在有很多...

    参考链接:https://blog.csdn.net/heuguangxu/article/details/80230720

    经济责任审计知识图谱构建流程总结。

        自2012年Google提出“知识图谱”的概念以来,知识图谱就一直是学术研究的重要方向,现在有很多高校、企业都致力于将这项技术应用到医疗、教育、商业等领域,并且已经取得了些许成果。Google也宣布将以知识图谱为基础,构建下一代智能搜索引擎。

        现在已经可以在谷歌、百度、搜狗等搜索引擎上面看到知识图谱的应用了。比如在Google搜索某个关键词时,会在其结果页面的右边显示该关键字的详细信息。在几个常用的搜索引擎中搜索知识时,返回的答案也变得更加精确,比如搜索“汪涵的妻子”,搜索引擎会直接给出答案“杨乐乐”,方便了用户快速精准的获取想要的信息。不过目前的搜索引擎只有少部分搜索问题能达到这种效果。

        关于知识图谱是什么,我想就不用介绍了,这种通过搜索引擎就能轻松得到的结果写在这里有点浪费篇章,并且我对知识图谱的理解也不深,不敢夸夸其谈,只是把自己这一段时间以来的工作做一个总结。

        本文只相当于以经济责任审计这一特定领域构建了一个知识图谱,仅仅是走了一遍流程,当作入门项目,构建过程中参考甚至抄袭了别人的很多方法与代码,末尾都会给出参考的项目等等。

    image

        上图是我构建经济责任审计知识图谱的流程,看起来很繁琐,但只要静下心看,个人觉得相对还算清晰,箭头都有指向。下面就一步一步进行说明。

    数据获取

        数据获取主要分为两部分数据,一部分是新闻类数据,我把它用作文本分类模型的训练集;另一部分是实体数据,为了方便,我直接把互动百科抓取的词条文件作为实体,省了属性抽取这一环节。

        因为本文构建的是一个经济责任审计领域的知识图谱,所以作为文本分类模型训练集的数据也应该是经济责任审计领域的。这里主要抓取了审计署、纪检委、新浪网的部分新闻。

    image

        像上面的图一样,新闻类网站一般都有搜索框,为了简单,所以我直接用搜索框搜索“经济责任审计”,然后从搜索结果中抓取新闻数据,即认为是经济责任审计相关的文本。抓取新闻类网站使用了chrome模拟用户进行访问。最终获得了3500多条新闻文本。

    领域词汇判定

        领域词汇判定,本文构建的不是开放领域的知识图谱,所以需要采用一种方法来判定所抓取的内容是否属于经济责任审计领域。领域词汇本文的方法实际上是领域句子判定,直接使用了大神的项目。CNN-RNN中文文本分类,基于tensorflow。也看到有人通过改进逻辑回归算法,在进行领域词汇的判定。

    实体关系抽取

        知识图谱的基本单位为(实体1,关系,实体2)这样的三元组,实体是直接从互动百科获取的词条,关系由两部分组成,一部分来自wikidata所提供的关系,这一部分直接从wikidata爬取即可得到,另一部分使用的是基于依存句法分析的开放式中文实体关系抽取,已经在前面的文章发过了。

    知识存储

        有了实体和实体关系,那么把这些数据进行筛选,然后入库,通过直观的页面展示,就可以了。这里使用的数据库是neo4j,它作为图形数据库,用于知识图谱的存储非常方便。知识的展示使用了别人的项目,仅仅是把里面的数据换掉了而已,感谢大神的无私。

    最后放几张效果图

    image

        下面是以“职业”为关系查询条件所得出的结果。

    image

    总结一下

        只是对几个月工作的梳理,大多数核心代码都改自现有的代码,所有的数据都来自于网络,与知识图谱相关的公开技术较少,我也只是尝试着做了一下,虽然很菜,也可以对大致的技术路线、流程有一个简单的了解,主要工作都是自然语言处理的内容。后期可以利用现在的知识图谱构建智能问答系统,实现从what到why的转换。

    感谢

    汉语言处理包HanLP:https://github.com/hankcs/HanLP

    中文文本分类:https://github.com/gaussic/text-classification-cnn-rnn

    农业知识图谱:https://github.com/qq547276542/Agriculture_KnowledgeGraph

    事实三元组抽取:https://github.com/twjiang/fact_triple_extraction

    中文自然语言处理相关资料:https://github.com/mengxiaoxu/Awesome-Chinese-NLP

    开放中文实体关系抽取:http://www.docin.com/p-1715877509.html

    展开全文
  • [python案例]金融知识图谱构建流程

    千次阅读 2020-04-24 08:30:00
    向AI转型的程序员都关注了这个号????????????机器学习AI算法工程 公众号:datayx小型金融知识图谱构流程示范存储方式基于RDF的存储基于图数据库的存储知识图谱构建代码...
  • 知识图谱构建流程及算法

    千次阅读 2021-03-30 10:07:01
    知识图谱 知识图谱的概念 知识图谱是对事实的一种结构化表示方法,由实体、关系和语义描述组成。知识图谱的数据结构以图形式存在,由实体(节点)和实体之间的关系(边)组成。本质上,它是一种表示实体间关系的语义...
  • 文章目录关于知识图谱知识图谱的概念知识图谱与异质网络知识图谱与知识库知识图谱构建研究背景知识图谱构建知识图谱的构建流程知识图谱本体构建知识图谱构建核心步骤实体消岐知识图谱关系补全知识图谱关系推理知识...
  • 医疗知识图谱的框架与构建过程,以及构建的应用示例介绍
  • 华为云自然语言处理技术专家郑毅在《企业级知识计算平台的技术解读和案例实践》分享中,讲述了华为云知识计算平台及相关技术、知识图谱构建流程及方法,以及知识计算行业案例。本文主要讲述“知识图谱构建流程及方法...
  • 小型金融知识图谱流程示范 1. 知识图谱存储方式 知识图谱存储方式主要包含资源描述框架(Resource Description Framework,RDF)和图数据库(Graph Database)。 1.1 资源描述框架特性 存储为三元组(Triple) 标准...
  • 模式也就是知识图谱的本体,是整个项目的骨架,直接决定知识图谱的应用范围。 这个阶段,需要根据知识图谱的应用场景,确定图谱的领域,进一步定义知识图谱的实体类别(概念)、概念分级、关系类别、属性类别等一...
  • 知识图谱构建主要包括五个过程, 如下图 2-1 所示。 分别是本体构建、 知识获取、知识表示、 知识融合以及知识存储。 一、本体构建【Neo4J图数据库中的标签】 0、本体与实体的区别 本体(类的集合):是概念(类...
  • https://protege.stanford.edu/products.php#desktop-protege 官网不容易下载,这里提供一个,方便下载不了的同学。
  • 【转】知识图谱构建全过程

    万次阅读 多人点赞 2018-07-13 21:52:14
    知识图谱,是结构化的语义知识库,用于迅速描述物理世界中的概念及其相互关系,通过将数据粒度从document级别降到data级别,聚合大量知识,从而实现知识的快速响应和推理。 当下知识图谱已在工业领域得到了广泛应用...
  • 知识图谱构建步骤

    千次阅读 2019-09-08 08:41:16
    斯坦福的七步法知识图谱构建步骤总结。 斯坦福大学医学院开发的七步法,主要用于领域本体的构建。七个步骤分别是: ① 确定本体的专业领域和范畴;② 考查复用现有本体的可能性;③ 列出本体中的重要术语;④ 定义类和...
  • 医疗知识图谱构建

    2021-06-20 19:26:15
    知识图谱构建的方式有很多,有基于Protege去构建,它是一个使用本体去一层层构建,手动定义一层一层关系,最终的结果是RDF或者OWL文件保存。具体的参考流程可以查看:Protege本体构建,另一种方法可以使用工业界比较...
  • 知识图谱总体构建思路(流程图)

    千次阅读 2019-04-25 16:49:42
    1 知识图谱的总体构建思路 如图所示,从原始的数据到形成知识图谱,经历了知识抽取、知识融合(实体对齐)、数据模型构建、质量评估等步骤。 原始的数据,按照数据的结构化程度来分,可以分为结构化数据、半结构...
  • 那么,如何助力企业破解智能化知识挖掘和管理难题,实现知识化转型? 3月13日下午14:00起举行的华为开发者大会2020(Cloud)第三期华为DevRun Live开发者沙龙中,华为云自然语言处理技术专家郑毅将分享《企业级知识...
  • 复旦大学知识图谱培训ppt7:知识图谱构建的质量控制(Data Quality Issues in Constructing Knowledge Graph)
  • 行业知识图谱概述,包括行业图谱简介,行业知识图谱的应用及挑战,以及行业知识图谱生命周期管理。 行业知识图谱关键技术,包括行业知识图谱生命周期中各过程的相关技术、现有可用的工具,以及各过程中的最佳实践及...
  • 知识图谱构建过程

    千次阅读 2020-05-07 13:38:16
    在本文中,笔者主要想分享一下自底向上构建知识图谱的全过程,抛砖引玉,欢迎大家交流。 “The world is not made of strings , but is made of things.” ——辛格博士,from Google. 知识图谱,是结构化的语义...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,279
精华内容 3,311
关键字:

知识图谱构建流程

友情链接: danpianji.rar