论文浅尝 | 面向跨语言实体对齐的知识图谱与实体描述协同嵌入方法

640?wx_fmt=png

来源: IJCAI2018

链接: https://www.ijcai.org/proceedings/2018/0556.pdf


动机

近年来,随着多语言知识图谱嵌入(Multilingual KG embedding)的研究,实体的潜在语义表示以及跨语言知识推理等任务均取得一定成效,因此也推动了许多知识驱动的跨语言工作。然而,受限于各语言知识图谱之间较低的实体对齐(Entity alignment)程度,跨语言推理的准确性往往不够令人满意。

考虑到多语言知识图谱中具有对实体的文字性描述,文章提出一种基于嵌入(Embedding)的策略:通过利用图谱中实体的文字描述,对仅包含弱对齐(KG中的inter-language linksILLs)的多语图谱做半监督的跨语言知识推理。

为了有效利用图谱知识以及实体的文字描述,文章提出通过协同训练(Co-train)两个模块从而构建模型KDCoE:多语言知识嵌入模块;多语言实体描述嵌入模块。


贡献

文章的贡献有:

1)提出了一种半监督学习方法KDCoE,协同训练了多语知识图谱嵌入和多语实体描述嵌入用于跨语言知识对齐;

2)证明KDCoEZero-shot实体对齐以及跨语言知识图谱补全(Cross-lingual KG Completion)任务上的有效性;


方法

1.     多语言知识图谱嵌入Monolingual KG Embeddings, KGEM

由知识模型(Knowledge Model)和对齐模型(Alignment Model)两个部分构成,分别从不同角度学习结构化知识。


知识模型:用于保留各语言知识嵌入空间中的实体和关系

文章采用了传统的TransE方法构建知识模型,并认为这种方法有利于在跨语言任务重中保持实体表示的统一性,且不会受到不同关系上下文带来的影响。其对应的目标损失函数如下:

640?wx_fmt=png

其中,L表示某种语言,(LiLj)表示一组语言对,GL 表示语言 L 对应的知识图谱,640?wx_fmt=png 反映的是图谱中三元组 (h,r,t) 之间的相异度,640?wx_fmt=png是一个 positive margin[x]+ 则表示取 x 的正值部分,640?wx_fmt=png 表示一组伯努利负采样三元组,用于替换图谱三元组中的 h t.


对齐模型:用于在不同语言的嵌入空间中获取跨语言关联

为了将不同语言间的知识关联起来,文章参照MTransE中的线性转换策略,其目标函数如下:

640?wx_fmt=png

其中(e, e')是一组已知的对齐实体,当知识嵌入向量的维度为 k1 时,Mij 是一个 640?wx_fmt=png 的线性转换矩阵,用于将 Li 语言的实体向量转换为 Lj 语言。这里与 MTransE 方法不同的是,文章仅计算了跨语言实体嵌入而非三元组整体嵌入。


KGEM的目标函数:

640?wx_fmt=png

其中,640?wx_fmt=png是一个正超参数


2.     多语言实体描述嵌入 Multilingual Entity Description Embeddings, DEM

DEM过程包含两个部分:编码和跨语言嵌入

1) 编码:

文章使用 Attentive Gated Recurrent Unit encoder, AGRU 对多语言实体描述进行编码,可以理解为带有 self-attention GRU 循环网络编码器。

文章希望利用self-attention机制使得编码器能够凸显实体描述句子中的关键信息,AGRU中的self-attention可以定义为以下公式:

640?wx_fmt=png

其中,ut 是由 GRU st 产生的隐藏表示,attention 权值 at 则是由一个 softmax 函数计算得到,反映的是单词 xt 对于序列 X 的重要性,而后依据此权重与隐藏表示可以得到 self-attention 的输出 vt|X|(输入序列的长度)用于防止 vt 失去原有的规模。

在这个部分,作者也尝试了其他的编码框架,包括单层网络,CNNALSTM等等,但AGRU取得了最好的性能


2) 跨语言嵌入部分:

为了更好的反映出多语言实体描述的词级别语义信息,文章使用跨语言词嵌入方法用于衡量和找出不同语言间的相似词汇。大致流程可描述如下:

首先,使用跨语言平行语料Europarl V7以及Wikipedia中的单语语料,对cross-lingualBilbowa [Gouws et al., 2015] word embeddings进行预训练。

而后使用上述embeddings将实体描述文本转换为向量序列,再输入进编码器中。


3) DEM学习目标:

文章建立的编码器由两个堆叠的AGRU层构成,用于建模两种语言的实体描述。该编码器将实体描述序列作为输入,而后由第二层输出生成的embedding

而后,文章引入了一个affine层,将上述各种语言的embedding结果投影到一个通用空间中,其投影过程由以下公式描述:

640?wx_fmt=png

DEM 的目标是最大化各个实体描述 embedding 与对应的其他语言版本之间的 log 相似度,故可以将目标函数描述如下:


3.     迭代 Co-trainingKDCoE 模型

文章利用 KG 中存在的少量 ILLs 通过迭代的协同过程训练 KGEM DEM 两个模块,过程大致描述如下:

每次迭代中,各模块都进行一系列“训练-生成”的过程:

1) 首先利用已有的ILLs对模型进行训练;

2) 之后利用训练得到的模型从KG中预测得到以前未出现过的新ILLs

3) 而后将这些结果整合到已有ILLs中,作为下一轮迭代的训练数据;

4) 判断是否满足终止条件:本轮迭代中各模块不再生成新的ILLs


其算法细节描述如下图:

640?wx_fmt=png


实验

. 实验相关细节

实验数据说明:

文章实验数据来自DBPedia中抽取的子集WK3160k,由英法德三语构成,其中每种语言数据中包含了54k-65k规模的实体

具体统计信息如下表:

640?wx_fmt=png

文章分别在跨语言实体对齐,Zero-shot对齐以及跨语言知识图谱补全等三个任务上进行实验

其中,跨语言实体对齐选用的基线系统包括:LMCCAOTITransE以及MTransE的三种策略;

Zero-shot对齐的基线系统为:Single-layer 网络,CNNGRUAGRU 的两种策略;

知识图谱补全的基线系统为TransE

 

. 实验结果

      跨语言实体对齐:

如下图所示,文章设置了三组评价指标,分别为:accuracy Hit@1proportion of ranks no larger than 10 Hit@10mean reciprocal rank MRR

640?wx_fmt=png

从结果上看,KDCoE模型的性能远优于其他系统,且随着Co-train的迭代次数增加,系统的性能也都有较为明显的提升。

 

Zero-shot对齐:

Zero-shot采用的评价指标与跨语言实体对齐相同,下图反映了KDCoEZero-shot对齐任务中的实验结果:

640?wx_fmt=png

从实验结果上看,KDCoE 的效果依然是随着迭代次数的增加而上升,但从第一次迭代的结果可以发现,其优势的来源基础是 AGRU。这也反映出 AGRU 在编码上相对其他网络模型体现出了更优性能。

 

跨语言知识补全:

在跨语言知识补全任务中,文章采用proportion of ranks no larger than 10 Hit@10mean reciprocal rank MRR等两个评价指标

 

640?wx_fmt=png

根据 KDCoE-mono 的表现,可以推断,该模型成功继承了 TranE 保持结构化知识中实体和关系的稳定性。而 KDCoE-corss 则反映引入跨语言信息确实对知识补全的效果起到了明显提升。


总结

本文提出了一种基于 embedding 技术的跨语言知识对齐方法,通过引入 Co-train 机制,将 KG 中的关系上下文与实体描述信息有效的利用起来,以现有 KG 中的小规模 ILLs 为基础建立半监督机制,在跨语言实体对齐,知识补全上都起到了明显的效果。

 

论文笔记整理:谭亦鸣,东南大学博士,研究方向为知识图谱问答、自然语言处理。

 



OpenKG.CN


中文开放知识图谱(简称OpenKG.CN)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

640?wx_fmt=jpeg

点击阅读原文,进入 OpenKG 博客。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480415.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新阿里聚划算Java 5轮面试题,涵盖GC收集器、多线程锁等

一面 详细的介绍JVM的内存模型结构 JVM最常用的参数配置讲讲 GC垃圾收集算法、GC垃圾收集器有哪些,以及新生代老生代 分别用什么算法 多线程的几种加锁方式详细介绍 实现线程安全的方式?ThreadLocal原理?线程池了解吗说说看?自…

2004-2019十六年热点事件库HistoryHotEventBase项目

HistoryHotEventBase historyhotevent projrct ,which concentrate on the dayily hot event covers the time range from 2004 to 2019, 16 years in total,从2004年至2019年共16年的每日热点事件项目,目标包括构建起从2004年至今共16年的历时热点标题数…

OSI七层模型详解-开放系统互联参考模型详解

原文链接:https://blog.csdn.net/yaopeng_2005/article/details/7064869 OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 。 完成中继功能的节点通常称为中继系…

最新天猫Java3轮面试题目:虚拟机+并发锁+Sql防注入+Zookeeper

天猫一面 自我介绍、项目介绍 Spring拦截器、实现了哪些方法?底层原理 AOP如何配置,底层原理、2种动态代理,aop注解实现,xml定义切面 Bean的作用域,单例模式是否线程安全?恶汉模式是否线程安全&#xff…

NLP中的少样本困境问题探究

一只小狐狸带你解锁 炼丹术&NLP 秘籍作者:JayLou娄杰(NLP算法工程师,信息抽取方向)前言在医疗、金融、法律等领域,高质量的标注数据十分稀缺、昂贵,我们通常面临少样本低资源问题。本文从「文本增强」和…

军事武器知识图谱构建与自动问答项目QAonMilitaryKG

QAonMilitaryKG QAonMilitaryKG,QaSystem based on military knowledge graph that stores in mongodb which is different from the previous one, 基于mongodb存储的军事领域知识图谱问答项目,包括飞行器、太空装备等8大类,100余小类&#…

python--从入门到实践--chapter 9 类

类的定义格式: class Name(Father_class):def __init__(self, para, ...):self.para xdef __init__(self, para, ...):super().__init__(para, ...) #调用父类的构造函数class Car():def __init__(self,make,model,year): #构造函数self.make makeself.model mo…

连载 | 知识图谱发展报告 2018 -- 前言

OpenKG 将开始连载《知识图谱发展报告(2018)》,希望该连载能够让更多的人深入了解知识图谱。欢迎各位读者留言讨论。1. 知识图谱的研究目标与意义 知识图谱(Knowledge Graph)以结构化的形式描述客观世界中概念、实体及其关系,将互…

网址(url),域名,ip地址,dns,hosts之间的关系

网址(url),域名,ip地址,dns,hosts之间的关系 什么是ip? 我们知道,在Internet上有千百万台主机,为了区分这些主机,人们给每台主机都分配了一个专门的地址&…

事理图谱概念辨析及其与风险标签分类结合的应用探讨

以事件为描述核心,以揭示事件之间的演化逻辑关系的事理图谱自提出后,引起了工业界的极大兴趣,在积极探索事理图谱本质、事理图谱构建技术细节的同时,如何找到技术与应用场景之间的结合成为目前广泛讨论的问题。我们团队持续对以上…

一篇文章带你熟悉 TCP/IP 协议(网络协议篇二)

涤生_Woo2017年11月11日阅读 15544关注一篇文章带你熟悉 TCP/IP 协议(网络协议篇二)同样的,本文篇幅也比较长,先来一张思维导图,带大家过一遍。一图看完本文一、 计算机网络体系结构分层计算机网络体系结构分层计算机网…

PyTorch数据Pipeline标准化代码模板

前言PyTorch作为一款流行深度学习框架其热度大有超越TensorFlow的感觉。根据此前的统计,目前TensorFlow虽然仍然占据着工业界,但PyTorch在视觉和NLP领域的顶级会议上已呈一统之势。这篇文章笔者将和大家聚焦于PyTorch的自定义数据读取pipeline模板和相关…

2019 最全支付宝高级Java现场面试37题

支付宝现场三面面试题目,文末有福利:阿里经典面试88题目答案 01 支付宝一面 介绍一下自己。 项目参与的核心设计有哪些 ArrayList和LinkedList底层 HashMap及线程安全的ConcurrentHashMap,以及各自优劣势 Java如何实现线程安全 Synchronized和Lock…

腾讯互娱刘伟 | 知识图谱在运维中的应用

本文转载自公众号:InfoQ。随着业务监控建设不断完善,海量业务故障时产生成百上千条告警,如何智能定位故障根源、实时统计业务影响是现阶段运营面临的一个难题。Google 利用知识图谱优化了其搜索服务以来,知识图谱得到了迅速发展。…

中文人物关系图谱构建与应用项目(人物关系抽取,关系抽取评测)

ChinesePersonRelationGraph ChinesePersonRelationGraph, person relationship extraction based on nlp methods.中文人物关系知识图谱项目,内容包括中文人物关系图谱构建,基于知识库的数据回标,基于远程监督与bootstrapping方法的人物关系抽取,基于知识图谱的知识问答等应用…

2019 最新阿里中间件Java 4轮面试题!60万年薪起步~

Java中间件一面 1.技术一面考察范围: 重点问了Java线程锁:synchronized 和ReentrantLock相关的底层实现 线程池的底层实现以及常见的参数 数据结构基本都问了一遍:链表、队列等 Java内存模型:常问的JVM分代模型,以…

0011【冥想】87天冥想感悟汇总

0011【冥想】87天冥想感悟汇总 2018.1.6 Day1图片发自简书App1.7 Day2图片发自简书App❤️1.8冥想Day3❤️听了谷老师的分享,挺受益的。当我们的心越来越柔软,身体也会越来越柔软,所谓相由心生,冥想的时候,身体也会听从…

这个自然语言处理“工具”,玩得停不下来

今天推荐一个有趣的自然语言处理公众号「AINLP」,关注后玩得根本停不下来!AINLP的维护者是我爱自然语言处理(52nlp)博主,他之前在腾讯从事NLP相关的研发工作,目前在一家创业公司带技术团队。AINLP公众号的定…

观点 | 抛开炒作看知识图谱,为什么现在才爆发?

本文转载自公众号:AI前线。 作者 | George Anadiotis 译者 | 无明 导读:知识图谱究竟是什么,都有哪些围绕它们的炒作?如果你想要像 Airbnb、亚马逊…

算法--排序--寻找数组内第K大的元素

此题目,需要用到快速排序里的划分数组操作: 快排参考:https://blog.csdn.net/qq_21201267/article/details/81516569#t2 先选取一个合适的哨兵(三数取中法)将数组分成三部分【小于哨兵的】【哨兵】【大于等于哨兵的】…