图神经网络教程2——循环图神经网络-2

news2024/11/13 15:22:40

目录

计算下游输出

序列图数据的扩展

图长短期记忆网络

循环转换在RGNN应用于图分类时的作用

数据集

算法

结果和讨论

门控循环单元

优缺点


前文索引

本篇是GRNN的第二篇文章,点击此处可到达第一篇文章的位置。

计算下游输出

一旦我们以图中的每个顶点为中心有了有用的嵌入,目标是根据这些值推断出有意义的输出(即执行下游任务)。输出函数𝑔负责获取图G (V, E)的收敛嵌入并创建所述输出。在实践中,输出函数𝑔,很像转换函数𝑓,是由前馈神经网络实现的,尽管以下的方法已经被使用,用于其他返回单个值,包括平均操作、虚拟超级节点和注意力总和。

直观地说,反复计算嵌入并随后计算下游输入的组合过程可以被解释为一个循环神经网络计算块序列(或有限的计算图,如图所示)(在上一篇文章中)。在监督学习的环境中,可以计算出一个损失信号,它量化了预测输出与标注的真值之间的误差。然后,通过沿着“展开”的计算图进行误差反向传播,可以对f和g进行训练。

序列图数据的扩展

到目前为止,在讨论递归时,我们主要提到了将计算技术迭代地应用于图中的邻域,以产生依赖于整个图中传播的信息的嵌入。然而,递归技术也可以指序列数据上的计算过程,例如时间序列数据。在图论中,序列数据是指可以被解释为具有随时间变化的特征的图的实例,包括时空图。例如,图1 (b)说明了图如何表示手部单幅图像中的骨骼结构,然而,如果我们要为移动手部的连续视频的每一帧创建这样的图,我们将有一个数据结构,可以解释为单个图的序列,或具有顺序特征的单个图,这些数据可以用于对视频中的手部动作进行分类。

与传统的序列数据一样,在处理序列的每个状态时,我们不仅要考虑当前状态,还要考虑来自前一个状态的信息,如图6 (a)所示。这个挑战的一个简单解决方案可能是简单地将前一个状态的图嵌入与当前状态的特征连接起来(如图6 (b)),但这种方法不能捕获数据中的长期依赖关系。在本节中,我们概述了传统深度学习的现有解决方案——如长短期记忆网络(LSTM)和门控循环单元(GRU)(在图6中概述)——如何扩展到图领域。 

图长短期记忆网络

图LSTM (GLSTM)利用LSTM单元,这些单元适应于对基于图的数据进行操作。虽然上述循环模块(图6 (b))采用了简单的连接策略,但GLSTM确保可以在LSTM的“单元状态”中编码长期依赖关系(图6 (c))。这缓解了梯度消失问题,其中长期依赖信号在整个网络反向传播时呈指数级减少。

GLSTM单元通过以下四个关键的处理元素来实现这一点,这些元素学会根据前一个状态的嵌入和当前状态的输入来计算有用的量(如图6 (c)所示)。

  1. 遗忘门利用L_f,提取范围[0,1]中的值,表示前一个单元格的状态中的元素应该被“忘记”(0)或保留。
  2. 输入门利用Li,提取[0,1]范围内的值,表示将添加到此单元格状态的调制输入量。
  3. 输入调制门利用L_n,提取范围为[-1,1]的值,表示从该单元格的输入中学习到的信息。
  4. 输出门利用L_o,计算[0,1]范围内的值,指示单元格状态的哪些部分应该作为该单元格的隐藏状态输出。

注:关于提取范围的问题,主要是由使用的激活函数决定的,使用sigmoid和ReLU则值在零和一之间,使用tanh则值在正负一之间。 

为了使用GLSTM,我们需要定义图6(e)中的所有算子。由于图G(V, E)可以被看作是大小可变的顶点和边的集合,我们可以将图的连接定义为分别对顶点特征和边特征进行的单独连接,其中使用了一些空填充以确保生成的张量具有固定大小。可以通过定义输入图的最大顶点数来实现这一点。如果GLSTM单元的输入信号具有固定大小,那么其他算子都可以被解释为传统的张量运算,并且在反向传播时整个过程是可微的。 

循环转换在RGNN应用于图分类时的作用

在这个独立的示例中,我们研究社交网络,它代表了丰富的图数据来源。由于社交网络应用程序的流行,为了分析、营销和影响的目的,准确的用户和社区分类变得极为重要。在这个示例中,我们研究了如何在图域中应用循环的转换函数来辅助进行图分类的预测。

数据集

我们将使用 GitHub Stargazer 的数据集。GitHub 是一个带有社交网络元素的代码共享平台。每个图形都由一组用户(顶点)及其相互关注关系(无向边)定义。每个图形被分类为一个网页开发小组或一个机器学习开发小组。没有顶点或边的特征——所有的预测完全基于图形的结构。

 

算法

我们将实验过渡函数的有限应用,而不是使用一个真正的RGNN,该RGNN将过渡函数应用于隐藏状态,直到达到某些收敛标准。过渡函数(transition)是一个简单的消息传递聚合器,它应用一组学习到的权重来创建大小为16的隐藏向量表示。在将隐藏表示提供给输出函数进行图分类之前,我们将看到应用该转换函数1、2、4和8次如何影响预测任务。在16个epoch的8096个图上进行训练,并在每个架构的2048个图上进行测试。

结果和讨论

正如预期的那样,连续的过渡函数导致计算出更有判别力的特征,从而导致图的最终表示更有判别力(类似于CNN中更多的卷积层)。

事实上,我们可以看到最终的隐藏表示变得更加线性可分(请参见图5中的TSNE可视化),因此,当将它们提供给输出函数(线性分类器)时,预测的分类通常是正确的。这是一项困难的任务,因为没有顶点或边的特征。对于相同的数据集和任务,最先进的方法实现了以下100个随机训练/测试分割的平均AUC平均值:GL2Vec [10] - 0.551, Graph2Vec [62] - 0.585, SF [16] - 0.558,

图5:x1, x2, x4, x8隐藏层网络的最终隐藏图表示的TSNE渲染。请注意,随着过渡函数的更多应用(相当于NN中的更多层),输入图的最终隐藏表示变得更线性可分到它们的类别(这就是为什么它们能够只用线性分类器进行更好的分类)。在这里,我们的转换函数𝑓是一个只有一层的“前馈神经网络”,因此𝑓的更高级的神经网络(或其他)实现可能会产生更高性能的rgnn。随着更多轮的转换函数被应用到隐藏状态,性能-和所需的计算-增加了。确保迁移函数应用程序数量一致,是开发简化GNN架构和减少迁移阶段所需计算量的关键。我们将在第4.2节中探索如何通过CGNNs实现这种改进的概念。 

门控循环单元

通过消除在每个单元中计算单元状态的需要,GRU为glstm提供了计算成本更低的替代方案。因此,gru有三个可学习的权重矩阵。

  1. 重置门L_r确定从当前状态计算要添加到隐藏状态的新信息时,从“忘记”或“保留”中保留多少信息。
  2. 更新门L_u确定从前一个隐藏状态中“忘记”或“保留”哪些信息。
  3. 候选门L_n确定来自重置输入的哪些信息将有助于下一个隐藏状态。

当重复模式不频繁时,GRU非常适合序列数据,而LSTM单元在需要捕获更频繁的模式信息的情况下表现良好。与GRU相比,LSTM也有过拟合的倾向,因此在样本量较低时,gru的表现优于LSTM单元。

优缺点

在本节中,我们解释了允许RGNN对图输入数据产生有用预测的前向传播。在前向传递期间,过渡函数𝑓递归地应用于输入图以为每个邻域创建高级特征。𝑓的重复应用确保在迭代𝑘时,嵌入h𝑘𝑖包含顶点𝑘远离v𝑖的边的信息。这些高级特性可以提供给输出函数来解决下游任务。在向后传递期间,神经网络𝑓和𝑔的参数根据通过在向前传递中定义的计算图反向传播的损失进行更新。循环处理单元也可以指处理基于图的顺序数据的方法,包括对LSTM和GRU的基于图的扩展。实际上,方程1中提供的计算嵌入的公式仅代表一种计算嵌入的方法。这种方法将在第4节中进行背景介绍,其中将介绍关于计算有用嵌入的更广泛的视角。虽然RGNN提供了一种简单的方法来处理通用图,但它们有许多缺点。也就是说,共享的过渡函数𝑓意味着在连续的迭代中使用相同的权重来提取特征,这对于深度学习场景来说并不理想,在这种场景中,低级特征(在网络的早期)之间的关系与高级特征(在网络的后期)之间的关系是不同的。此外,由于RGNN迭代直到收敛,它们具有可变长度的编码网络,这可能增加实现的复杂性。在下一节中,我们将讨论如何通过开发图域中卷积的形式化定义来缓解这些问题。

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

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

相关文章

【PyTorch】深度学习PyTorch加载数据

系列文章目录 【PyTorch】深度学习PyTorch环境配置及安装【详细清晰】 文章目录 系列文章目录前言一、Dataset与DataloaderDatasetDataloader 二、使用步骤Dataset类的使用2.读入数据 前言 pytorch的数据加载中关于如何操作数据主要涉及Dataset和DataLoader两个类&#xff0c…

桶射巡飞无人机技术详解

无人机(Launcher-Deployed Loitering Munition, LDLM)作为一种新型无人机系统,融合了远程发射、长时续航、精确打击与多任务执行能力,近年来在军事侦察、目标监视、精确打击以及民用领域如环境监测、应急救援等方面展现出巨大潜力…

Elasticsearch + Search UI 构建一个文件搜索引擎

目录 Elasticsearch使用优势App Search Search UI配置engine集中管理配置和提供实用工具函数配置和初始化一个基于Elasticsearch的搜索界面应用程序Search UI 基础用法 好书推荐 Elasticsearch 使用优势 使用ElasticSearch的主要好处在于其强大的全文搜索和实时分析能力。Elas…

JVM G1垃圾回收器简介与常用配置

简介 G1 is a generational, incremental, parallel, mostly concurrent, stop-the-world, and evacuating garbage collector which monitors pause-time goals in each of the stop-the-world pauses. 在内存空间划分上,G1将堆分为等大的一块区域(regi…

手摸手系列之Linux下根据自己的jdk包构建docker镜像

项目在本地导出PDF文件正常,部署到Linux服务器docker容器中导出就报错,百撕不得姐,经查,docker依赖的openjdk版本是8u112版本,而我本地是8u421版本,那就升级jdk的小版本试试。 在docker的中央仓库[点我直达…

记录jenkins的一个错误

因为workspace 的权限多了一个s 导致构建镜像出现了失败 [rootsimetra-ecs-01 .jenkins]# ls -la | grep work -rw-r----- 1 root root 46 Aug 17 11:57 org.jenkinsci.plugins.workflow.flow.FlowExecutionList.xml drwxr-x--- 6 root root 4096 Aug 12 10:06 works…

【微信小程序】自定义组件 - 组件的生命周期

1. 组件全部的生命周期函数 2. 组件主要的生命周期函数 3. lifetimes 节点

OceanMind海睿思入选《2024中国企业数智化转型升级服务全景图/产业图谱》

近日,国内知名数据智能产业创新服务媒体数据猿携手上海大数据联盟发布了《2024中国企业数智化转型升级服务全景图/产业图谱1.0版》。中新赛克海睿思从数千家企业中脱颖而出,成功入选「底层技术服务 - 大数据」细分领域。 在历经数月的时间里,…

AI 代理参考架构

LLM Agent部署框架 围绕 ChatGPT 的讨论,现在已经演变为AI 代理。 图:AI代理平台参考架构 比尔盖茨最近设想(CNBC 采访:链接)未来我们将拥有一个能够处理和响应自然语言并完成许多不同任务的AI 代理。盖茨以计划旅行…

SD NAND的SD模式与SPI模式的初始化

最近很多客户朋友在询问我们CS创世 SD NAND能不能使用SPI接口,两者使用起来有何区别,下面为大家详细解答。 SD MODE: CS创世 SD NAND支持SD模式和SPI模式,SD NAND默认为SD模式,上电后,其初始化过程如下: …

陪跑案例 | 德国营养师吴迪:从胖妹逆袭塑形导师!公开首场发售秘籍

有目标,有心力的老师,一旦找对方法和团队,能够化解99%的问题。 今天,创客匠人【陪跑案例故事】专栏推出第四期内容,为大家介绍【梦想身型健康学院】平台创始人吴迪老师的陪跑故事。 吴迪老师是梦想身型训练营创始人、德…

Es-在java中使用

match_all match trem 范围查询 地理位置查询 算分函数 多条件bool查询 分页查询 高亮

mixly教程-ESP32接入文言一心

一、获取access_token 步骤一. 创建千帆应用 (1)登录百度智能云千帆控制台。 百度智能云-登录 (2)创建千帆应用 注意切换到旧版 (3)创建应用后,获取AppID、API Key、Secret Key。 步骤二. 服…

Leetcode 162.153.33 二分法 C++实现

Leetcode 162. 寻找峰值 问题:峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums ,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。你可以假设 nums[-1] num…

SpringBoot医疗废物管理系统 项目编号:200082(案例分析)

摘 要 随着医疗废物管理的重要性日益凸显,如何高效管理和处理医疗废物成为医疗机构面临的挑战。该系统涵盖存储间主管、运输员用户、处理地主管和管理员四个角色,旨在实现医废信息管理、出入库记录、运输信息跟踪、处理地信息管理等功能。通过技术手段…

警惕!“On Hold”期刊大变天!又3本被踢出WOS数据库,8月SCI/SSCI期刊目录更新!

【SciencePub学术】本期热点 WOS目录更新 又到了一月一度的科睿唯安官网更新Web of Science核心期刊目录的时候,小编今天带大家一起来看看最新的SCI/SSCI期刊目录有哪些变化吧。 来源:科睿唯安官网 继上次SCI期刊目录和SSCI期刊目录更新之后&#xff0c…

设计模式(单例模式、工厂模式、建造者模式、代理模式)

设计模式是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案(设计思想、设计经验)。 一、六大原则 1、单一职责原则&#…

[嵌入式 C 语言] 知识库

一、数据类型 1.1 基本数据类型 自定义类型基础类型占用字节数取值范围描述mls8char1-128 to 1278 位有符号整数mlu8unsigned char10 to 2558 位无符号整数mlvu8volatile unsigned char10 to 2558 位无符号整数,具有 volatile 属性mls16short2-32768 to 3276716 位…

TreeUtils 树工具类

数据展示: 如图:部门树数据 ,树形的基础数据 id 、 parentId 、label 便可形成 嵌套对象字段如下:{id: 103, parentId: 101, label: "研发部门", weight: 1} 一、工具类 继承了 hutoo 的工具类 TreeUtil &#xff08…

springboot+Quartz通过数据库控制定时任务执行与时间

前言 在我们的springboot项目中,有很多种实现定时任务的方式 有用最简单的 Scheduled 实现定时任务,即: import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component;Component EnableScheduling p…