论文笔记006-《Bootstrapping Entity Alignment with Knowledge Graph Embedding》
更多博客可以关注MyBlog,欢迎大家一起学习交流!
1. 简介
题目:《Bootstrapping Entity Alignment with Knowledge Graph Embedding》
来源:IJCAI-2018
链接:论文链接
代码:Code和Dataset
关键字:Entity Alignment、Bootstrapping、Embedding
2. 研究背景
近些年(基于2018年的),一些基于Embedding的实体对齐方法被提出,虽然取得了不错的效果,但是仍存在一些问题:
1) KG Embedding部分主要复用面向KG补全的Embedding模型,面向实体对齐的Embedding模型有待探索。
2)在训练数据比较少的情况下,当前方法精度很低。
为此我们提出了一个Bootstrapping的方法,将实体对齐转化为一个分类问题,期望学习的Embeddings具有最大的实体对齐似然。具体地,我们提出了一个面向实体对齐的KG Embedding模型(AlignE);然后动态标记新的实体对齐作为训练数据来增强匹配效果(BootEA)。
3.Problem Formulation
XXX 与 YYY 分别表示 KG1KG_1KG1 和 KG2KG_2KG2 的实体集合,实体对齐任务就是去寻找 A={(x,y)∈X×Y∣x∼Ry}A = \{(x,y) \in X\times Y|x \sim_R\,y\}A={(x,y)∈X×Y∣x∼Ry} 不同 KGKGKG 中的等价的实体对。作者将其任务定义为一个分类任务,即用 YYY 中的实体去给 XXX 中的实体进行贴标签。不过这里和一般的分类任务不一样,这里的实体标签只能一对一,即一个YYY实体标签只能给一个实体XXX进行标注,或者不标签,这里作者使用 Θ\ThetaΘ 表示不同的 KGKGKG 的嵌入表示,其中 y∈Yy\in Yy∈Y 作为标签,x∈Xx \in Xx∈X 作为待标注的实体,其对于某个实体 xxx 对应是标签 yyy 的概率如下公式:
π(y∣x;Θ)=σ(sim(v→(x),v→(y)))(1)\pi(y|x;\Theta) = \sigma(sim(\overset{\rightarrow}{v}(x),\overset{\rightarrow}{v}(y))) \tag {1} π(y∣x;Θ)=σ(sim(v→(x),v→(y)))(1)
其采用向量的第二范式距离,然后用激活函数转换表示标签的准确性概率的大小,然后作者采用选取全局整体的标签准确率之和最大的情况,其中的 Lx\mathbb{L}_xLx 表示实体 xxx 正确的标签,而指示函数 1[⋅]1_{[\cdot]}1[⋅]的取值为(0or1)(0\,or\,1)(0or1):
Θ^=argmaxΘ∑x∈Xlogπ(Lx∣x;Θ)=argmaxΘ∑x∈X∑y∈Y1[y=Lx]logπ(y∣x;Θ)(2)\begin{aligned} \hat\Theta &= \arg\max_{\Theta}\sum_{x\in X}\log \pi(\mathbb{L}_x |x;\Theta) \\ &=\arg\max_{\Theta}\sum_{x\in X}\sum_{y\in Y}1_{[y=\mathbb{L}_x]}\log \pi(y |x;\Theta) \end{aligned} \tag {2} Θ^=argΘmaxx∈X∑logπ(Lx∣x;Θ)=argΘmaxx∈X∑y∈Y∑1[y=Lx]logπ(y∣x;Θ)(2)
上式中考虑的重点在于对齐的实体对的相似概率,而对于其他没对齐的实体的信息没保留,所以这个方程式对于实体对齐不太好,后续的目标函数也是处于这样的考虑的。
4. Methodology
4.1 Alignment-Oriented KG Embedding
作者本文将两个 KGKGKG 的实体编码在统一空间中,这样就可以直接计算实体之间的相似性。作者采用Translation-based Model去捕获语义信息,即评价函数为:f(τ)=∣∣v→(h)+v→(r)−v→(t)∣∣22f(\tau) = ||\overset{\rightarrow}{v}(h)+\overset{\rightarrow}{v}(r)-\overset{\rightarrow}{v}(t)||^{2}_{2}f(τ)=∣∣v→(h)+v→(r)−v→(t)∣∣22 ,用来表示三元组τ=(h,r,t)\tau = (h,r,t)τ=(h,r,t) 的可能性,采用Margin-based Ranking Loss的损失函数虽然是保证正实例之间的距离能够小与负样本之间的距离,但是[Zhou etal., 2017]文中研究发现,这个函数不能保证正样例的距离足够小,即表示的之间的可能性不准确,所以作者提出了一种新的损失函数:
Oe=∑τ∈T+[f(τ)−γ1]++μ1∑τ′∈T−[γ2−f(τ′)]+(3)O_{e}=\sum_{\tau\in\mathbb{T}^{+}}[f(\tau)-\gamma_{1}]_{+}+\mu_{1}\sum_{\tau^{\prime}\in\mathbb{T}^{-}}[\gamma_{2}- f(\tau^{\prime})]_{+} \tag {3} Oe=τ∈T+∑[f(τ)−γ1]++μ1τ′∈T−∑[γ2−f(τ′)]+(3)
其中[⋅]+=max(⋅,0),γ1andγ2>0,μ1>0[\cdot]_{+}=\max(\cdot,0),\gamma_{1}\,and\,\gamma_{2} > 0,\mu_{1}>0[⋅]+=max(⋅,0),γ1andγ2>0,μ1>0,而对应的 T+和T−\mathbb{T}^{+}和 \,\mathbb{T}^{-}T+和T− 分别表示正负样本集合。该方程式有两个特性:1-该方程可以保证正确的实体对能维持更小的距离值,同时保证负样本能后具有更大的距离值,这里设定 γ2>γ1\gamma_{2}>\gamma_{1}γ2>γ1;同时能够保证f(τ′)−f(τ)≥γ2−γ1f(\tau^{\prime})-f(\tau)\ge\gamma_{2} -\gamma_{1}f(τ′)−f(τ)≥γ2−γ1,这个也保留了原先的Margin-based Ranking Loss的特性。
4.2 ϵ\epsilonϵ-Truncated Uniform Negative Sampling
一般生成负样例的方法就是随机的替换关系中的头结点或者尾结点,但是这样的替换可能与原先的关系组很容易区分,即差别太大了,对于嵌入式的学习来说可能影响不大,作者本文中希望能识别出很近关系组之间的区别,作者对实体 xxx 的替换选择如下:选择离其最近的 sss 个实体,其中s=⌈(1−ϵ)N⌉,ϵ∈[0,1)s= \left\lceil (1-\epsilon)N\right\rceil,\epsilon\in[0,1)s=⌈(1−ϵ)N⌉,ϵ∈[0,1) ,NNN 是 KGKGKG 中的实体的数目,⌈⋅⌉\left\lceil \cdot\right\rceil⌈⋅⌉是向上取值函数,取代的实体将和原先的实体非常相似,这样对训练更有帮助。
Parameter Swapping
作者通过扩增三元组的同时将两个图谱在同一空间进行嵌入学习,对于对齐的实体对(x,y)∈A′(x,y)\in A^{\prime}(x,y)∈A′ ,通过替换对应的实体来增加对齐的三元组:
T(x,y)s={(y,r,t)∣(x,r,t)∈T1+}∪{(h,r,y)∣(h,r,x)∈T1+}∪{(x,r,t)∣(y,r,t)∈T2+}∪{(h,r,x)∣(h,r,y)∈T2+}(4)\mathbb{T}^{s}_{(x,y)} = \{(y,r,t)|(x,r,t)\in\mathbb{T}^{+}_{1}\}\cup\{ (h,r,y)|(h,r,x)\in\mathbb{T}^{+}_{1}\}\cup \{(x,r,t)|(y,r,t)\in\mathbb{T}^{+}_{2}\} \cup\{(h,r,x)|(h,r,y)\in\mathbb{T}^{+}_{2}\} \tag {4} T(x,y)s={(y,r,t)∣(x,r,t)∈T1+}∪{(h,r,y)∣(h,r,x)∈T1+}∪{(x,r,t)∣(y,r,t)∈T2+}∪{(h,r,x)∣(h,r,y)∈T2+}(4)
然后作者根据产生的正样例再分别按照上诉方法取负样例。注意是这种替换可能增加了某个图中没有的关系三元组,丰富了关系组合。
4.2 Bootstrapping Alignment
嵌入表达学习由于缺少对齐的实体对,作者通过迭代不断的增加对齐的实体对,从而提升对齐的性能。作者将具有较高可信度的实体对加入到已知对齐的实体对中间去,作为训练数据。
Likely Alignment Labeling and Editing
传统的Bootstrapping方法每次都是选取最可信的标签去标签数据,但是本研究中标签的数据是受限的,就是一对一的关系,就是一个标签使用以后就不能标签其他实体了,作者由此提出了其下面优化的目标函数:
max∑x∈X′∑y∈Yx′π(y∣x;Θ(t)⋅ψ(t)(x,y))s.t.∑x′∈X′ψ(t)(x′,y)≤1,∑y′∈Yx′ψ(t)(x,y′)≤1,∀x,y(5)\max \sum_{x\in X^{\prime}}\sum_{y\in Y^{\prime}_{x}}\pi(y|x;\Theta^{(t)}\cdot\psi^{(t)}(x,y)) \\ s.t.\sum_{x^{\prime}\in X^{\prime}}\psi^{(t)}(x^{\prime},y)\le1,\sum_{y^{\prime}\in Y^{\prime}_{x}}\psi^{(t)}(x,y^{\prime})\le1,\forall x,y \tag {5} maxx∈X′∑y∈Yx′∑π(y∣x;Θ(t)⋅ψ(t)(x,y))s.t.x′∈X′∑ψ(t)(x′,y)≤1,y′∈Yx′∑ψ(t)(x,y′)≤1,∀x,y(5)
其中的 Θ(t)\Theta^{(t)}Θ(t) 表示第 ttt 次迭代时候的嵌入表达向量,Yx′=y∣y∈Y′andπ(y∣x;Θ(t))>γ3Y^{\prime}_{x} = {y|y\in Y^{\prime} and\,\pi(y|x;\Theta^{(t)})\gt\gamma_{3}}Yx′=y∣y∈Y′andπ(y∣x;Θ(t))>γ3 表示实体 xxx 的候选实体集,ψ(t)(⋅)\psi^{(t)}{(\cdot)}ψ(t)(⋅) 就是一个指示函数,如果实体 xxx 被 yyy 贴上标签,那么值就为1,否则就为0。上面两个不等式保证了一对一的关系,不会存在一个标签重复使用的情况。每次迭代后,作者将新加的实体对增加到训练数据中去,继续后续的训练。
随着时间的递增,训练效果应该越来越好,但是任然会产生误差,为了去缓解这种误差的影响,在该训练中,对于一个已经被贴新标签的实体,在后续的训练中,可以被取消标签或者替换新的标签,这样的方法在本次研究中心,既简单有有效,在判断标签是否有效的时候,是通过比较其距离的大小,如下式:
△(x,y,y′)(t)=π(y∣x;Θ(t))−π(y′∣x;Θ(t))(6)\triangle^{(t)}_{(x,y,y^{\prime})} = \pi(y|x;\Theta^{(t)})-\pi(y^{\prime}|x;\Theta^{(t)}) \tag {6} △(x,y,y′)(t)=π(y∣x;Θ(t))−π(y′∣x;Θ(t))(6)
Learning from Holistic Perspective
为了获取一个全局的已标签或未标签的情况,对其定义了以下的分布(7),如果被标记了,那么其对应的概率为1(只有y等于真正标签的时候),没有被标记的话就是一个均匀分布(和总体的未标记的数目有关),然后给定该概率分布后,得到新的对齐目标函数(求其最小值):
ϕx(y)={1[y=y^]=ifxislabeledasy^1∣Y′∣=ifxisunlabeled(7)\phi_{x}(y)=\left\{ \begin{aligned} 1_{[y=\hat{y}]} & = &if\,x\, is \, labeled\,as\,\hat{y} \\ \frac{1}{|Y^{\prime}|} & = &if\,x\, is \, unlabeled \end{aligned} \right. \tag {7} ϕx(y)=⎩⎪⎨⎪⎧1[y=y^]∣Y′∣1==ifxislabeledasy^ifxisunlabeled(7)
Oa=−∑x∈X∑y∈YϕX(y)logπ(y∣x;Θ)(8)O_{a}=-\sum_{x\in X}\sum_{y\in Y}\phi_{X}(y)\log\pi(y|x;\Theta) \tag {8} Oa=−x∈X∑y∈Y∑ϕX(y)logπ(y∣x;Θ)(8)
最后作者整体考虑,其最终的目标函数如下:
O=Qe+μ2⋅QA(9)O=Q_{e}+\mu_{2}\cdot Q_{A} \tag {9} O=Qe+μ2⋅QA(9)
4.3 Implementation Details
本部分主要是对参数的具体说明,详见论文。
5. 实验分析
本文作者采用了DBP15K和DWY100K两类数据集,其中后面一个数据集的详情如下:
其中对照的模型以及对其的实验结果如下图:
其结果可以看出其结果优于当其先提出的模型,而且在性能上面有较大的提升。
结果分析
作者为了说明其性能的优越性的原因,分别对以下4各方面进行对照实验:
- Effectiveness of ϵ\epsilonϵ-Truncated Uniform Negative Sampling
- Accuracy of Likely Alignment
- Sensitivity to Proportion of Prior Alignment
- F1-score w.r.t. Distribution of Relation Triple Numbers
作者通过其上面的实验,进一步说明其提出的相关策略的有效性,其具体的分析可以见原文,里面介绍很详细。
论文笔记006-《Bootstrapping Entity Alignment with Knowledge Graph Embedding》相关推荐
- 【实体对齐·BootEA】Bootstrapping Entity Alignment with Knowledge Graph Embedding
文章目录 0.总结 1.动机 2. 贡献+方法 3.应用场景 4.其他模型 5.数据集 6.效果 以下的是组内比较 BootEA: "Bootstrapping Entity Alignme ...
- 实体对齐 算法_[2017]Bootstrapping Entity Alignment with Knowledge Graph Embedding
模型:BootEA, AlignE AlignE和BootEA几乎一样,但是AlignE没有用bootstrapping Introduction 存在的挑战:1.尽管一个KG的嵌入模式在过去的几年进 ...
- 论文阅读 AutoSF: Searching Scoring Functions for Knowledge Graph Embedding
AutoSF: Searching Scoring Functions for Knowledge Graph Embedding AutoSF:知识图嵌入的搜索评分函数 发表期刊:2020 IEEE ...
- 【论文笔记】(VLDB 2020) A Benchmarking Study of Embedding-based Entity Alignment for Knowledge
A Benchmarking Study of Embedding-based Entity Alignment for Knowledge 论文原文 开发代码 摘要: 实体对齐旨在在不同的知识图谱 ...
- 【实体对齐·综述】A Benchmarking Study of Embedding-based Entity Alignment for Knowledge Graphs
文章目录 模板的简述 简述 1.Introduction 2. preliminatries 2.1 literature review 2.1.1 knowledge graph embedding ...
- SSP: Semantic Space Projection for Knowledge Graph Embedding with Text Descriptions 论文读书笔记
SSP: Semantic Space Projection for Knowledge Graph Embedding with Text Descriptions 论文读书笔记 1. Motiva ...
- 学习Knowledge Graph Embedding Based Question Answering代码笔记
前言 最近被导师安排学习一下[Knowledge Graph Embedding Based Question Answering] 这篇paper,这篇paper的重点在于运用了Knowledge ...
- 《knowledge graph embedding:a survey of approaches and applications》论文阅读
发表于TKDE 2017. knowledge graph embedding:a survey of approaches and applications abstract 1. introduc ...
- 知识图谱论文阅读(十三)【2020 arXiv】Attentive Knowledge Graph Embedding for Personalized Recommendation
题目: Attentive Knowledge Graph Embedding for Personalized Recommendation 论文链接: 代码链接: 知识图谱特征学习在推荐系统中的应 ...
最新文章
- ios技术篇-CoreData
- 【 C 】最容易误判的优先级问题
- 人生致命的8个经典问题
- apache php mysql是长连接吗_php关于mysql长连接问题
- 编程软件python t-Python 3.7 64位下载
- windows 如何创建硬链接
- mysql 5.7 双主配置_MySQL5.7.18 双主配置
- 4.openSession() 、 getCurrentSession()与session上下文
- 七.(一)oc通知-NSNotification(通知中心-NSNotificationCenter)
- 鲜活的数据 : 数据可视化指南
- python技巧——使用list comprehension生成素数(prime number)
- 高数:第三章(同济大学第七版)
- 2022 WTM 女性开发者大会邀你开启心旅程
- 怎么把分开的pdf放在一起_PDF多页合并为一页的方法是什么 怎么将PDF文件拆分成单页...
- 打造自己的域名转向
- 计算机专业未来规划作文英文,以“未来的职业”写一篇英语作文
- html下拉菜单图片,JS+CSS 制作的超级简单的下拉菜单附图
- POS机刷卡跨行交易的清算方式
- Android MVVM封装,MVVM: 这是一个android MVVM 框架,基于谷歌dataBinding技术实现
- GSM与PHS空中接口有什么相同?