EMNLP 2023 | 基于知识图谱嵌入的关系感知集成学习算法

09a58d49d0334747f2fc237bdb64ed0a.gif

©PaperWeekly 原创 · 作者 | 黄鉦皓

单位 | 清华大学

研究方向 | 图神经网络

本文介绍《基于知识图谱嵌入的关系感知集成学习算法》(Relation-aware Ensemble Learning for Knowledge Graph Embedding),该论文提出的 RelEns-DSC 方法针对图谱实体间的关系采用分割、搜索和重组策略,显著减小集成权重(即不同模型的贡献比例)的搜索空间。

与现有方法相比,在相同的计算成本下表现出更卓越的性能,并在多个任务上达到最优性能。该论文被 EMNLP 2023 录取,力克蚂蚁金服、斯坦福等研究团队,刷新大规模知识图谱榜单 OGB 记录。

fe59ef377b3f2737df2f15cdcb3cbd84.png

论文链接:

https://arxiv.org/abs/2310.08917

代码链接:

https://github.com/LARS-research/RelEns

OGB榜单:

ogbl-wikikg2:

https://ogb.stanford.edu/docs/leader_linkprop/#ogbl-wikikg2

ogbl-biokg:

https://ogb.stanford.edu/docs/leader_linkprop/#ogbl-biokg

a8279fbb0650c613450e0a080b9c1545.png

研究背景

知识图谱是一种用于表示和组织知识的图形数据结构,可以有效连接人类对于真实世界的认知与计算机对于物理世界的建模,其涵盖了从社交和评分网络到生物网络的多个领域。因此,随着机器学习技术的兴起,图学习已经在多种应用中得到广泛应用,包括利用社交图谱来理解人际关系,利用城市图谱进行人流轨迹分析,以及利用医药图谱进行药物互作预测。

如下左图所示,知识图谱用于表征医药网络中不同实体(药物、作用、疾病等)之间的关系,并通过这些关系来预测类似于(药物 A, ?, 疾病 D )的关系。

e545607f1e0d090d2533f6cf2e0da83b.png

▲ 图表1. 医药图谱(左)与城市图谱(右)示例

近来,深度学习技术已受到整个社会的广泛关注,其中 GNN(图神经网络)被证明在许多领域中非常有效,并成为图深度学习的主流。目前已有的模型如 GAT、GCN、GraphSage 等,为图学习提供了强大的工具和方法。在这一背景下,关于如何将知识图谱中的信息转化为向量表示(即知识图谱嵌入)并将其与深度学习技术相结合(如下图所示),成为了当前研究中的首要问题。

969b4c461fa4e02f88fa789e21ace310.png

▲ 图表2. 知识图谱嵌入

尽管如此,由于知识图谱中的关系多种多样且复杂,即使现有模型采用不同的评分函数来建模各种关系属性,单一模型仍然难以全面捕捉图谱中的有效信息。如下图所示,我们可以看到在知识图谱的各种拓扑结构下,并没有一种模型能够取得最佳性能。因此,这促使我们提出了一种基于知识图谱嵌入的关系感知集成学习算法——RelEns。

bd5b0caa8f75fbc4e4390a05f35b9177.png

▲ 图表3. 模型的拓扑推理能力

34e32143c00639f36dfe1ebe50442ceb.png

主要内容

集成学习是一种技术,通过组合和重新加权多个模型的预测,旨在提高机器学习任务的性能。先前的研究已经在知识图谱嵌入领域验证了集成学习的有效性 [1,2]。然而,现有的集成方法仅关注了模型之间的权重分配(我们将其称为 SimpleEns),而未考虑不同模型的关系特性。因此,我们的目标是设计一种能够搜索不同关系的特定集成权重的算法。

2.1 关系感知

知识图谱由(头实体、关系、尾实体)这类三元组组成,而知识图谱嵌入模型的学习目标是将正三元组的排名高于负三元组,以准确识别当前图谱中可能被忽略的正三元组 [3]。因此,给定一个排名函数 ,我们希望尽可能让模型在测试集 中给出最佳的预测分数 ,以将更多的正三元组排名 排得越高(即数字越小)。

为了更直观地理解,我们将倒数排名函数 定义为 1/p。为了更好感知图谱中得每种关系,对于每个知识图谱嵌入模型 以及图谱中的关系集 ,我们赋予每一类关系一个可学习的权重 。如此,只要遍历所有关系类型,我们就可以更“深入”地去了解每一个模型与其评估每种关系的最佳权重,我们称之为 RelEns-Basic,其中目标函数如下:

7cca45919e934a9ed6c17f43aaafb0ef.png

2.2 分割搜索与合并的搜索算法

与 SimpleEns 相比,RelEns-Basic 需要搜索多达 R 倍的参数。此外,对于不可微分的度量标准,如 MRR(平均倒数排名),通常需要使用零阶优化技术,例如随机搜索和贝叶斯优化 [4] 来解决。然而,这些算法通常需要在搜索空间中对候选项进行采样,受到维度诅咒的影响 [5],随着搜索维度的增加,复杂性可能会呈指数级增长。

因此,如何快速有效地搜索更好的结构是搜索算法需要关注的问题。为了降低成本,我们充分考虑了搜索空间的性质,提出了 RelEns-DSC。我们将 NR 参数搜索空间按照关系类型分成了 R 个独立的 N 参数优化搜索空间,并为每个子空间分别分配相应的权重 。这样,我们可以并行计算每种关系的权重,然后将它们合并,如下图所示。

901e5bc760aeec3f9c4bf0ec7c7796f3.png

▲ 图表4. RelEns-DSC算法架构图

2.3 实验结果

为了验证 RelEns 的可行性,我们分别在 WN18RR、FB15k-237 和 NELL-995 数据集上进行了测试。如图表 5 所示,在相同计算资源下,RelEns 在这三个数据集上表现出色,不仅在不同的度量指标下超越了基线模型,还超过了通常使用的集成方法 SimpleEns。

665db86ce53f8100492dd4e9827a0cde.png

▲ 图表5. WN18RR、FB15k-237与NELL-995数据集结果对比

相对于 RelEns,SimpleEns 对于模型的集成权重分配更加粗糙。这主要是因为 SimpleEns 仅考虑了模型层面的权重分配,从而在一定程度上忽略了特定关系的重要性,进而对模型性能产生了不利影响。相反,RelEns 关注每种关系的认知,避免了信息的丢失。从实验结果和权重分配情况(见下图)来看,基于关系感知的集成算法更为有效,更全面地捕捉了图谱中的有用信息。

9c8d0af5f4c5bf1fe43eaf34444d18dc.png

▲ 图表6. 不同关系中模型的集成权重

国际知名的图学习标准 OGB(Open Graph Benchmark)[6] 挑战赛由谷歌、脸书、微软、加州大学洛杉矶分校等多个机构共同发起、支持和参与。该挑战赛提供了一个公平、公开和通用的基准测试套件,被广泛认可为目前图学习领域的代表性基准数据集。

本算法在其中的百科知识图谱 ogbl-wikikg2 和生物医学知识图谱 ogbl-biokg 数据集中取得了第一名的成绩(详见下图),超越了奇虎 360、UCL、蚂蚁集团、Mila 等知名团队,充分证明了其在知识图谱领域表现出的卓越性能和潜力。

a9bd941c04fa8dcf41c751daa7552302.png

▲ 图表7. RelEns在OGB上的实验效果

e971b7602011f1427fc2369f53fba636.png

未来工作

本文证明了基于知识图谱嵌入的关系感知集成学习算法有效解决了知识图谱完成中的实体预测任务中的集成问题。在未来的工作中,我们会进一步讨论其他重要的图学习任务,包括实体或节点分类、关系预测和图分类。另外,将本算法扩展到更多元的应用场景,比如用于优化搜索引擎或应用于推荐系统等等,也是潜在研究方向。

outside_default.png

参考文献

outside_default.png

[1] Shaoxiong Ji, Shirui Pan, Erik Cambria, Pekka Marttinen, and S Yu Philip. 2021. A survey on knowledge graphs: Representation, acquisition, and applications. IEEE transactions on neural networks and learning systems, 33(2):494–514.

[2] Zhiqing Sun, Zhi-Hong Deng, Jian-Yun Nie, and Jian Tang. 2019. Rotate: Knowledge graph embedding by relational rotation in complex space. In ICLR.

[3] Quan Wang, Zhendong Mao, Bin Wang, and Li Guo.2017. Knowledge graph embedding: A survey of approaches and applications. TKDE, 29(12):2724– 2743.

[4] James Bergstra, Rémi Bardenet, Yoshua Bengio, and Balázs Kégl. 2011. Algorithms for hyper-parameter optimization. In NIPS, pages 2546–2554.

[5] Mario Köppen. 2000. The curse of dimensionality. In 5th Online World Conference on Soft Computing in Industrial Applications, volume 1, pages 4–8.

[6] Open Graph Bench:https://ogb.stanford.edu/

更多阅读

7ea29cf66a97364d6e9abffdeaa91150.png

3970780596d4169e2e32650a124aa43f.png

0cbb81b2e1e8e94f24183a4071111937.png

561522663834d5ddc576e9062d1546e7.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

d5dc04b12f8d760a1e6bd158cfc9bf02.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

a914d328844e75f58c3423eed2eec289.jpeg

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Springboot】基于注解式开发Springboot-Vue3整合Mybatis-plus实现分页查询(一)——后端实现思路

系列文章目录 基于注解式开发Springboot-Vue3整合Mybatis-plus实现分页查询(二)——前端el-pagination实现 文章目录 系列文章目录系统版本实现功能操作步骤1. 新建Mybatis的全局分页配置文件2. 编写OrderMapper :继承Mybatis-plus提供的BaseMapper3. 编写OrderSer…

Python---字典---dict

1、为什么需要字典 如果想要存储一个人的信息,姓名:Tom,年龄:20周岁,性别:男,如何快速存储。 person [Tom, 20, 男] 在日常生活中,姓名、年龄以及性别同属于一个人的基本特征。 但…

【哈夫曼树的构造】

文章目录 如何构造哈夫曼树哈夫曼树构造算法的实现 如何构造哈夫曼树 哈夫曼算法口诀: 1.构造森林全是根;2.选用两小造新树; 3.删除两小添新人;4.重复2,3剩单根; 例:有4个新结点a,b,c,d,权值为…

upload-labs关卡7(基于黑名单的空格绕过)通关思路

文章目录 前言一、回顾上一关知识点二、靶场第七关通关思路1、看源代码2、空格绕过3、检查文件是否成功上传 总结 前言 此文章只用于学习和反思巩固文件上传漏洞知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚未授权的网站做渗透测试…

【Python】二维码和条形码的识别

我主要的问题就在于无法识别图片 注意事项: 1、从文件中加载图像的时候注意图片尽量用英文来命名,因为中文无法识别到图片 2、使用绝对地址的时候要用两个双斜杠,因为用一个会被识别为Unicode 转义,但是并没有后续的合法 Unico…

matlab simulink PSO算法优化simulink的PID参数

1、内容简介 略 13-可以交流、咨询、答疑 PSO算法优化simulink的PID参数 2、内容说明 标准的PSO算法优化simulink的PID参数 PSO、粒子群算法、simulink参数优化 3、仿真分析 4、参考论文 略 链接:https://pan.baidu.com/s/1yQ1yDfk-_Qnq7tGpa23L7g 提取码&…

docker安装RocketMQ

1、RocketMQ基本概念 1.1 消息模型(Message Model) RocketMQ主要由Producer、Broker、Consumer三部分组成,其中Producer负责生产消息,Consumer负责消费消息,Broker负责存储消息。Broker在实际部署过程中对应一台服务…

node实战——koa实现文件下载和图片/pdf/视频预览(node后端储备知识)

文章目录 ⭐前言⭐koa-send库实现下载⭐mime-types库实现图片预览💖 渲染图片💖渲染404💖预览pdf💖预览视频 ⭐总结⭐结束 ⭐前言 大家好,我是yma16,本文分享关于node实战——koa实现文件下载和图片预览。…

单链表(6)

删除第一个val的值(考试重点) 思路:例如删除val值为3的数据,直接让数据2的p->next指向数据4就可以了。 所以删除必须依赖前驱。也就是要写删除函数,则先要完成返回key的前驱地址的函数 也就是先知道前驱地址&#…

kubenetes-容器运行时接口CRI

一、CRI 容器运行时(Container Runtime),运行于Kubernetes(K8s) 集群的每个节点中,负责容器的整个生命周期。其中Docker是目前应用最广的。随着容器云的发展,越来越多的容器运行时涌现。 为了解…

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路

文章目录 前言一、回顾第十一关知识点二、靶场第十二关通关思路1、判断注入点2、爆显位个数3、爆显位位置4、爆数据库名5、爆数据库表名6、爆数据库列名7、爆数据库数据 总结 前言 此文章只用于学习和反思巩固sql注入知识,禁止用于做非法攻击。注意靶场是可以练习的…

从0到0.01入门React | 003.精选 React 面试题

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

深度解析CompletableFuture:Java 异步世界的奇迹

目录 概述 介绍 上文我们可知:CompletableFuture 是 Java 8 引入用于支持异步编程和非阻塞操作的类。对于没有使用过CompletableFuture通过它这么长的名字就感觉到一头雾水,那么现在我们来一起解读一下它的名字。 Completable:可完成Futur…

工厂设计模式

1、简单工厂模式 package com.jmj.pattern.factory.simple_factory;public class SimpleCoffeeFactory {public Coffee createCoffee(String type) throws Exception {//声明Coffee类型的变量,根据不同类型创建不同的coffee子类对象Coffee coffee null;if ("a…

Netty入门指南之NIO Selector写操作

作者简介:☕️大家好,我是Aomsir,一个爱折腾的开发者! 个人主页:Aomsir_Spring5应用专栏,Netty应用专栏,RPC应用专栏-CSDN博客 当前专栏:Netty应用专栏_Aomsir的博客-CSDN博客 文章目录 参考文献前言操作演…

06-解决Spirng中的循环依赖问题

Bean的循环依赖问题 循环依赖: A对象中有B属性 , B对象中有A属性(丈夫类Husband中有Wife的引用, 妻子类Wife中有Husband的引用) toString()方法重写时直接输出wife/husband会出现递归导致的栈内存溢出错误 直接输出wife/husband会调用它们的toString()方法, 在toString()方法…

小黑子—springMVC:第二章

springMVC入门2.0 4、小黑子的springMVC拦截器4.1 Interceptor简介4.2 拦截器快速入门4.3 拦截器执行顺序4.4 拦截器执行原理 5、小黑子的springMVC全注解开发5.1 spring-mvc.xml中组件转化为注解形式5.1.1 消除spring-mvc.xml一二三 5.1.2 消除web.xml 6、小黑子的springMVC组…

新的开始吧

项目答辩终于结束了: 学习规划 下面先对自己的目前的情况来说: 学长学姐让我先把vue和boot学完,所以我打算先把vue3和boot学一下,但是每天还要花一点时间在六级的听力和阅读上面,还有就是算法; 下面进行…

数据结构----链式栈的操作

链式栈的定义其实和链表的定义是一样的,只不过在进行链式栈的操作时要遵循栈的规则----即“先进后出”。 1.链式栈的定义 typedef struct StackNode {SElemType data;struct StackNode *next; }StackNode,*LinkStack; 2.链式栈的初始化 Status InitStack(LinkSta…

Python---字典的增、删、改、查操作

字典的增操作 基本语法: 字典名称[key] value 注:如果key存在则修改这个key对应的值;如果key不存在则新增此键值对。 案例:定义一个空字典,然后添加name、age以及address这样的3个key # 1、定义一个空字典 person {…