知识图谱的概念首先是由谷歌提出,其目的是描述真实世界中存在的各种实体和概念,以及他们之间的关系,在真实的行业中应用时,我们需要先根据业务需求进行领域确定,然后通过正常的知识图谱构建方式,进行基础内容的搭建,最后进行实测之后进行优化处理,从而满足原本的业务需求。
构建过程主要分为:知识体系搭建、知识抽取、知识融合、知识储存和检索、知识推理、知识问答等六步。
第一步:知识体系构建
采用什么样的方式表达知识,其核心是构建一个本体对目标知识进行描述:
在这个本体中需要定义出知识的类别体系;
每个类别下所属的概念和实体;
某类概念和实体所具有的属性以及概念之间、实体之间的语义关系;
同时也包括定义在这个本体上的一些推理规则。
第二步:知识获取
知识获取可分为结构化和半结构化数据源中的知识抽取和非结构化文本中实体的知识抽取。
结构化和半结构化数据源中的知识抽取:因为数据噪声少,这类数据源的信息抽取方法相对简单,经过人工过滤后能够得到高质量的结构化三元组。这是目前工业界常用的技术手段。
非结构化文本中实体的知识抽取:因为涉及到自然语言分析和处理技术,难度较大。但是互联网上更多的信息都是以非结构化文本的形式存在,而非结构化文本的信息抽取能够为知识图谱提供大量高质量的三元组事实,因此是构建知识图谱的核心技术。这目前也是学术研究的重点
第三步:知识融合
第四步:知识存储和查询
目前知识图谱大多是基于图的数据结构,它的存储方式主要有两种形式:RDF格式存储(以三元组的形式存储数据)和图数据库(比RDF数据库更加通用,目前典型的开源图数据库是Neo4j)。
第五步:知识推理
目前知识推理的研究主要集中在针对知识图谱中缺失关系的补足,即挖掘两个实体之间隐含的语义关系。所采用的方法可以分为两种:
基于传统逻辑规则的方法进行推理:研究热点在于如何自动学习推理规则,以及如何解决推理过程中的规则冲突问题;
基于表示学习的推理:采用学习的方式,将传统推理过程转化为基于分布式表示的语义向量相似度计算任务。这类方法优点是容错率高、可学习,缺点也显而易见,即不可解释,缺乏语义约束。
第六步:知识问答(完成最终应用)
看似简单的六步,却不知道应该怎么做?!这是现在大多数知识图谱入门者最头疼的问题。
很多初学者认为知识图谱的入门学习比较难,不仅仅是因为知识图谱的技术栈比较长,还因为涉及到NLP、ML、Database、知识工程等多个学科知识,找不到重点,自己摸索两个月,回头看“WC,还是啥也没明白呀!”,最后越学越累……
深蓝学院倾心打磨了《知识图谱理论与实践》课程,由于受疫情影响,我们基于以往6期的知识图谱线下课程,迭代精品线上课程。这本课程将理论基础与实践相结合,让你实现基本知识图谱的问答系统~
实践项目
1
是基于Java语言开发的本体开发工具,可以用于类模拟、实例编辑、模型处理与模型交换。课程将手把手教给大家用
2
词向量表示模型
学习如何实现Word2Vec词向量表示,使用以及训练自己的Word2Vec模型,了解Fine-turning过程以及hierarchicalsoftmax和negativesampling的优化策略。
3
基于Bert的文本分类
首先详细介绍Bert代码中的BertEmbeddings类、BertEncoder类和BertPooler类这3个模块的实现,然后讲解如何将Bert用于构建文本分类器,并以CoLA标准数据集为例,用Bert实现判断给定句子是否语法正确的任务,最后给出对于不同数据集,如何在不改变代码框架基础上,实现不同的数据预处理。
4
基于LSTM+CRF的命名实体识别
学习如何使用PyTorch实现LSTM+CRF序列标注模型,完成快递信息抽取任务的命名实体识别,在基本模型的基础上,完成BiLSTM+CRF模型。在实践过程中,大家可以对比CRF模型与BiLSTM+CRF模型在命名实体识别任务的表现。
5
基于CNN与multi-headselection的实体关系抽取
利用CNN表示句子级特征,进而进行实体关系的分类,对比位置向量对模型提升的效果;进一步讲解基于multi-headselection的关系分类,及其在语言与智能技术竞赛中数据集上的Pytorch实现。
6
D2RQ关系数据库转RDF
首先讲解将关系型数据转成RDF的多种方式,比如直接映射、R2RML映射、D2RQ映射,然后重点讲解D2RQ如何将关系型数据库当作虚拟的RDF图数据库进行访问的。
7
图数据库Jena
介绍图数据库Jena的基本使用方法,学习知识图谱本体构建,掌握如何将关系数据库(MySQL)中的表转换成图数据库中的RDF三元组。
8
基于规则的推理
基于Jena数据库,讲解规则的语法以及规则文件的配置,最后通过SPARQL查询,查询数据库中的喜剧演员名单。
9
基于分布式表示的推理
学习如何实现知识图谱分布式表示模型TransE,讲解TransE的关键模型的代码实现。
10
基于知识图谱的医药领域的问答系统
熟悉知识图谱应用的开发流程。对于医药领域的问答系统,将教给大家从数据爬虫开始,通过本体构建、RDF生成、问句解析、SPARQL查询以及答案生成等步骤搭建完成的问答系统。