天天看点

知识图谱(三)——知识体系构建和知识融合一、知识体系构建二、知识融合

知识图谱不仅包含具体的实例知识数据,还包括对知识数据的描述和定义。该部分对数据进行描述和定义的“元”数据被称为知识体系(Schema)或本体(Ontology)。

知识融合主要方法:框架匹配和实例对齐。

一、知识体系构建

1、概述

知识体系包含三方面的核心内容:

  • 概念的分类
  • 概念属性的描述
  • 概念之间相互关系

知识体系的基本形态包含五个层次(难度升序):词汇(Terms)、概念(Concepts)、分类关系(Taxonomic Relations)、非分类关系(Non-Taxonomic Relations)和公理(Axioms)。

示例:

知识图谱(三)——知识体系构建和知识融合一、知识体系构建二、知识融合

2、人工构建方法

人工构建知识体系的过程可分为以下六个主要阶段(注意:非严格的线性关系):

确定领域及任务 ==》体系复用 ==》罗列要素 ==》确定分类体系 ==》定义属性及关系 ==》定义约束

(1)确定领域及任务

与具体的应用任务有关,与具体的领域密切相关,也不能抛开领域建立一个高大全的、无法被广泛使用的产品。

想要构建更为合适的体系,需要回答:

  • 我们为什么要使用这个知识体系?
  • 这种知识体系呢个构帮助回答哪些类型的问题?
  • 谁会使用并维护这个知识体系?

(2)体系复用

在真正进行构建之前,应广泛调研现有的第三方知识体系(eg:Schenma.org)或与之相关的资源,尽可能的参考前人已有的成果。

常用资源如下:

  • 领域词典:专家编撰的领域内的词典,对构建限定领域的知识体系具有重要的参考意义。
  • 语言学资源
  • 开源知识图谱:DBpedia、YAGO、Freebase、OpenCyc等
  • 网络百科

(3)罗列要素

根据领域,尽可能罗列期望在知识图谱中出现的要素列表,主要包括概念、属性以及关系。

(4)确定分类体系

确定了相关要素后,需要将其中表示概念的要素组织成层级结构的分类体系。必须保证上层类别所表示的概念完全包含下层类别所表示的概念(所有下层类别的实例必须是上层类别的实例)。

两个构建方法:

  • 自顶向下:从最抽象的概念开始,逐层添加更为具体的概念
  • 自底向上:从具体的概念开始,逐层开始抽象

(5)定义属性及关系

为每个类别定义属性及关系。

  • 属性:描述概念的内在特征,
  • 关系:刻画不同概念之间的关系。

属性的定义需要受分类体系的约束,下层类别必须继承所有上层类别的属性。

步骤(4)和步骤(5)常交叉进行。

(6)定义约束

  • 不同的属性和关系具有不同的定义域和值域。
  • 数据报障数据的一致性,避免异常值的出现。

2、自动构建方法

根据数据源结构化程度的不同,知识体系的学习技术可分为:

  • 基于非结构化数据的知识体系学习(重点)
  • 基于结构化数据的知识体系学习(采用与人工构建相结合的方式工作)
  • 基于半结构化数据的知识体系学习(采用与人工构建相结合的方式工作)

(1)基于非结构化数据的知识体系学习

基本思想:对于非结构化数据(通常指文本数据),首先利用自然语言处理工具对文本进行分词、句法分析、命名实体识别等预处理操作,然后利用模板匹配、统计学习等手段从文本中抽取重要信息,主要包括领域概念、实例以及概念之间的关系。

主要步骤:领域概念抽取、分类体系构建、概念属性及关系抽取

a、领域概念抽取

目标:从文本数据中抽取出构建知识体系所需的关键元素(该领域的术语),包括实体类型名、属性名、关系名等

步骤如下

  • 抽取候选术语:首先利用自然语言处理工具对文本进行分词、句法分析,然后利用语言学规则或模板在文本中抽取特定的字符串,并将这些字符串当做领域术语的候选。目标:尽量多覆盖真正的术语。
  • 术语过滤:领域术语在领域内出现的频率会显著高于领域外出现的频率,过滤低质量的术语。
    • 常用方法:互信息(MI)、词频逆文档频率(TF-IDF)、术语相关频率(RTF)等
  • 术语合并:知识体系是对概念及其关系的描述,因此术语需转换为概念。
    • 做法:将候选术语中表达相同概念的术语聚合到一起,即识别同义词。
    • 代表方法:
      • 基于词典的方法:利用现有词典资源获取词汇的同义情况,eg:WordNet、HowNet、同义词词林等。
      • 基于统计的方法:进行词汇表示学习,并基于词汇的表示对词汇进行聚类。

b、分类体系构建

目标:获取不同概念之间的上下位关系(继承关系)。 下位词是上位词概念的具体化,eg:“犬科动物”是“哺乳动物”的下位词。

代表方法

  • 基于词典的方法:利用现有词典资源获取不同词汇的上下位关系,eg:WordNet等。
  • 基于统计的方法:通过词的上下文对当前词进行表示,并基于该表示对得到的领域术语进行层次聚类。

c、概念属性及关系抽取

与概念抽取的过程类似,首先利用自然语言处理工具对文本进行分词、句法分析等预处理,然后利用语言学规则或模板的方法为给定的概念获取候选属性集合。然后利用统计方法定量评估每个候选属性的置信度,过滤掉低质量的属性,也涉及同义词的情况。

(2)基于结构化数据的知识体系学习

主要任务:分析关系模型中蕴含的语义信息,并将其映射到知识体系的相应部分。

构建过程:通过分析数据表的字段内容、主键、外键等信息识别实体和实体间关系。

在信息抽取时,可从描述实体的表中抽取实体的概念(即本体类型)及实体属性,从描述关系的表中抽取概念间关系,建立初步的知识体系,并进行评估和修正,生成最终的知识体系。

(3)基于半结构化数据的知识体系学习

典型数据:XML格式数据、HTML格式网页数据以及它们遵循的文档类型定义(XML Schema 或 DTD)等。以上两类方法均可使用。

3、典型知识体系(本体)

  • SUMO(Suggested Upper Merged Ontology)——最大的公共本体,主要用于学术领域,可作为其他知识体系的基础本体。
  • Schema.org
  • Freebase——特点:使用组合数据类型(CVT)的方式表示事件等N-Triple事实。
    • Protege常被用于构建、编辑和管理知识框架。常被应用于基于框架的知识表示模型,一般是先定义类,在定义类中的属性,最后定义类和属性的约束。

二、知识融合

知识图谱融合(根据KG类型划分):

  • 竖直方向的融合:融合高层通用本体与底层领域本体或实例数据。eg:YAGO
  • 水平方向的融合:融合相同层次的知识图谱。eg:BabelNet

知识融合通过对多个相关知识图谱的对齐、关联和合并,使其成为一个整体。按融合对象的不同分为:框架匹配和实体对齐。

  • 框架匹配:对概念、属性、关系等知识描述体系进行匹配和融合。
  • 实体对齐:对齐合并相同的实体完成知识融合

但是实例知识有时有冲突,需要对其检测和消解。

1、框架匹配(本体对齐)

解决知识体系之间的异构性,知识框架主要包括概念(类型)、属性、关系和它们之间的约束。

目前常用的框架匹配方法还停留在匹配不同知识库中的元素,按照使用的技术不同可以分为:元素级匹配和结构级匹配。

(1)元素级匹配

独立考虑元素是不是匹配,不考虑其他元素的匹配

  • 字符串匹配:
    • 常用匹配方法:前缀距离,后缀距离,编辑距离和 n n n 元语法距离
    • 这种方法忽略了语言符号的多义性,一词多义和一义多词
  • 词向量:将词表示为低维语义向量空间的一个点,语义相似度用点之间的距离来衡量。与字符串相比,有更强的捕获词背后的真正语义的能力,且通过训练产生的词向量的覆盖度要大得多。
  • 混合方法:常将词向量与其他编辑距离等结合,混合方法获得了很好的性能。

(2)结构级匹配

不同元素的匹配之间也会有影响,例如属性的定义域和值域匹配度高,属性匹配度也高。基本思想:相似的概念具有相似的概念结构。

  • 基于图的技术:对于两个本体中的节点,若它们的邻居节点是相似的,则它们也是相似的。将本体匹配问题转化为发现最大公共子图的问题。
  • 基于分类体系的技术:只关注与匹配一些特殊关系。“实例-类型”(is-a)或“子类-父类”(SubClassOf)关系。
  • 基于统计分析的技术:挖掘蕴含的规律,并对概念、属性、实例、关系等对象进行分组,进而计算它们之间的距离。
    • 典型技术:形式概念分析、基于距离的分类、相关性分析以及频度分布。

2、实体对齐(实体匹配)

实体对齐:判断相同或不同知识库中的两个实体是否表示同一物理对象的过程。其在数据集成和知识融合中发挥着重要的作用。

方法:

  • 成对实体对齐:表示独立地判断两实体是否对应同一物理对象,通过匹配实体属性等特征判断它们的对齐程度。
  • 协同实体对齐:不同实体间的对齐是相互影响的,通过协调不同对象间的匹配情况得以达到一个全局最优的对齐结果。

典型方法:基于知识库向量联合学习的对齐方法

  • 基本思想:通过知识库联合表示学习(种子对齐方法:两个实体的向量要在训练过程中尽可能相似),将多个知识库表示在同一个语义向量空间中,把知识库实体对齐的过程转化为两个知识库中实体相似度计算问题。
  • 知识库联合表示学习 步骤如下:
    • 首先,利用简单的对齐方法(eg:字符串匹配),来产生初始的种子对齐,这些种子对齐要准确率非常高。
    • 然后,采用TransE的方式,学习两个知识库的对齐。
  • 优点:不需要依赖人工设定的规则和特征,也不需要了解知识库的命名习惯。适应性强、易于移植

3、冲突检测与消解

冲突检测与消解是知识融合的重要步骤,是多个知识图谱形成一个一致结果的最后步骤。

冲突识别(最简单的方法):发现对于同样的属性和关系有不同的实例,但是对于某些属性,这种策略不一定有效。eg:某个人的两段不同的婚姻,都正确,不存在冲突,则需要针对性设计不同检测策略。

冲突处理

  • 冲突忽略:不处理,将检测出的冲突交给用户解决(舍弃或修改)
  • 冲突避免:不解决,而使用规则或约束对数据来源进行过滤。eg:约束人的年龄范围,设计不同知识来源的可信优先度。
  • 冲突消解:利用知识图谱本身(框架和实例)的特征来消解冲突
    • 基于投票的方法:eg:多数投票
    • 基于质量估计的方法:考虑不同知识来源的可信度,最终选择较高质量的结果。eg:HITS或PangRank算法计算不同知识来源的可信度。

继续阅读