【异构图笔记,篇章1】RGCN:Modeling Relational Data with Graph Convolutional Networks

news2025/7/29 4:08:43

【异构图笔记,篇章1】RGCN:Modeling Relational Data with Graph Convolutional Networks

  • 论文信息
  • 论文要点快览
  • 论文内容介绍
    • 背景任务
    • RGCN Conv的介绍
    • RGCN的trick
    • 论文实验结果
      • 实体分类
      • 链路预测
  • 评价及总结

本文仅供学习,未经同意请勿转载
后期会陆续公开关于图神经网络的相关笔记,感兴趣的可以关注一下喽。

论文信息

在这里插入图片描述

  • paper name:《Modeling Relational Data with Graph Convolutional Networks》
  • 中文简称:关系图卷积网络
  • 原文链接:https://arxiv.org/abs/1703.06103
  • 源码链接:https://link.zhihu.com/?target=https%3A//github.com/tkipf/relational-gcn
  • 来源:ESWC , University of Amsterdam
  • 年限:2018
  • 推荐原因:异构图经典必读模型,baseline
  • 笔记记录时间:2022年8月2日
  • 博客公开笔记时间:2023年2月24日

论文要点快览

  • 驱动数据任务:实体分类,链路预测
  • 核心要点:考虑不同关系对节点的影响,提出了一种异构图中多关系融合的方法,解决了GCN未考虑节点类型的局限性。
  • 做法简述:把每一种关系下的图看成同构图,将多关系图转化为多个同构图特征聚合的问题。也就是不同关系(也就是边)分别做特征融合,然后叠加处理,以此更新节点特征。
  • 应用场景:基于节点同构及边异构(注:这里异构边仅是类型,包括特征)的Graph learning 场景
  • 论文主要贡献点:前面提到的核心要点,此外RGCN还提出了参数共享及稀疏化约束的trick
  • 与GCN的对比:
    • GCN为同构节点同构边,RGCN为同构节点异构边。
    • GCN中边的权重矩阵来源于度矩阵D及邻接矩阵A求,RGCN中边的权重矩阵是可学习的/自学。
  • 局限性:
    • 最主要的局限:未考虑不同的关系之间可能存在相互作用,RGCN把每种关系看成一个同构图,独立学习,最后才做特征融合
    • 无法处理动态图:RGCN只能处理图中的静态部分,即在图结构不变的情况下进行训练和推理,无法处理动态图问题。
    • 只能处理节点含特征的情况
    • 当关系类型增多,模型复杂度较大

论文内容介绍

背景任务

在这里插入图片描述注:虽然上面RGCN论文面向的任务只有两个,一个是节点分类(实体分类),另外一个是边任务(链路预测)。但是它实际上也可以用来做图分类,图分类基本上模型都可以做(相当于在学习图之后,加一个ReadOut层就好)。

  • 节点分类任务:通过RGCN之后得到每个节点的embedding,接着使用softmax分类器对每个节点进行分类即可。

  • 边预测任务:论文中用的DisMult的方法:上面PPT中的f(s,r,o),其中 e s e_{s} es e o e_{o} eo是使用R-GCN学习到的实体嵌入, R r R_{r} Rr是关系r对应的对角矩阵(可学习参数)
    实际上可以简单理解为:首先通过RGCN得到节点的特征,其次通过节点特征间接生成边的特征(比如拼接,编码器映射等),用一个回归器来对生成的特征进行打分。以此判断该边是否存在。这是链路预测或者说边特征任务中常见的做法,比如TranSE, 计算三元组(s,r,o)得到评分score.【s源节点,r可能的连接,o目标节点】
    虽然论文中只介绍DisMult,但时作者开源代码实际上还用了其他的方式:
    在这里插入图片描述

  • 图分类任务:经过RGCN之后通过一个ReadOut层生成Graph embedding,利用softmax分类器就可以实现图分类。

RGCN Conv的介绍

在这里插入图片描述从上面公式来看,RGCN conv双层循环遍历,遍历每一种关系下,叠加每一个点的邻居点的特征进行融合,最后加上一层的中心节点特征,经过一个激活函数输出作为中心节点的输出特征,其中W为维度转换矩阵,也就是模型参数。

实际上就是将每一种边类型(关系)【这里还包括自环,把自环看成一种关系】下的图看作同构图(值得注意:正向、反向在论文中也是不同类型哦),在每种同构图下进行特征融合。也就是对于每一种关系的邻居引入不同的权重参数,分别对属于同一关系类型的邻居聚合之后,在进行一次总的聚合。

根据上面的介绍,我们可以知道,当关系大量增加时,所需要的权重参数就会越多,这样子RGCN的模型参数量那是顶顶的高啊!而且不同关系的节点数量时不一样的,对于不常见的关系而言,其权重参数对应学习的数据就会非常少,这样子数据少,参数多就可能会导致过拟合。

所以RGCN作者针对上面的情况提出了两种正则化的方法:

  • 权值共享(基函数分解):基函数分解通过共享转化矩阵参数来降低参数量。其可以看作是不同关系类型之间权重共享的一种方式。可以减轻稀有关系(rare relations)数据的过拟合问题,因为稀有关系和更频繁的关系之间共享参数更新。
  • 稀疏化约束(块分解):块分解可以看作是对每个关系类型的权值矩阵的稀疏约束,其核心在于潜在的特征可以被分解成一组变量,这些变量在组内的耦合比在组间的耦合更紧密。块分解通过将大参数量的权重矩阵W转化未小矩阵的拼接,保证W矩阵的稀疏性。
    在这里插入图片描述

RGCN的trick

在这里插入图片描述

论文实验结果

实体分类

实体分类的数据集有:
在这里插入图片描述
对应的效果:
在这里插入图片描述

链路预测

链路预测的数据集有:
在这里插入图片描述

对应的实验结果为:
在这里插入图片描述

评价及总结

综上所述,RGCN适用于处理多边类型(不包括多元边特征,可以包含,但你没有办法直接利用)的静态图数据,能够提供精确的预测结果,但是对于动态图和多关系图的处理存在一定的局限性。值得关注其正则化的训练技巧,是很多模型也会用到的trick.

这里汇总一下别人训练的提问

提问1:RGCN可以用于大图吗?
Ry答:当然可以。比如ICDM 2022 : 大规模电商图上的风险商品检测,【比赛链接,可以拿这个练手RGCN】官方给出的baseline就是RGCN。而且据本人测试,在上面任务上不做任何处理时,RGCN的效果甚至比RGAT、HAN等模型的效果好。而且pyg和dgl等框架可以很好对大图进行采样训练。当然RGCN在训练大图时还是需要考虑大图的实际情况的来选择的。

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

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

相关文章

顺序表的增删查改

数据结构 是数据存储的方式,对于不同的数据我们要采用不同的数据结构。就像交通运输,选用什么交通工具取决于你要运输的是人还是货物,以及它们的数量。 顺序存储结构 包括顺序表、链表、栈和队列等。 例如腾讯QQ中的好友列表,…

运动蓝牙耳机什么款式最好、公认最好用的运动耳机推荐

如今大家对于运动越来越热衷,健身意识的逐渐加强,也带动了对运动装备的需求,其中运动蓝牙耳机也成为运动达人不可缺少的一部分了,在运动的过程中增加点音乐元素进来也会增多点动力。所以市面上出现了各种款式不一的运动耳机&#…

渗透测试之局域网信息探测实验

渗透测试之局域网信息探测实验实验目的一、实验原理1.1 SoftPerfect Network Scanner 流量监控软件二、实验环境2.1 操作机器2.2 SoftPerfectNetscan Scanner三、实验步骤1. 解压并运行SoftPerfect Network Scanner软件2. 使用SoftPerfect Network Scanner进行局域网信息探测实…

并发编程学习篇从0-1合集

一、synchronized 一、原子性、有序性、可见性 1.1 原子性 数据库的事务:ACID A:原子性-事务是一个最小的执行的单位,一次事务的多次操作要么都成功,要么都失败。 并发编程的原子性:一个或多个指令在CPU执行过程中…

JVM 锁优化和逃逸分析详解

1 锁优化JVM 在加锁的过程中,会采用自旋、自适应、锁消除、锁粗化等优化手段来提升代码执行效率。1.1 自旋锁和自适应自旋现在大多的处理器都是多核处理器 ,如果在多核心处理器,有让两个或者以上的线程并行执行,我们可以让一个等待…

(免费分享)基于ssm的BBS社区论坛系统带论文

项目描述前台部分:1.用户注册登录模块用户登录后,可以进行发帖回帖功能,在线签到功能,完善个人信息,添加好友,收藏贴子,评论帖子,点赞功能,记录功能(比如记录今天发生的事情)等等…2.排行榜模块1.帖子讨论热度排行,分两种排行方式:(1) 根据用户今日发出的帖子被回复数量进行排名…

Linux USB 开发指南

文章目录Linux USB 开发指南1 前言1.1 文档简介1.2 目标读者1.3 适用范围2 模块介绍2.1 模块功能介绍2.2 相关术语介绍2.3 模块配置介绍2.3.1 Device Tree 配置说明2.3.2 board.dts 配置说明2.3.3 kernel menuconfig 配置说明2.4 源码结构介绍2.5 驱动框架介绍2.6 Gadget 配置2…

MySQL体系结构及数据库引擎

文章目录一、MYSQL的体系结构1、连接器2、查询缓存3、分析器(要做什么)4、优化器(怎么做)5、执行器6、数据库引擎1)mysql支持的引擎2)常用的mysql引擎比较3)索引组织表、堆组织表4)内…

大数据开发-Hive

1、hive简介 hive是基于Hadoop的一个数据仓库工具,用于分析数据的。可以将结构化数据文件映射为一张数据库表,并提供类SQL查询功能 注:hive-SQL or HQL or类SQL 和标准SQL还是有一点点区别的 本质是SQL转换为MapReduce程序 用途&#xff1…

Vulnhub靶场----6、DC-6

文章目录一、环境搭建二、渗透流程三、思路总结一、环境搭建 DC-6下载地址:https://download.vulnhub.com/dc/DC-6.zip kali:192.168.144.148 DC-6:192.168.144.154 靶机描述:选择带k01的密码后面会用到 访问192.168.144.154&…

秒杀测试案例 Java Redis Mysql

基于redis和MySQL乐观锁实现秒杀优惠券场景,一人一单。MySQL乐观锁改良控制不出现超卖和少卖问题,使用redisson分布式锁在用户维度加锁控制一人一单。 源码:https://github.com/hanhanhanxu/SeckillTest 文中图片看不清的地方可以鼠标右键-&…

01--微信小程序介绍

1、什么是微信小程序微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。微信小程序是一种不需要下载安装即可…

python--排序总结

1.快速排序 a.原理 快速排序的基本思想是在待排序的 n 个元素中任取一个元素(通常取第一个元素)作为基准,把该元素放人最终位置后,整个数据序列被基准分割成两个子序列,所有小于基准的元素放置在前子序列中&#xff0…

Wireshark抓包

Wireshark 1 抓包时间显示格式 2 界面显示列设置 3 protocol协议解析 4 过滤器 tcp.port:TCP端口tcp.dstport:TCP目的端口tcp.srcport:TCP源端口udp.port:UDP端口udp.dstport:UDP目的端口udp.srcport:UDP…

HIVE --- 窗口函数

目录 简介 概念 数据准备 聚合函数over partition by子句 order by子句 window子句 窗口函数中的序列函数 ntile rank、dense_rank、row_number LAG、LEAD first_value、last_value 简介 本文主要介绍hive中的窗口函数.hive中的窗口函数和sql中的窗口函数相类似,都…

批量操作文件功能-课后程序(JAVA基础案例教程-黑马程序员编著-第七章-课后作业)

【实验7-1】 批量操作文件功能 任务介绍 1.任务描述 在日常工作中,经常会遇到批量操作系统文件的事情,通常情况下,只能手动重复的完成批量文件的操作,这样很是费时费力。本案例要求编写一个文件管理器,…

(二十六)、项目打包H5+微信小程序+app【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】

1,打包H5发布上线到前端页面托管 1.1 上传所有DBschema和云函数 上传所有DBschema到云服务空间 上传所有云函数到云服务空间 1.2 Hbuilderx基础配置 点击manifest.json文件----web配置: 点击发行—H5 1.3 H5打包完成 使用vscode中的live serve…

【C语言进阶】动态内存管理详解与常见动态内存错误以及柔性数组使用与介绍

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C语言进阶 🎯长路漫漫浩浩,万事皆有期待 文章目录1.动态内存1.1 概述…

运营级手机直播平台源码 短视频直播带货APP源码

短视频直播带货APP源码 全开源原生直播APP源码 前端:原生APP 安卓端:Java 苹果端:OC 后台:PHP 数据库:Mysql 技术框架:Thinkphp5.1 系统特色功能包括:礼物系统;提现方式&#…

2月 公司来一00后卷王,我们这帮老油条真干不过.....

都说00后躺平了,但是有一说一,该卷的还是卷。这不,我们公司来了个00后,工作没两年,跳槽到我们公司起薪18K,都快接近我了。后来才知道人家是个卷王,从早干到晚就差搬张床到工位睡觉了。 2023年春…