百度知识图谱构建技术|《Mining Type Information from Chinese Online Encyclopedias》论文阅读

《Mining Type Information from Chinese Online Encyclopedias》论文阅读

1. Introduction

  1. 找到一种从中文百科中挖掘类型信息的方案,作为中文LOD的补充
  2. 使用attribute propagation algorithm 生成了很多属性
  3. 找到一种评估种类属性和类型属性的评估方法

2. Approach

工作流程:

image-20190531204637839

  1. Explicit IsA Relation Detector从百科中的摘要和infobox中检测instanceOf关系,从类别系统中检测subclassOf关系
  2. 构建类别属性和实体属性,category with attributes 由被识别的instanceOf关系类别属性和实体属性组成

2.1 IsA Relation Detector

启发式检测

InstanceOf Relation Detection

从infoboxex和abstracts中获取

  1. infobox中一些(attribute, value)对经常被放入实体集和概念集中。我们认为如一个atrribute存在于概念集并且实体集存在它的值(value),就存在InstanceOf关系

一般来说,一个实体的概括(abstracts)中的第一句话是这个实体的定义。我们对这句话用fudanNLP工具进行语法分析,如果这句话的主语是实体,谓语是”是(be)”,并且宾语存在于概念集,我们认为这个主语和宾语有InstanceOf关系

SubclassOf Relation Detection

从中文百科的categories中获取

  1. 首先生成SubclassOf类别对,其形式为(sub-category, category),其次用两种启发式搜索从这些categories中搜索subclassOf关系
  2. 第一种搜索方法:根据相同的词汇开头声称对,如江苏学校 (school in Jiangsu) SubclassOf 中国学校 (school
    in China)(在中文中,用短语的最后一个名词)。先用FudanNLP分析短语(类似分词)。例:中国足球运动员->中国/足球/运动员->(中国足球运动员,运动员)
  3. 根据第一种搜索方法匹配出来的标签对,在zhishi.me中检索筛选

2.2 Category Attributes Generator

不同infoxbox的属性有很大差别,但是template(模版)量很少,并且种类属性的缺少也不利于推断,而且有很多没有属性的种类被弃用,所以作者用所有的category和subclassof关系组成了category graph,用种类图去生成属性,辨识InstanceOf和subclassOf的关系

Category Graph: 种类图是DAG(有向无环图),G = (N, E), N是表示所有categories的节点集合。E表示所有边$∈E$ ,这些边代表category $c_1$ 和category $c_2$ 有subclassOf关系。

属性传播算法:属性传播算法在种类图上遵守以下规则:

  1. 如果种类$c ∈ N$有从infobox 模版中的属性,这些属性不变
  2. 如果种类$c ∈ N$有拥有属性的实体,当这些属性有一半以上的实体拥有时,这些属性应该被传播给c
  3. 如果种类$c ∈ N$有拥有属性的子种类,当这些属性有一半以上的子属性拥有时,这些属性应该被传播给c
  4. 如果种类$c ∈ N$的父种类有属性,那么这些属性应该继承给c

具体流程:

image-20190601170315218

image-20190601170356953

image-20190601170839026

image-20190601170855367

2.3 Instance Type Ranker

在执行属性传播算法后,我们获得了相关文章的实体,实体的属性和种类,并嵌入Instance Graph中,随后使用基于实体图的随机游走算法来去除数据噪音。

Instance Graph: 为加权有向图. $G = (N, E, P; φ)$ 其中

image-20190601175706452

可以理解为:

$N$: 实体,实体的属性,实体的种类的并集

$E$: 给定实体和其属性的有向边,相应文章属性和种类的有向边的并集

$P$: 从给定实体游走到其性质的概率,从属性游走到种类的概率的并集

image-20190601180404433

如果属性的意义相同(生日/出生日期),可以用如下办法解决:

对于给定实体$i_j∈N_I$, 如果一个属性$a_k ∈N_A$不属于任何种类$c_l∈N_c$, 但是$c_l$ 有$a_k$同义的属性,那么就用一条有向边把$a_k$和$c_l$连接起来。

Graph-Based Random Walk:假设一个属性,拥有它的种类越少,那么这个属性就越具有代表性。如果一个实体有这样的具有代表性的属性(只是一个种类的属性),那么这个实体的type就是这个种类。所以可以有如下定义:

其中$a_i$为属性。

随机游走过程从给定实体$ij ∈ N_I $ 开始,随机走到它的一个属性$a_k ∈N_A$,其概率为$p{IA{jk}} ∈ P{IA}$,最后,从一个属性随机行走一步到一个和$i_j$在文章同一页的种类$c_l∈N_c$

image-20190601182247799

N为种类数量,$Count^*(a_k)$为从$a_k$出来的有向边的数量。

这样,随机游走更偏向于那些具有代表性的属性,我们就能得到正确的category。

当从属性向种类游走时,如果种类对这个属性有相同的概率(例如Fig2中PAC1 = PAC2 = 0.5),定义一个种类作为实体的type的概率如下

$Count′(c_l)$ is the total number of times for$ c_l$ as the destination and $P(c_l|i_j) $converges after $t$ times graph walk.