实体链接综述
该论文是对2015年发表在IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINNERING的文章《Entity Linking with a Knowledge Base Issues Techniques and Solutions》的梳理与总结,旨在宏观上阐述实体链接的相关技术。该篇文章是由韩家炜所著。
本篇内容主要围绕论文的第二章——Candidate Entity Generation;第三章——Candidate Entity Ranking 展开。
候选实体生成(Candidate Entity Generation)
候选实体生成的方法主要是针对实体指称项表层形式和知识库中的实体名称,进行基于“字串比较”的方式而生成。
具体可以分为:1. 基于命名字典的方式;2.基于表层形式扩展的方式;3.基于搜索引擎的方式。
基于命名字典的技术
命名字典包含各种命名实体的名称的表达方式,如:变体、缩写、混淆名称、拼写变体和昵称等。
命名字典的构建利用了大量的Wikipedia中的信息,如:实体页面、重定向页面、消歧页面、首段加黑字段、Wikipedia中的超链接文本。
实体页面
Wikipedia中的每一个实体页面均描述了单一的实体和其聚焦的相关信息。
通常,每个页面的标题是该页中描述的实体的最常见名称。
将entity page中的title加到命名字典的key中,实体的描述加到value中。
重定向页面
每一个别名会有一个重定向页面,其可以指向Wikipedia中存在的实体。
重定向页面同城会指出同义词项、缩写项、所指实体的变体。
将redirect page 的title 加入到key中,将所指的实体加入到value中。
消歧页面
Wikipedia中的许多实体都由同样的名称,消歧页面的创建就是为了将他们更好的分开,并包含了这些实体的相关列表。
消歧页面对实体对缩写和别名的提取有很大的帮助。
将disambiguation page 中的title加入到key中,实体列表加入到value中。
首段加粗字段
在Wikipedia中第一段文字有加粗部分,其大部分是本文实体的昵称、别称、全称。
将 Bold phrases from first paragraphs 加入到key中,将当前描述的实体加入到value中。
Wikipedia文章中的超链接
Wikipedia中的文本进场包含很多超链接,连接到很多指称项的页面。
这些锚文本会对所指实体的同义词和其他变种的发现有很大帮助。
将锚文本中的信息加入key中,所指向的实体加入到value中。
最终的命名字典如下所示:
基于字典的方式可以根据key去找候选实体,同时也可以将key对应的value的候选实体加在候选实体集合中。
除了上述的生成方式,也可用规则生成较为模糊的结果:
- 实体指称项被候选实体完全涵盖(字符上的包含关系)
- 指称项和候选实体的首字母完全匹配
- 指称项和候选实体有共同的几个词汇
- 实体之间有较强的字串相似度,计算方式(character Dice score、skip bigram Dice score、 Hamming distance)
相比于精确匹配,模糊匹配的方式拥有较高的召回率,但是会有较大的噪音。
有些方法会在构建字典前对指称项作拼写检查。
从本地文档扩展表面的形式
由于有些实体指称项是全称的同义词或者是全称的一部分,所以该技术旨在从实体指称项出现的文档中识别可能的扩展变体。
具体的方法可以分为2类:启发式方法、监督学习的方法
启发式方法
- 利用模板进行匹配,比如:缩略词附近的括号内多为全称,反之亦然。Hewlett Packard(HP)
- 在文本中利用N-gram方式匹配指称项首字母(去除停用词后,进行全文匹配,如果找到相等的首字母,则认为是扩展形式)
- 采用NER的方式,在识别之后的实体中,查找是否有包含与被包含的关系。
监督学习的方式
对于较为复杂的扩展方式,基于启发式的方法就很难识别了。比如:CCP-Communist Party of China,DOD-United States Department of Defense。
首先根据预定义的规则进行候选扩展项的选择。
规则示例:首字母相同,或者包含不超过2个停用词。
然后将候选扩展项和指称项,表示成特征向量。包含但不限于(词性、指称项和扩展项的对齐信息)。
用SVM分类器对指称项-扩展项对进行训练,最后将其输出的置信度分数做判断。
基于搜索引擎的方法
一些实体链接系统利用了web上的信息进行候选实体识别。
将实体指称项,输入到搜索引擎(Google)中,选取页面中top20的Wikipedia页面加入候选集合中。
候选实体排序(Candidate Entity Ranking)
候选实体排序模块是实体链接系统的重要组成部分,其目的是在众多候选实体中找出最合适的候选实体。
候选实体排序可以分为两类:
- 监督学习排序方法
- 非监督学习排序方法
同样可以分为三类:
- 单实体排序方法
- 多个实体排序方法
- 协同排序方法
本章节主要按照第一种分类方法介绍排序算法。
本节内容分为:1. 特征介绍;2. 监督排序方法; 3. 非监督排序方法
特征
特征可以分为两类:上下文独立特征、上下文相关特征
上下文独立特征
1.名称字串比较
名称字符串比较是实体指称项和候选实体最直接的特征。
通常可以采用:edit distance、Dice coefficient score、character Dice、skip bigram Dice、left and right Hamming distance scores
常见的名称比较包括:
- 是否实体指称项正好与候选实体匹配。
- 是否实体指称项是否是候选实体的开始或者结束。
- 是否候选实体是实体指称项的前缀和尾缀。
- 是否实体指称项完全包含候选实体或者是相反的情况。
- 是否有完全相同顺序的字符串在实体指称项和候选实体中同时出现。
- 实体指称项和候选实体中完全相同的词汇的数目。
- 最长公共字序列占两者中较短的序列的长度比例
2.实体流行度
用于揭示候选实体集合中某实体的先验概率,例如:New York大多是指的城市,而不是一部名为New York的电影。
流行度的计算方法:
P
o
p
(
e
i
)
=
c
o
u
n
t
m
(
e
i
)
∑
e
j
∈
E
m
c
o
u
n
t
m
(
e
j
)
Pop(e_i)=\frac{count_m(e_i)}{\sum_{ej\in E_m}count_m(e_j)}
Pop(ei)=∑ej∈Emcountm(ej)countm(ei)
其中,
c
o
u
n
t
m
(
e
i
)
count_m(e_i)
countm(ei)是指称项m,指向候选实体
e
i
e_i
ei的锚文本数量。
我们可以把实体流行度特征视为实体链接任务中重要的特性。
3.实体类别
这个特征指出实体指称项与候选实体是否为同一类别。(人、地方、组织?)
如何提取实体的类别?
- 采用NER的方式提取指称项的类别或者是候选实体的类别
- 采用infobox的方式提取候选实体的类别
上下文相关特性
1.文本上下文
最直接的文本上下文特征的度量方式是文本相似度计算。
常用的两种表达方式为:
- bag of words:可以是全文的表达、也可以是上下文窗口词汇的表达、top-k的TF-IDF表达
- concept vector:从文本中抽取关键字、锚文本信息、命名实体、分类、叙述标签和Wikipedia的概念组成一个向量
度量的方式有很多:
点积、余弦距离、Dice coefficient 、word overlap、KL-散度、n-gram度量、Jaccard相似度。
2. 实体映射的一致性
对于一个指称项,同一文章中其他指称项链接对其的链接也很重要。
WLM:Wikipedia Link-based Measure(维基百科链接度量)基于一个假设——有许多Wikipedia文章链接到两个实体,则认为这两个实体是语义相关的。
WLM是由标准谷歌距离建模而来的。
给定两个实体
u
1
和
u
2
u_1和u_2
u1和u2,主题一致性定义如下:
C
o
h
G
(
u
1
,
u
2
)
=
1
−
l
o
g
(
m
a
x
(
∣
U
1
∣
,
∣
U
2
∣
)
)
−
l
o
g
(
∣
U
1
∩
U
2
∣
)
l
o
g
(
∣
W
P
∣
)
−
l
o
g
(
m
i
n
(
∣
U
1
∣
,
∣
U
2
∣
)
)
Coh_G(u_1,u_2)=1-\frac{log(max(|U_1|,|U_2|))-log(|U_1\cap U_2|)}{log(|WP|)-log(min(|U_1|,|U_2|))}
CohG(u1,u2)=1−log(∣WP∣)−log(min(∣U1∣,∣U2∣))log(max(∣U1∣,∣U2∣))−log(∣U1∩U2∣)
U
1
U_1
U1和
U
2
U_2
U2是实体
u
1
和
u
2
u_1和u_2
u1和u2链接到的Wikipedia的文档集合,WP是Wikipedia中的所有文档集合。
除此之外还有其他的度量方式:
PMI-like(Point-wise Mutual Information)
C
o
h
P
(
u
1
,
u
2
)
=
∣
U
1
∩
U
2
∣
/
∣
W
P
∣
∣
U
1
∣
/
∣
W
P
∣
⋅
∣
U
2
∣
/
∣
W
P
∣
Coh_P(u_1,u_2)=\frac{|U_1\cap U_2|/|WP|}{|U_1|/|WP|\cdot|U_2|/|WP|}
CohP(u1,u2)=∣U1∣/∣WP∣⋅∣U2∣/∣WP∣∣U1∩U2∣/∣WP∣
Jaccard distance
C
o
h
J
(
u
1
,
u
2
)
=
∣
U
1
∩
U
2
∣
∣
U
1
∪
U
2
∣
Coh_J(u_1,u_2)=\frac{|U_1\cap U_2|}{|U_1\cup U_2|}
CohJ(u1,u2)=∣U1∪U2∣∣U1∩U2∣
为了计算当前指称项的实体映射一致性特征,必须知道当前文档的其他指称项实体映射。
这个特征的计算被证明为NP-hard问题,所以为了得到一个特征所花费的时间成本和运算资源是相当昂贵的。
小结
以上所介绍的各种特征是实体链接系统采用的主要特征,没有任何一个特征在任何数据集上都优于其他特征。所以在实体链接系统设计时,需要考虑多方面的因素,比如精度和效率的平衡,以及数据集的特性。
监督排序方法
监督排序的方法是用在已经标注的数据集上,学习如何找到实体指称项最适合的映射实体。
二分类方法
有些系统将实体链接任务视为二分类的问题。
给定<实体指称项,候选实体>对,用二分类器去判断是否实体指称项能链接到候选实体对象上。
系统的训练和验证的数据实例是
<
m
,
e
i
>
<m,e_i>
<m,ei>,如果是正确链接,给定正向标签;如果是错误链接,则给定错误标签。
每一个 < m , e i > <m,e_i> <m,ei>对都是一个特征向量,由上述特征组合而成。
如果有多个候选实体被标记为正向实体,则会使用其他方法选择最有可能的一项。
例如:1.基于置信度的方法;2.基于VSM的方法;3.基于SVM 排序模型
对于二分类器,大部分系统采用支持向量机。此外还有逻辑回归二分类器,朴素贝叶斯分类器,KNN分类器。
Learning to Rank的方法
尽管二分类器可以很简单的解决候选实体排序的任务,但是它有一定的缺陷:
- 正负例样本的极度不均衡。
- 多个候选实体被分为正样本,则需要使用其他的技术去选择出最适合的一个。
因此许多系统利用了learning to rank 框架对候选实体集合进行排序,考虑了候选实体之间的一些关系,而不是孤立的。
Leaning to Rank是一个有监督的技术,其目标是自动的对训练数据集构建排序模型。
其能够解决二分类器带来的问题,该框架使用的特征向量仍是由上述特征构成。
通常使用的方法是ranking SVM 框架。
基于概率的方法
略
基于图的方法
基于图的方式是在一个文档中将所有的实体构建一个图,通过上下文文本相似性、以及实体映射一致性作为实体间的关系,采用PageRank的方法进行推理。
具体来说将实体指称项和候选实体集合作为图的节点构建无向图,边有两类,实体指称项——候选实体;候选实体A——候选实体B。每个边拥有权重,权重可以以上述特征做组合或者是使用单一特征,利用相似度计算方法得到该值。
最后该图就是由实体指称项和候选实体构成的,利用PageRank算法即可求得重要性的排序,最终得到候选实体。
模型组合
模型组合,也称为集成方法,通常将性质和特征显著不同的学习算法聚合在一起,并试图获得比它们组合的任何模型更好的预测性能。模型组合越来越受欢迎,因为它可以克服单个模型的缺点。
有研究者将二分类器和learning to rank 相互结合起来。
基于非监督的排序方法
基于VSM的方法
为了避免大量的训练数据集的标注工作,可以采用一种相对简单的排序方法基于VSM的方法。
所有基于VSM的方法都大致分为了两个步骤:
- 将实体指称项和候选实体表示为向量
- 采用一种相似度计算方法,度量实体指称项与相关候选实体的相似度,选择最相似即可(得分最高)
基于信息检索的方法
一些实体链接系统将候选实体排序的问题视为信息检索的问题。
在这类模型中,将每一个候选实体索引为一个单独的文本,由实体指称项产生query。query可以来自于指称项本身,也可以来自于实体的上下文。
根据指称项和候选实体中的概率分布,计算KL散度,从而得到最终的相似度。