实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

  • 关键词:Neighborhood Matching,GCN,Attention

  • 介绍

1、问题提出   

 实体对齐是将不同KG中具有相似含义但表现形式不同的实体匹配的一种技术。但由于KG通常是不完整的,而且不同的KG通常是异构的,因此实体对齐实现较为困难。目前比较主流有效的方法是基于嵌入的方法,基于嵌入的方法利用一组种子对齐对KG结构建模,自动学习如何将不同KG之间的等价实体映射到一个统一的向量空间中,通过测量两个实体嵌入之间的距离来实现实体对齐。

    问题1:但在这个方向的绝大多数研究都是建立在一个假设之上——实体和来自其他KG的对应实体应具有相似的邻域结构,只有这样,对应的等价实体才能生成相似的嵌入,但由于前面提到的KG的不完整性异构性,这一假设不能总适用于现实场景。如下图:

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

    左右两个图的中心实体“布鲁克林区”和“Brooklyn”是等价的,但它们的邻域大小和拓扑尺寸都是不同的,这会使得它们生成的嵌入也会有较大的差别。

    问题2:即便不考虑邻域大小不同的问题,我们还有一个问题需要考虑。由于大多数共同的邻居将是受欢迎的实体,它们将是许多其他实体的邻居。因此,要使这些实体保持一致仍颇具挑战性。为了详细说明这一点,让我们现在考虑下图 (b)。

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

    这里的两个中心实体(都表示城市利物浦)有相似大小的邻域和三个共同的邻居。然而,三个共同的邻域(分别是英国、英格兰和工党)却没有足够的区别。这是因为英格兰有很多城市实体在其邻近地区也有这三个实体,例如伯明翰实体。对于这样的实体对,除了共同的邻居之外,还必须考虑其他信息邻居——比如那些与中心实体紧密相关的邻居。由于现有的基于嵌入的方法无法选择正确的邻居,我们需要一个更好的方法。

2、论文的贡献

    (1)采用一种新的图采样策略来识别信息最丰富的邻域以实现实体对齐

    (2)利用基于注意的跨图匹配机制联合比较两个实体的判别子图,实现具有鲁棒性的实体对齐

  • 方法

    流程大体分为四步:

    (1)利用多层GCN建模KG拓扑信息,生成KG结构嵌入;

    (2)使用邻域采样选择信息更丰富的邻居;

    (3)跨图邻域匹配;

    (4)邻域聚集。

    示意图如下:

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

1、知识图谱嵌入表示

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

2、邻居采样

    关键依据:一个邻居和其中心实体出现在同一上下文中的次数越多,这个邻居对于该中心实体而言信息越丰富。

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

3、候选实体选择

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

4、交叉图邻居匹配

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

注意力图示化

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

5、邻居聚合

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

  • 实体对齐与训练

1、预训练:

        计算两个实体之间的距离:实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

         损失函数:实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

2、总体训练: 

        预训练阶段在实体对齐表现一收敛时就停止。在这个阶段,GCN给出的试题表示已经足够支持邻居采样和匹配模块了。

        因此,这时候要将损失函数替换成:

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

        注意,由于采样过程是不可微的,这会影响到前面邻居采样阶段Ws的训练,因此在训练Ws时,并不是直接采样,而是将所有邻居信息通过直观的加权求和进行聚合:实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment,目标函数是实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

        总的来说,在预训练之后,模型是端到端训练的。

    

  • 实验部分

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

      实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

DBP15K:抽取了DBpedia的数据,做了中英,日英,法英三个数据集,每个数据集有两个规模(15k100k匹配实体)使用谷歌翻译将所有非英语实体翻译成英语,再使用预训练的英语单词向量glove.840B.300d构建知识图谱的初始化节点特征。

glove.840B.300d:Common Crawl (840B tokens, 2.2M vocab, cased, 300d vectors, 2.03 GB download)

DWY100K:直接用预先训练好的词向量来初始化节点。

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

使用实体名称初始化节点特征的模型GMNNRDGCN显著优于其他基于结构的模型,说明实体名称在实体对齐中会提供重要信息

虽然RDGCN使用对偶关系图来建模复杂的关系信息,但它没有解决邻域异构的问题。GMNN收集所有的单跳邻居来为每个实体构建主题实体图,但由于并非所有的单跳邻居都有利于实体对齐,其策略可能会引入噪声。

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

实体对齐5.ACL 2019(NMN)Neighborhood Matching Network for Entity Alignment

-SDBP15KZH−EN上,所有模型都表现出更低的性能。因为该数据集的邻域质量可能较差,较大的采样规模会引入更多的噪声。另一方面,JA-ENFR-EN数据集中的邻居可能提供更多的信息。因此,NMN对这两个数据集的抽样大小不敏感。

 

实验复现

硬件环境:

CPU:Intel i7-8700K

软件环境:

Ubuntu 16.04

Python 3.5

Tensorflow 1.14.0

 

迭代次数

300

300

300

300

300

最大邻居数

25

20

50

50

50

实体嵌入维度

300

300

300

300

300

**函数

ReLU

ReLU

ReLU

ReLU

ReLU

每个实体的负例数

30

25

25

50

50

种子集比例

30%

30%

30%

30%

30%

候选实体个数

5

5

5

5

5

学习率

0.01

0.01

0.001

0.001

0.005

采样邻居个数

5

5

4

4

4

β

0.1

0.1

0.1

0.1

0.1

大致收敛代数

60~70

150

280

未收敛

100

[email protected]

71.02%

68.93%

69.92%

70.07%

71.54%

[email protected]

84.65%

84.24%

82.73%

82.91%

84.91%