【知识图谱】基本认识

为什么需要知识图谱?什么是知识图谱?—KG的前世今生

一、 为什么需要KG

计算机无法获取网络文本的语义信息,实现看到的不仅是字符串的目的。

二、 相关概念及形式化表示

1、Semantic Network 概念与概念之间的关系;专家系统
2、知识图谱由相互连接的实体和他们的属性构成。
3、每条知识表示为一个SPO三元组:subject predicate object主谓宾。
4、Resource description framework 资源描述框架RDF形式化三元组。
RDF图中一共有三种类型,International Resource Identifiers(IRIs),blank nodes 和 literals。

Subject—>IRI或blank nodes
predicate—>IRI
object—>IRI和blank nodes 和literals

【知识图谱】基本认识
IRI:在整个网络或者图中唯一定义了一个实体/资源,类似于URI
Literal:带有数据类型的纯文本
Blank nodes:没有IRI和literal的资源,或者说匿名资源

5、具体实例介绍

6、未来学习内容
Semantic Web Stack语义网技术栈介绍KG具体技术
如何利用关系型数据库中的数据来构建一个知识图谱?
搭建一个简易的基于知识图谱的问答系统(KBQA)?

语义网络,语义网,链接数据,知识图谱

一、语义网络(Semantic Network)

  1. 定义:用相互连接的节点和边来表示知识,节点表示对象、概念,边表示节点之间的关系。
  2. 优点:易于展示,聚类
  3. 缺点:节点与边没有统一标准;无法区分概念节点与对象节点;
  4. 资源定义框架RDF解决问题,对is-a定义,即rdf:type,如猫是哺乳动物形式化表达为:猫rdf:type哺乳动物
  5. 区分概念和对象?即定义Class和Object(也称作Instance, Entity)。建模的角度不同,同一个事物的表示也可能不同。如果不能用一种方法来区别两者,不仅会给我们带来理解上的困难,在进行融合的时候也会造成数据冲突。W3C制定的另外两个标准RDFS/OWL解决了这个问题。
  6. RDFS和OWL提供了schema层的描述。通过RDFS或者OWL中的预定义词汇,可以形式化地声明一个类:哺乳动物 rdf:type rdfs:Class/哺乳动物 rdf:type owl:Class。通过RDFS也可以声明一个子类:熊 rdf:type rdfs:Class & 熊 rdfs:subClassOf 哺乳动物。

二、 语义网(Semantic Web)和链接数据(Linked Data)

  1. 描述万维网中资源、数据之间的关系。W3C制定的用于描述和关联万维网数据的一系列技术标准,即,语义网技术栈。
  2. 语义网正是为了使得网络上的数据变得机器可读而提出的一个通用框架。“Semantic”就是用更丰富的方式来表达数据背后的含义,让机器能够理解数据。“Web”则是希望这些数据相互链接,组成一个庞大的信息网络。
  3. 链接数据强调在不同数据集之间创建链接,倾向于使用RDF和SPARQL(RDF查询语言)技术,对于Schema层的技术,RDFS或者OWL,则很少使用。

三、 知识图谱

  1. 知识图谱是由本体(Ontology)作为Schema层,和RDF数据模型兼容的结构化数据集。
  2. 本体定义为“概念和关系的形式化描述”,分别指实体的类层次和关系层次。
  3. 关系也称为属性(Property),根据是实体和实体之间的关系还是实体和数据值之间的关系分为对象属性(Object Property)和数据属性(Data Property)

知识图谱基础之RDF,RDFS与OWL

一、 知识图谱的基石:RDF

  1. 本质是一个数据模型(data model),统一标准描述实体/资源。
  2. 形式上表示为SPO三元组,即一条语句(statement),一条知识。
  3. 序列化方法serialization:存储和传输RFD数据,目前方法有:RDF/XML(xml格式),N-Triples(多个三元组),Turtle(使用最多),RDFa(嵌入网页),JSON-LD(键值对)
  4. 表达能力:有限,无法放区分类和对象,无法定义描述类的关系和属性,缺乏抽象能力,RDFS和OWL这两种技术或者说模式语言/本体语言(schema/ontology language)解决了RDF表达能力有限的困境。

二、 RDF的“衣服”——RDFS/OWL

  1. 本质上是一些预定义词汇(vocabulary)构成的集合,用于对RDF进行类似的类定义及其属性的定义。
  2. 用小写开头的单词或词组来表示属性,大写开头的表示类
  3. 数据属性(data property,实体和literal字面量的关系)通常由名词组成,而对象数据(object property,实体和实体之间的关系)通常由动词(has,is之类的)加名词组成。
  4. 轻量级的模式语言——RDFS,Resource Description Framework Schema。介绍RDFS几个比较重要,常用的词汇:
  1. rdfs:Class. 用于定义类。
  2. rdfs:domain. 用于表示该属性属于哪个类别。
  3. rdfs:range. 用于描述该属性的取值类型。
  4. rdfs:subClassOf.用于描述该类的父类。比如,我们可以定义一个运动员类,声明该类是人的子类。
  5. rdfs:subProperty.用于描述该属性的父属性。比如,我们可以定义一个名称属性,声明中文名称和全名是名称的子类。
  1. RDFS的扩展——OWL,Web Ontology Language,两个主要的功能:1. 提供快速、灵活的数据建模能力。2. 高效的自动推理。

  2. 常用词汇:
    【知识图谱】基本认识

  3. 基于本体的推理和基于规则的推理,加入支持OWL推理的推理机(reasoner),就能够执行基于本体的推理了。