知识图谱de构建与应用(三):知识融合

本章首先介绍知识融合的定义、难点和流程,接着概括性地介绍本体对齐和实体对齐的常用方法,最后介绍知识融合在工业领域实践过程中的方法和评估体系。

3.1 知识融合概述

3.1.1 知识融合的主要难点

对于很多需要构建知识图谱的领域,由于从业者甚多,自然而然地会沉淀出数量众多的数据库或知识库,比如在影视子领域,百度百科、维基百科、豆瓣等都是很好的知识库,因而在构建知识图谱的过程中往往会对多个知识库的知识进行合并,以期获得最全面的知识,这个过程就称为知识融合。此外,由于被合并的各个知识库里的知识难免会存在错误,因而知识融合会对多个知识库的知识进行交叉验证,知识融合之后获得的知识相比融合前的单知识库会更准确。

由于自然语言的开放性,各个领域的知识融合任务往往面临以下四个难点。

(1)异构问题。不同知识库对同一个实体或知识的表达差异很大,具体体现在一个相同的实体存在大量的别名。如图3-1(a)所示,不同数据源对同一个实体“华为P30”有不同的描述。

(2)歧义问题。不同的实体使用同样或类似的文本表达。如图3-1(b)所示,在电商领域中,“苹果”既可以作为一个品类名称,也可以是一个品牌名称,甚至可以作为一种颜色或是图案名称出现。在工程实践中容易造成准确率的下降。

(3)数据噪声问题。在工业界知识图谱实践中,数据噪声问题是广泛存在的,多知识库融合会放大噪声问题,容易造成准确率的下降。如图3-1(c)所示,该商品实体的属性值很多是“不详”,造成了信息缺失或数据噪声。

(4)跨语言问题。不同语言在表达同一个实体或知识时,语义的漂移是十分严重的,可以认为跨语言是一种非常难处理的异构问题,因此跨语言的知识融合任务难度更大,在学术界往往作为一个独立的研究子领域出现,本书也会单用一节进行详细的介绍。如图3-1(d)所示,对同一个实体“华为P30”,国内和国外的电商平台描述差异非常大。

知识图谱de构建与应用(三):知识融合_第1张图片

图3-1 知识融合任务难点示例(以电商数据为例)

3.1.2 知识融合的基本步骤

知识融合的基本步骤通常包括本体对齐、实体对齐和信息融合等。

(1)本体对齐。指对多个知识库本体结构进行对齐,涉及本体结构中的类、属性项和属性值的对齐。本体对齐的目的是解决类、属性项和属性值的异构问题。

图3-2展示了对两个不同的商品知识库本体结构的对齐过程。在类级别中,以数码设备商业品类为例,不同知识库进行了迥异的层级划分(“手机”和“智能手机”/“功能手机”)和不同的命名方法(“数码设备”和“3C数码”);在属性级别中,每个类下面定义了种类繁多的属性项和属性值,而不同的知识库也可能有不同的命名方法(如“苹果”和“Apple”)或者定义不同的颗粒度(例如“iOS”和“iOS 11”/“iOS 10”)。

知识图谱de构建与应用(三):知识融合_第2张图片

图3-2 本体对齐示意图

(2)实体对齐。实体对齐是把多个知识库中描述同一个实体的记录找出来。由于实体的个数非常多,且同一个实体在不同知识库里异构问题严重,因此相比本体对齐,实体对齐是一个更为困难的任务。

图3-3展示了对两个不同的商品知识库实体对齐的过程,图中的四个来自两个不同知识库的实体,其中“iPhone 11”和“苹果手机iPhone11”是同一个实体,需要对齐。作为前置任务,本体对齐已经把两个实体放到了同一套本体结构中表达,也简化了后续实体对齐的跨知识库搜索和匹配的复杂度。例如,图3-3已经将两个知识库的手机这个类,以及相应的属性项进行了对齐,所以对于左边知识库里的iPhone 11实体,就不需要去右边整个知识库里进行搜索匹配,而可以根据条件“类=手机和品牌名称=Apple”缩小待匹配的实体范围。

(3)信息融合。不同知识库对同一个实体的描述可以有相当程度的互补,进行融合,能得到最全、最准的实体属性信息。信息融合就是将已对齐的实体对(Entity pair)或者实体聚簇(Entity cluster)的属性信息融合到一起的过程,主要需要解决的是多个数据源信息冲突的问题。图3-4展示了信息融合的过程,图中“操作系统”属性项两个知识库分别取值为“iOS”和“iOS 11”,信息融合过程就是选取正确值的过程。

接下来,本章将分别阐述本体对齐、实体对齐和信息融合三个部分的前沿进展和阿里巴巴知识图谱在之上的实践。

知识图谱de构建与应用(三):知识融合_第3张图片

图3-3 实体对齐示意图

知识图谱de构建与应用(三):知识融合_第4张图片

图3-4 信息融合示意图

3.2 本体对齐

按本体结构的三类不同组成要素,本体对齐又分为类对齐、属性项对齐和属性值对齐。由于属性值、属性项和类之间的隶属关系(属性项隶属于类,属性值隶属于属性项),所以类对齐、属性项对齐、属性值对齐在本体对齐系统里一般是按顺序依次进行的。

知识图谱本体结构中的类、属性项和属性值既可以看作孤立的字符串(绝大部分情况下是命名实体),也可以看作一个图结构,其中节点是类、属性项和属性值,边是它们之间的隶属关系。这两种不同的思路衍生出两种不同的本体对齐的算法:基于语言学特征的方法和基于结构特征的方法。

3.2.1 基于语言学特征的方法

基于语言学特征的方法把类、属性项和属性值当作普通的字符串或者命名实体来处理,在两个本体结构中找到等价、相似或者上下位关系的词对,这样本体对齐的过程就转换成了自然语言处理中的同义词和上下位词问题。目前,针对同义词和上下位词问题,比较常见的做法又可以分为基于字典或词典的方法、基于字面匹配的方法、基于字符串语义相似度的方法和基于上下文的方法。

1.基于字典或词典的方法

基于字典或词典的方法非常直接,直接将待对齐的类、属性项和属性值和词典进行匹配即可,因此词典本身的覆盖率决定了最终效果。

自然语言处理和语言学领域的学者通过长期的工作,沉淀了一系列的通用词林,其中佼佼者是WordNet、HowNet、哈工大大词林等,这些词林都是通过算法和人工的方式建立的,将词和词之间同义关系、上下位关系和其他关系组织成图的形式。

不过在实际应用中,由于很多本体对齐任务是在某个特定领域内的,所以WordNet等通用词林不能覆盖得很好。因此需要针对待匹配的类、属性项和属性值进行专门的同义词挖掘,以提高覆盖率。

2.基于字面匹配的方法

基于字面匹配的方法也很简单,如果将待匹配词看作一个整体字符串,可以使用各种编辑距离计算方法;此外,也可以将待匹配词看作一篇文章,这样可以使用向量空间模型,用词频-逆文档频率(TF-IDF)将待匹配词计算成一个向量,然后使用向量相似度决定能否对齐。

编辑距离的计算方法有很多种,由于都比较简单,所以这里只介绍应用比较多的Levenshtein距离。Levenshtein距离的基本思想是一个字符串可以最少通过几次操作(插入、删除、修改)变换成另一个字符串,如图3-5所示。

从图3-5中可以看出,Levenshtein距离的缺点是非常明显的,在大部分场景下的准确率和覆盖率都不高,使用其他编辑距离计算方法也没有根本性的改进。

知识图谱de构建与应用(三):知识融合_第5张图片

图3-5 Levenshtein距离示意图

相比编辑距离,向量空间模型的优点是通过计算词的词频-逆文档频率(TF-IDF)考虑每个词的重要性。但是由于大部分类、属性项和属性值的词比较短,只由一个词组成,所以这种方法也收效甚微。

3.基于字符串语义相似度的方法

随着自然语言处理的预训练语言模型的成熟,在大规模的自然语言文本语料中,预训练每个词的词向量作为下游任务的初始输入成为新的研究范式。

在本体对齐问题中也一样,既可以直接通过计算两个预训练词向量的向量相似度判断它们是否对齐,也可以将其看作一个有监督的分类问题,将待对齐词对的两个词向量作为初始输入,输入分类模型中。

预训练词向量的优点是通过大规模语料将词的字面特征、词的常见上下文等特征都表示在同一个空间中。

4.基于上下文的方法

词对之间的上下文常常透露了词对之间的关系,比如从“杭州,古称临安”一句话里就可以发现“杭州”和“临安”两个词之间的同义关系。我们可以通过模板从自然语言语料中发现同义词和上下位词,基于模板的方法的基本假设是,自然语言文本在提及同义词或者上下位词时,会有很多频繁出现的上下文,比如X简称YX是一种Y。利用这种模板,可以在海量的目标自然语言文本中挖掘很多候选的同义词对和上下位词对。如图3-6所示,“阿里巴巴网络技术有限公司”“阿里巴巴集团”“阿里巴巴”就互为同义词,图3-7中的“连衣裙”就是“雪纺连衣裙”和“蕾丝连衣裙”的上位词。

但是事先定义较多的模板是非常困难的,一种非常有效的扩充模板的算法是Bootstrapping算法,它对“基于模板挖掘词对”和“基于词对发现模板”两个过程进行多轮迭代,目的是扩大初始词对集合或者模板集合。Bootstrapping过程示意图如图3-8所示。

知识图谱de构建与应用(三):知识融合_第6张图片

图3-6 同义词对模板示意图

知识图谱de构建与应用(三):知识融合_第7张图片

图3-7 上下位词对模板意图

知识图谱de构建与应用(三):知识融合_第8张图片

图3-8 Bootstrapping过程示意图

初始的同义词模板集合是“A(B)”“A*简称B”,第一轮迭代在语料中用模板匹配出“清华大学”和“清华”,“北京大学”和“北大”,“阿里巴巴网络技术有限公司”“阿里巴巴集团”和“阿里巴巴”,“Tencent Messenger”和“腾讯TM”四组同义词。第二轮迭代通过在语料中搜索四组同义词的频繁上下文,新发现“A*全名为*B”“A*又称为*B”两个模板。第三轮迭代再用扩充后的模板集合在语料集合中挖掘更多的同义词,如此迭代以不断扩充模板集合和同义词集合。

需要注意的是,Bootstrapping算法的迭代过程很容易出现错误扩散,比如一个错误的模板会导致大量的错误词对,进而后续的迭代都会出现大量的错误。

除了基于模板的方法,也可以将词对之间的上下文作为特征输入分类模型里,进行有监督的学习。

3.2.2 基于结构特征的方法

作为一个树状结构,知识图谱的本体结构蕴含了丰富的结构信息。结构信息可以从两个方面帮助完成本体对齐任务。

(1)缩小本体对齐的搜索范围。例如,完成了两个类的对齐后,要进行属性项的对齐,只需要搜索已对齐的两个类下面的属性项,这样大大减小了搜索空间。如图3-9所示,类“图书”和“书籍”对齐后,就可以直接在两个类下面的属性项里搜索对齐的属性项。

(2)根据已对齐本体推理更多对齐本体。例如,两个属性项下面有大量相同的属性值,则很有可能意味着两个属性项是等价的。如图3-10所示,“颜色”和“颜色分类”两个等价属性项下面拥有大量的共有属性值,可以推断两者是相似的属性项。

知识图谱de构建与应用(三):知识融合_第9张图片

图3-9 基于结构特征的本体对齐(1)

知识图谱de构建与应用(三):知识融合_第10张图片

图3-10 基于结构特征的本体对齐(2)

图结构特征应用在本体对齐上还有很多尝试,Anchor-PROMPT算法基于这种假设:如果两对术语相似且在本体结构中有连接它们的路径,那么通常路径中的术语也很相似。具体算法步骤如下。

(1)先找出本体结构中可以对齐的术语对,并作为种子;

(2)生成一组长度小于L的路径,连接这些种子本体对;

(3)对于路径中位置相同的节点,增加术语对的相似度得分;

(4)遍历所有路径,累计所有相似度得分。

如图3-11所示,如果知道“3C电子”和“数码设备”,“Apple”和“苹果”已经是对齐术语,那么各自路径上的未对齐术语“手机”和“智能手机”、“品牌”和“所属品牌”的相似度得分都可以提升,这种朴素的算法在实际应用中的效果非常好。

知识图谱de构建与应用(三):知识融合_第11张图片

图3-11 Anchor-PROMPT算法示意图

3.2.3 商品知识图谱本体对齐算法

本节介绍阿里巴巴的商品知识图谱怎么进行本体对齐。

1.商品知识图谱本体结构的特点

由于阿里巴巴旗下有淘宝、天猫、盒马鲜生、考拉等众多零售平台,不同的零售平台会按照其经营特点设定自己的商品分类体系,因此在阿里巴巴的商品知识图谱中,需要融合各个零售平台的商品和知识,本体对齐是至关重要的工作。由于阿里巴巴集团的特点和商品领域的特点,阿里巴巴商品知识图谱的本体对齐任务会有一些特殊的设计,可以总结为以下四点。

(1)阿里巴巴零售平台多。有20个以上需要对齐的本体结构,超出大部分工业界任务,且随着业务发展和并购,会不断有新的本体结构。

(2)商品领域类的拆分维度多。例如同样是靴子,有的分类会按照适用性别划分为男靴和女靴,有的分类会按照靴筒长度划分为长靴和短靴,还有的分类会按照用途划分为雪地靴和雨靴等,因此要对齐不同的类体系,会碰到一对一、一对多和多对多三种不同的情况。

(3)属性项种类多。不同类拥有完全不同的属性项,描述手机品类的属性项(屏幕尺寸、操作系统等)和描述服饰品类的属性项(袖长、领型等)是完全不同的。归属于不同属性项的属性值,在进行对齐时也是很不一样的,比如隶属于“屏幕尺寸”的属性值都是数字型的(3.5英寸、5英寸),隶属于“品牌”的属性值都是字符串型的(Nike、苹果)。

(4)属性值的划分粒度不同,加大了对齐的技术难度。例如“颜色”这个非常普通的属性项,有的本体结构下的属性值是“红色”“绿色”这种较粗的颜色粒度,而有的本体结构下的属性值是“大红色”“玫红色”“桃红色”“浅绿色”等较细的颜色粒度,这也会导致属性值失配。

2.商品知识图谱的本体对齐算法

商品知识图谱的本体对齐系统在架构设计上采取了一些独特的设计,总结为以下四点。

(1)采用本体集成而非本体映射。为了统一阿里巴巴的十几套不同的零售本体,在设计本体对齐算法时采用了本体集成而非本体映射的方法。顾名思义,本体集成是将多套本体结构合并和取舍,进而生成一套新的本体系统,本体映射是建立多套本体结构相互之间的映射关系,如图3-12所示。

知识图谱de构建与应用(三):知识融合_第12张图片

图3-12 本体集成和本体映射

商品知识图谱将阿里巴巴内部几个比较大的零售本体结构进行了合并和去重,生成一份标准商品本体。当后续有新的本体结构出现时,只需要和集成之后的标准商品本体进行映射,因此当待对齐的本体结构较多且会有新的本体结构出现时,本体集成的方法要优于本体映射。

怎样将多个本体结构集成为一个新的本体呢?要解决的核心问题是选取哪一个本体结构的划分方式更为合理?在商品知识图谱中,采取的是“算法+专家运营”相结合的方式。

图3-13展示了巧克力类是怎样进行集成的,以阿里巴巴内部最完备的淘宝本体结构作为基础,将其他市场的本体结构里多出来的类嫁接到标准类目里,原则是尽量保证重复和交叉,重复类的校验是用3.2.1节和3.2.2节中基于语言学特征的方法和基于结构特征的方法来完成的。

知识图谱de构建与应用(三):知识融合_第13张图片

图3-13 商品知识图谱本体集成示例

(2)处理不同粒度的类对齐问题。仍然以巧克力类为例,大润发采用“包装方式”作为下一级类目的划分依据,分为“袋装巧克力”“盒装巧克力”“瓶装巧克力”等类。这种划分方式无法直接和标准商品本体对齐,需要结合“类+属性项+属性值”等信息一起进行类对齐,如“罐装巧克力”=“巧克力&&包装方式=罐装”,如图3-14所示。

知识图谱de构建与应用(三):知识融合_第14张图片

图3-14 商品知识图谱本体对齐示例

这里的商品知识图谱采用了数据挖掘中关联规则的方法,基本思想是从挂载在罐装巧克力、瓶装巧克力等类下面的商品里寻找该类下面商品的频繁属性值。关联规则挖掘的正向置信度和反向置信度计算公式如式(3-1)和式(3-2)所示。

知识图谱de构建与应用(三):知识融合_第15张图片

正向置信度代表了罐装巧克力类下的商品拥有“包装方式=罐装”属性值的比例,反向置信度代表了罐装巧克力同级别的其他类拥有“包装方式=罐装”属性值的比例。

通过关联规则挖掘频繁属性值,再通过人工审核得到准确的、不同粒度的类对齐结果。

(3)属性项分类,不同类别的属性项采取不同的属性值的对齐方式。通过分析商品知识图谱里的所有属性项,将属性项分为了四类,第一类是数字型,例如长度、适用年龄和CPU主频等,这类属性项下面的值一般由“数字+单位”组成;第二类是区间型,例如果径(10~15cm);第三类是精准字符型,比如操作系统、品牌等,这类属性项下面的值对编辑距离比较敏感,差一个字往往就差很多;第四类是模糊字符型,比如颜色、材质等,这类属性项下面的值的同义词和变异写法较多,适用于编辑距离,如表3-1所示。

表3-1 商品知识图谱属性项分类

知识图谱de构建与应用(三):知识融合_第16张图片

(4)基于层次结构的属性值体系。为了解决属性值划分粒度不同导致的属性值映射不成功问题,商品知识图谱设计了基于层次结构的属性值体系,如图3-15所示。

知识图谱de构建与应用(三):知识融合_第17张图片

图3-15 商品知识图谱本体对齐示例

对于“去屑”与“去屑止痒”“去屑修护”之间存在的上下位关系,通过存储两个层级保证能兼容不同级别的属性值。商品领域的上下位关系发现是一个比较困难的问题,除了基于语言学和基于结构的特征,很大程度上依赖专家的人工确认。

3.商品领域同义词发现算法

同义词发现是本体对齐的重要前置任务,3.2.1节介绍的基于字典或词典的本体对齐算法的效果完全依赖于同义词表的质量,因此本章会重点阐述商品知识图谱是如何有效挖掘领域同义词表的。

商品同义词的挖掘流程如图3-16所示。

知识图谱de构建与应用(三):知识融合_第18张图片

图3-16 商品同义词的挖掘流程

同义词挖掘流程分为粗召回和精准分类两部分,粗召回主要是从电商的商品标题、商品描述、用户Query、电商类文章中挖掘潜在的可能同义词对。挖掘的语料除了符合特定上下文的字符串Pattern、字面相似度、拼音相似度、词向量相似度较近的词,用户在电商网站上的搜索行为数据非常有用。在实际应用中,选取了用户搜索Query之后点击的商品标题数据,以及用户在同一个Session里的多个搜索Query数据。

以用户搜索Query之后点击的商品标题为例,用户搜索之后的点击表明了此商品标题和用户输入的Query有很强的相关性,所以这些商品的标题中必然存在很多和搜索Query同义或者相近的词,这样就可以获得很多候选同义词对。如图3-17所示,在淘宝中搜索Query=“连衣裙”,第一屏的结果中就有很多商品标题里包含了“裙子”“长裙”,这样就可以获得候选词对“连衣裙”—“裙子”、“连衣裙”—“长裙”。同理,在同一个搜索Session里,用户不断切换搜索词,但是往往表达了相同或者相似的搜索意图,因此也会存在大量的候选词对。

同义词的精准分类则是通过训练二分类器来完成的,分类器输入词对,输出是否为同义词。因为输入文本非常短,字面信息量较少,因此同义词的分类任务较难取得较高的准确率。但是,预训练模型的出现使得模型可以利用大量的预训练信息辅助分类任务,商品知识图谱的同义词分类任务采用了电商语料来训练BERT和XLNET两个预训练模型,如图3-18所示。

知识图谱de构建与应用(三):知识融合_第19张图片

图3-17 搜索Query-商品标题

知识图谱de构建与应用(三):知识融合_第20张图片

图3-18 同义词精准分类流程

下面对图3-18中的几点进行重点介绍。

● 在语料中设计了一个同义词替换逻辑,使得同义词在预训练语言模型里更为接近。

● 电商领域中有些词存在歧义,比如“苹果”既可以代表水果也可以代表3C电子的品牌,在不同语境下,“苹果”的同义词也不一样。因此,按照商品的类别对词进行了分组,当计算同义词对时,只对同一个分组里的词进行计算。

● 为了区分字面非常相似的反义词,比如“买手机”和“卖手机”,除了常用的负采样,还在训练数据中加入了反义词作为负例数据,提升模型对这类反义词的区分能力。

除了本体对齐,同义词表对知识图谱和自然语言处理的很多任务都能起到很好的增强作用,因此积累一个大的同义词表是构建领域知识图谱的重要一步。

4.商品知识图谱本体对齐架构图

最后给出完整的商品知识图谱本体对齐架构图,如图3-19所示。

知识图谱de构建与应用(三):知识融合_第21张图片

图3-19 商品知识图谱本体对齐架构图

3.3 实体对齐

相比于本体对齐,实体对齐需要关注更小粒度的对象,且实体的数量远超过本体的数量,需要对齐的对象差异非常小,因此实体对齐是知识融合里最困难的一步。

3.3.1 实体对齐的流程

前面讨论的实体对齐问题一般是指两两对齐(pair-wise),但是当知识图谱中的实体数量非常多时,如果直接计算所有实体的两两对齐,时间复杂度将会达到On2),难以计算。因此要解决大规模知识图谱的实体对齐,在流程上会有不一样的设计。如图3-20所示,主要分为分组和聚类两个步骤。

知识图谱de构建与应用(三):知识融合_第22张图片

图3-20 基于分组和聚类的实体对齐流程图

(1)分组(Blocking)。按照一个或者多个属性项对所有实体进行分组。图3-20所示为按照属性项p1进行分组。分组是为了减少后续对齐工作的计算量,一旦分组完成,就只在组内进行对齐计算,跨组的实体不进行聚类。因此对分组算法的准确度要求非常高,一旦出错,后续流程无法顺利进行。常用的分组算法都是使用实体上的属性组合作为划分依据的,当选择属性组合时,倾向于选择能将实体集合拆分成较多的组的组合,这样后续的对齐计算复杂度更小。比如阿里巴巴商品知识图谱中会选择“商品类别+品牌”作为分组属性项,POI知识图谱会选择“POI类别+行政区划”作为分组属性项。

(2)聚类(Clustering)。分组得到的每一个实体小组,如直接进行两两对齐,则效率仍旧不高,所以一般会倾向于采用聚类的方案,可以大大降低计算复杂度。

3.3.2 实体对齐的技术路线

实体对齐的技术路线分为基于规则的实体对齐和基于表示学习的实体对齐两个方向。基于规则的实体对齐通过实体上的一个或多个关键属性值是否满足指定的与或非条件,判断两个实体是否可以对齐;基于表示学习的实体对齐利用知识图谱的实体属性信息和结构信息,将不同知识图谱的实体表示在同一个欧式空间中,使得正例的对齐实体对在空间中相似度较近,负例的不对齐实体对相似度较远。

如图3-21所示,基于规则的实体对齐是通过执行类似if a1i=a1jand a2i=a2j,then i=j的规则,判断两个不同知识图谱的实体ij是否对齐。对于aiaj这种可以作为实体对齐主键的属性项,目前业界没有统一的名称,本书中统一称为关键属性。

知识图谱de构建与应用(三):知识融合_第23张图片

图3-21 实体对齐技术路线

基于表示学习的实体对齐利用了ij在各自图谱里的邻居集合neighbour(i)以及ij上的属性集合{ a1,a2,…,an},学习得到ij的向量表示:

然后对实体的向量表示进行二分类或者聚类,得到实体对齐结果。

1.基于规则的实体对齐

(1)基本概念。基于规则的实体对齐拥有可解释、准确率高和迁移性好等优势,在工业界应用十分广泛。以互联网公司的用户信息的对齐为例,很多互联网公司拥有多套账号体系,打通这些账号体系就是一个典型的实体对齐问题。在这种应用场景下,用户的身份证号或者手机号码作为跨平台用户账号实体对齐的关键属性是十分合适的,可以达到极高的准确率和召回率。

然而遗憾的是,在实际应用中,大部分类型的实体要找到关键属性是非常困难的。以商品数据为例,确定不同零售品类的对齐规则就是一个十分专业的命题,需要在零售业浸淫多年的专家才能够准确地定义,而且随着市场的发展,规则常常是动态变化的。以零售品类手机为例,最初手机的品牌商是以“品牌+型号”来定义一款手机的,例如诺基亚(品牌)3320(型号),对于手机这一品类,可以定义实体对齐规则:

if品牌i=品牌jand型号i=型号j,then i=j

随着智能手机的出现,品牌商发布新款手机时会提供基于颜色、存储容量的不同配置,不同配置价格差异很大,因此对实体对齐规则修改为:

if品牌i=品牌jand型号i=型号jand颜色i=颜色jand

存储容量i=存储容量j,then i=j

对于华为、苹果等全球发行的手机厂商,出于商业考量,同一款手机在不同国家或地区往往会设计不同的版本,例如iPhone的美版、港版、国行等不同版本,其中性能、定价都会有所差异,因此实体对齐规则进一步修改为:

If品牌in{华为,苹果}and品牌i=品牌jand型号i=型号jand颜色i=

颜色jand存储容量i=存储容量jand版本i=版本j,theni=j

else品牌i=品牌jand型号i=型号jand颜色i=颜色jand存储容量i=

存储容量j,then i=j

随着手机行业的不断发展,这种实体对齐规则也会持续不断地迭代下去。因此,要通过人工维护成千上万个零售品类的对齐规则,其投入产出比是极低的,在工业界实践中基本是不可行的。

(2)规则学习的应用。由于对于很多领域应用的人工维护十分困难,基于统计机器学习的规则学习就成了理所当然的选择。规则学习是从带标注的样本数据中通过机器学习算法挖掘符合数据分布的规则,通过在未标注样本上运行学习出来的规则,又可以得到更多的标注数据。在小样本情况下,“规则学习+深度学习”的反复迭代是在工业界实践中被广泛使用的方法。

规则学习算法最早可以追溯到传统数据挖掘中以Apriori算法为代表的关联规则挖掘算法。Apriori算法主要是从历史标注数据中高效搜索置信度和支持度高的规则,且易于实现,在传统公司的数据分析部门中应用甚广,主要用于结构化的数据。随着深度学习的发展,规则学习常常和深度学习可解释性研究领域结合在一起,通过对深度神经网络模型的解释,找出其中起决定性作用的特征,这样的特征就可以较容易地简化为特定任务的规则。深度学习各大任务中表现非常好的注意力(Attention)机制就经常被采用为可解释性方法。

具体到实体对齐任务,规则学习框架如图3-22所示。

知识图谱de构建与应用(三):知识融合_第24张图片

图3-22 实体对齐的规则学习框架

图中eIeL是两个不同知识图谱中的两个实体,规则学习的过程是希望学习到{ p1,p2,p3}三个实体上的属性项中,哪一个对实体对齐关系起到了决定性的作用。整个规则学习的过程可以分为以下四步。

1)设计深度学习模型。有监督的学习预测两个实体的对齐关系,在模型中加入注意力(Attention)机制。注意力机制体现属性项或属性值集合对实体对齐关系≌的权重,在模型训练过程中需要大量的带标注的对齐样本。

2)注意力计算。模型训练和预测,在预测对齐关系的同时,提取得到{ p1v1,p2v2,p3v3}和对齐关系的注意力分值。

3)注意力排序。对注意力分值排序,值越高,意味着属性项的重要性越高。

4)规则解释器。将注意力排序解释成对应的规则。

值得注意的是,实体对齐是对精准度要求很高的任务,因为直接使用算法学习到的规则在工业应用上会影响实体对齐准确率,所以需要通过一套完善的产品流程,把规则学习、专家干预和众包干预等结合起来,反复迭代以得到较好的实体对齐效果。

2.基于表示学习的实体对齐

实体对齐问题常常被看作二分类问题或者聚类问题,对实体进行更好的表示学习对二分类和聚类的性能都非常重要。与一般的文本、图像等对象的表示学习不同,知识图谱中的实体可以利用描述实体的属性信息,实体在知识图谱上的邻居信息也是非常重要的信号。下面将分别介绍如何利用两类信息进行实体对齐。

(1)基于实体属性信息的实体对齐。基于实体属性信息的实体对齐的基本假设是,如果两个实体的属性越相似,则两个实体越相似。基于这种假设,有两种神经网络的设计方法。

第一种方法是先计算两个实体属性的相似度,再聚合成实体的相似度,如图3-23所示。

知识图谱de构建与应用(三):知识融合_第25张图片

图3-23 基于属性信息的实体对齐网络图

● 属性表示层:对齐两个实体的属性项集合,得到图中的

这样的属性对。采用表示学习将属性表示成向量,比如枚举型属性可以采用独热表示方法,文本型属性可以采用Transformer、LSTM等特征提取器。

● 属性相似度计算层:对属性表示层学习到的向量进行相似度计算,不同的表示学习方法也要采用不同的相似度计算方法。

● 属性聚合层:通过连接(concat)、求平均(mean)等方式将不同属性的相似度计算结果聚合起来,输送到Softmax函数进行分类或聚类计算。

第二种方法是先使用实体上的各类属性对整个实体进行表示学习,再计算两个实体的相似度,如图3-24所示。

知识图谱de构建与应用(三):知识融合_第26张图片

图3-24 基于属性信息的实体对齐网络图

● 属性表示层:采用表示学习将属性表示成向量,比如枚举型属性可以采用独热表示方法,文本型属性可以采用Transformer、LSTM等特征提取器。

● 实体表示层:将实体上的各个属性的向量进行聚合、拼接或者加权计算,得到实体向量(Entity Embedding)。将实体向量输入分类或者聚类模型,进行实体对齐。

目前,深度学习领域的一些最新进展在基于属性的实体对齐方面有很多应用,大大提升了实体对齐任务的性能。

一是预训练技术的引入,以BERT为代表的预训练技术改变了自然语言处理领域的研究范式,大部分的任务都修改成了预训练(Pre-train)+模型微调(Fine-tune)的两段式训练,如图3-25所示。预训练在超大规模自然语料上的训练,对属性和实体的表示学习会有特别大的帮助,增加了很多的信息量。

二是多模态信息(Mul

你可能感兴趣的:(知识图谱(Knowledge,Graph),知识图谱)