论文浅尝 | 用于学习知识图谱嵌入的一种基于注意力机制的新型异构 GNN 框架HRAN...

笔记整理 | 李爽,天津大学


链接:http://hfbix45521e79b0484907sowxo0fubpp9b6xwx.fiiz.eds.tju.edu.cn/stamp/stamp.jsp?tp=&arnumber=9359364

动机

知识图谱 (KG) 嵌入旨在研究嵌入表示以保留 KG 的固有结构。图神经网络(GNN)作为一种有效的图表示技术,在学习图嵌入方面表现出了良好的性能。然而,KG具有异构性的内在属性,其中包含各种类型的实体和关系。如何同时处理复杂的图数据并聚合多种类型的语义信息是一个关键问题。本文提出了一种基于注意力机制的新型异构 GNN 框架HRAN,不仅聚合了来自不同语义方面的实体特征,而且还为它们分配了适当的权重。与几种最先进的方法相比,在三个真实世界上的 KG实验结果证明了其优越的性能。

亮点

HRAN的亮点主要包括:

1.通过关系路径融合每种特定语义的信息,可以分层聚合相邻特征,同时保留不同的特征信息,使GNN可以直接应用于异构KG,并进一步促进后续的链路预测任务;2.利用注意力机制来学习每个关系路径的重要性,并可以根据学习到的注意力值,有选择地聚合信息特征,抑制无用特征。

概念及模型

模型的总体框架如下图所示。

实体级聚合

由于KG的异构性,不同类型的实体可能出现在不同的特征空间中,不适合将每个实体的所有邻居特征直接聚合起来。因此,提出实体级聚合,首先对每个基于关系路径的实体特征进行聚合,聚合方程为:

在本文中,实体级别的聚合器函数  被称为 GCN。因此,上式可以写为:

关系级聚合

提出一种新的基于关系的注意力机制来获取不同关系路径的重要性,然后利用它来聚合不同类型的语义信息。为了学习每个关系路径的权重值,首先利用非线性变换(如单层MLP)来变换关系特定的特征  。然后通过注意力向量q衡量此特征的重要性,通过激活函数得到最终的 α 。过程如下所示:

在得到每个关系路径的重要性后,每个基于关系路径的聚合特征可以用学到的 α 作为系数进行加权。然后,将所有基于关系路径的聚合邻居特征进行拼接融合,得到每个实体最终的聚合邻居特征如下:

三元组预测

给定一个输入三元组  ,CNN的输入矩阵M可以通过将主体实体  和关系r的嵌入拼接得到:

然后用N个不同的滤波器对输入矩阵M进行卷积运算,生成特征映射V 如下:

在预测连接的对象实体  时,将输出的特征映射平面化并投影到一个包含主体实体  和关系r之间潜在语义连接的d维向量上,然后可以将ConvD的评分函数  定义为

根据以上三个公式,评分函数可改写为:

最后,定义三元组  的预测概率为

评测和优化

HRAN的损失函数定义为:

在训练过程中使用dropout技术对HRAN进行正则化。每层之后采用Batch normalization来稳定、正则化,提高收敛速度。利用label smoothing减少过拟合,提高泛化能力。采用Adam优化器对损失函数进行优化。

理论分析

实验

作者在WN18、FB15k-237和WN18RR三个基准数据集上进行实验,采用三种通用的评价指标来衡量预测精度,包括mean rank (MR)、mean reciprocal rank (MRR)和Hits@k (k = 1、3、10)。为了验证所提出的方法的性能,从连接预测领域采用了几种最先进的基线方法,包括基于平移距离的方法、基于语义匹配的方法和基于神经网络的方法。

实验一:连接预测的结果

预测结果如下表所示。

FB15k-237数据集训练过程中的Hits@10和MRR如下图所示。

上述结果表明,所提出的HRAN能够对实体和关系生成表达性嵌入,并用于连接预测任务。通过引入关系路径的注意力机制,可以提高方法的有效性。

KGs之间存在着复杂的关系,可以分为1对1、1对多、多对1和多对多。下表总结了MRR关于不同关系类别的结果。

综上所述,本文提出的方法能够有效地处理KGs中的大部分复杂关系,其主要原因是提出了基于卷积动态神经网络(ConvD)的新分数函数。ConvD为每个关系生成关系特定的过滤器,目的是提取具有不同关系的三元组中的关系特定的语义特征。因此,每个实体在不同的关系下会展示出语义特征的不同方面。这使所提出的方法更加灵活,能够处理这些复杂的关系。

实验二:注意力机制的有效性

为了验证注意力机制的能力,以FB15k-237数据集为例,在下图中报告了几种关系路径和相应的注意力值。可见,单一关系路径与其注意力值呈正相关。

在KGs中,节点的度是指每个实体在所有关系路径下的邻居实体。实体的级别越高,表示包含的邻居实体越多。计算Hits@3和Hits@10的均值结果如下表所示。

可以看到,Hits@3和Hits@10的均值随着度的范围增大而增大。这意味着HRAN和HRN可以从更多的邻域信息聚合中获益,从而生成的实体和关系的嵌入更具有表达性。综上所述,该注意力机制能够自适应地学习各关系路径的权重,并有选择地在某些重要关系路径中聚集更多的信息特征。因此,即使在较低的节点度下,生成的实体和关系的嵌入也可以更有表现力。

实验三:不同聚合器和评分函数的比较

本文采用了不同的评分函数,包括基于平移距离的方法(TransE)、基于语义匹配的方法(DistMult)和基于神经网络的方法(ConvE、conv-TransE和所提出的ConvD)。总体结果见下表。

可以看出,由不同聚合器函数组成的GNN体系结构对方法的性能有显著影响。通过融合图结构信息,所提出的方法可以生成更具表达性的嵌入,并用于预测缺失环节。

总结

本文提出了异构关系注意力网络(HRAN),以获取异构问题中复杂的结构和丰富的语义。HRAN通过关系路径分别聚合邻居特征。同时,通过注意力机制学习各关系路径的重要性,并利用注意力机制选择性地聚合信息特征。对于三元组预测,提出了ConvD,它生成关系特定的滤波器。然后,在卷积运算中,从每个实体中提取关系特定的语义特征。在连接预测任务上的实验结果证明了该方法的有效性。对于未来的工作,由于取样有用的错误训练样本是一个关键任务,可以利用最新的生成对抗网络来探索生成错误的三元组。

 


 

OpenKG

OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。

点击阅读原文,进入 OpenKG 网站。

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

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

相关文章

分布式队列编程优化篇

“分布式队列编程”是一个系列文,之前我们已经发布了《分布式队列编程模型、实战》,主要剖析了分布式队列编程模型的需求来源、定义、结构以及其变化多样性;根据作者在新美大实际工作经验,给出了队列式编程在分布式环境下的一些具…

LeetCode 443. 压缩字符串(双指针)

1. 题目 给定一组字符,使用原地算法将其压缩。 压缩后的长度必须始终小于或等于原数组长度。 数组的每个元素应该是长度为1 的字符(不是 int 整数类型)。 在完成原地修改输入数组后,返回数组的新长度。 进阶: 你能…

程序员在体制内的工作与生活是怎样的?

文 | 森林鱼(转载于公众号:森林鱼的时光)前言这篇文章原本是要在公众号上更新的,但考虑到修改问题,还是放在了这边。公众号那边会放一个最终相对完整的版本,日常更新与整理的话还是会在这边。主要是想尽量客…

开源开放 | 一个用于文言文实体识别与关系抽取等任务的开源数据集C-CLUE(CCKS2021)...

OpenKG地址:http://openkg.cn/dataset/c-clueGitHub地址:https://github.com/jizijing/C-CLUE网站地址:http://152.136.45.252:60002/pages/login.html开放许可协议:CC BY-SA 4.0 (署名相似共享)贡献者&…

谷歌:一篇论文,让研究者吃我三份安利

文 | 白鹡鸰想用Transformer做CV编 | 小轶想用Transformer做NLP前言计算机视觉、机器学习,这两个词会让你想到什么?相信绝大多数人第一反应都是CNN,而持续关注这些领域发展的人,则会进一步联想到近几年大火的Transformer&#xff…

LeetCode 290. 单词规律(哈希)

1. 题目 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。 示例1: 输入: pattern "abba&q…

开源开放 | 一个用于知识驱动的零样本学习研究的开源数据集KZSL(CCKS2021)

OpenKG地址:http://openkg.cn/dataset/k-zslGitHub地址:https://github.com/China-UK-ZSL/Resources_for_KZSL开放许可协议:CC BY-SA 4.0 (署名相似共享)贡献者:浙江大学(耿玉霞、陈卓、陈华钧)&#xff0c…

LeetCode 1022. 从根到叶的二进制数之和(递归)

1. 题目 给出一棵二叉树,其上每个结点的值都是 0 或 1 。每一条从根到叶的路径都代表一个从最高有效位开始的二进制数。例如,如果路径为 0 -> 1 -> 1 -> 0 -> 1,那么它表示二进制数 01101,也就是 13 。 对树上的每一…

别再Prompt了!谷歌提出tuning新方法,强力释放GPT-3潜力!

文 | Yimin_饭煲编 | 炼丹学徒如果评选NLP圈的2020年度十大关键词,那么GPT-3(Language Models are Few shot Learners) 一定榜上有名。GPT-3庞大的参数量,优异的性能至今仍让圈内圈外人都津津乐道,而OpenAI发布的OpenAI API&#…

大数据:任务调度,手把手教你

大数据:任务调度https://blog.csdn.net/qq_43713049/article/details/116985497 文章目录 任务调度一、任务流调度的需求二、任务流调度的工具三、Oozie的简介四、Oozie的2种使用方式五、WorkFlow 与 Fork 和 Join六、SubFlow:子工作流七、定时调度的实现…

人脸识别 | 你的论文离CVPR , 还有多远?

最近,一则人脸识别安全性问题的新闻上了热搜。(图片来自网络)虽然让不少人产生了“人在家中坐,债从天上来”的担忧,但也不由感叹人脸识别的发展与普及。人脸识别发展至今,已经在众多领域中占领重要地位。这…

LeetCode 455. 分发饼干(贪心)

1. 题目 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺…

开源开放 | 高质量体育赛事摘要数据集SGSum(CCKS2021)

OpenKG地址:http://openkg.cn/dataset/sgsumGitHub:https://github.com/krystalan/SGSum开放许可协议:CC BY-SA 4.0 (署名相似共享)贡献者:苏州大学(王佳安、张汀依、瞿剑峰、李直旭&#xff09…

消息队列设计精要

消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。 当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka&#x…

数学教育中的AI:NeurIPS’21 Workshop 欢迎投稿!

Workshop主页:https://mathai4ed.github.io数学推理是一种人类独特的智慧能力,也是人类在对科学和知识的探寻道路上不可缺少的基石。不过,数学学习通常是一项极具挑战性的过程,因为它依赖于指导者对学习内容的设计、教学和评估。从…

LeetCode 696. 计数二进制子串

1. 题目 给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。 重复出现的子串要计算它们出现的次数。 示例 1 : 输入: "00110011" 输出: 6 解释: 有6个子串具有相同数量…

论文浅尝 - ISWC2021 | 当知识图谱遇上零样本视觉问答

论文题目:Zero-shot Visual Question Answering using Knowledge Graph本文作者:陈卓(浙江大学)、陈矫彦(牛津大学)、耿玉霞(浙江大学)、Jeff Z. Pan(爱丁堡大学)、苑宗港(华为)、陈华钧(浙江大学)发表会议:ISWC 2021论文链接:htt…

Java 8系列之重新认识HashMap

HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别&…

LeetCode 1042. 不邻接植花(图的数据结构)

1. 题目 有 N 个花园,按从 1 到 N 标记。在每个花园中,你打算种下四种花之一。 paths[i] [x, y] 描述了花园 x 到花园 y 的双向路径。 另外,没有花园有 3 条以上的路径可以进入或者离开。 你需要为每个花园选择一种花,使得通…

我用Transformer修复代码bug

源:机器之心本地化 Bug 并修复程序是软件开发过程中的重要任务。在本篇论文中,来自微软 CloudAI 部门的研究者介绍了 DeepDebug,一种使用大型预训练模型 transformer 进行自动 debug 的方法。首先,研究者基于 20 万个库中的函数训…