首页 > 其他分享 >MPNN论文阅读笔记

MPNN论文阅读笔记

时间:2024-02-07 11:22:25浏览次数:21  
标签:MPNN 函数 特征 复杂度 论文 笔记 readout 节点

arXiv:1704.01212v2 [cs.LG] 12 Jun 2017
MPNN 消息传递神经网络,专为图数据设计

其前向传播可划分为两个阶段:消息传递与读出

消息传播阶段如下:

Mt是t时刻的消息函数,Ut为t时刻的节点更新函数,evw是边vw的特征,htv是顶点v在t时刻的hidden feature,h0v则为最初的节点特征,经过消息的多次传递为节点学习到了特征的隐藏表示,同时结合了周围节点的特征信息与相关边的特征。

读出阶段如下:

R为一个节点特征的读出函数,值得注意的是这个函数应当与节点的状态排列无关,以排除图同构的影响

基于这个MPNN衍生了许多MPNNs;

Convolutional Networks for Learning Molecular Fingerprints, Duvenaud et al. (2015) 直接以边特征作为周边特征,通过concat来结合顶点自身特征,并为每个t和不同度的顶点构建可学习特征矩阵,最后readout步骤跳接前面每个时刻每个顶点的feature representation,并进入全连接层变换,最后激活。 缺点:concat步骤使得其无法学习点特征与边特征间的关联性

Gated Graph Neural Networks (GG-NN), Li et al.(2016) 为不同type的边设计了一个可学习的特征矩阵,同时以GRU门控单元作为节点更新函数,最后利用哈达玛积在readout阶段结合点特征与边特征

还有很多MPNNs的例子,可自行查阅论文,基本就是换各种节点更新函数,消息函数与最后的readout函数以适应下游任务。然而所有这些方法的缺点在于计算复杂度,即训练时间成本过高。

本文中提出对原有节点嵌入进行分解,把高维分解为多个低维,独立传递,最后readout阶段再将其组合还原,可以有效降低复杂度。理论最优复杂度为O(n2).

 

标签:MPNN,函数,特征,复杂度,论文,笔记,readout,节点
From: https://www.cnblogs.com/LGL-sdu/p/17998127

相关文章

  • 软件测试学习笔记丨nmon 工具简介与使用
    nmon简介nmon是一种可以在AIX与Linux操作系统上使用的性能监控与分析工具使用技巧:下载位置:http://nmon.sourceforge.net ,从Binaries中下载可执行程序包解压之后选择使用所在操作系统对应的可执行程序可以使用ln命令将nmon程序软链接添加到/urs/bin目录下,这样可以通......
  • 软件测试学习笔记丨性能分析系统级别指标 io cpu mem net
    io指标监控命令iostat命令描述:监控系统设备的IO负载情况命令演示:iostatio指标监控命令df命令描述:列出⽂件系统的整体磁盘空间使⽤情况命令演示:df-hcpu指标监控命令uptime命令描述:用于显示系统总共运行了多长时间和系统的平均负载命令演示:uptimecpu指标监控命令cat/......
  • 软件测试学习笔记丨Web端测试——测试用例设计思路
    一、UI测试界面风格统一,与UI设计原型图一致界面文案正确提示、警告或错误说明描述准确切换窗口大小,将窗口缩小后,页面是否按比例缩小或出现滚动条,页面是否正确显示所有的图片是否都被正确装载在不同的浏览器、分辨率下图片是否能正确显示二、搜索测试如果支持模糊查询,搜索名称中......
  • iTextPdf学习笔记
    ITextPdf官网地址:https://itextpdf.com/html转pdf演示:https://itextpdf.com/demos/convert-html-css-to-pdf-free-onlineGithub地址:https://github.com/itext/itext7介绍iText是一个用于处理PDF文档的Java库。它提供了丰富的功能,帮助开发人员创建、编辑和处理PDF文档,......
  • 读千脑智能笔记06_人工智能的未来(上)
    1. 人工智能正在经历一场复兴,这是科技界最热门的领域之一1.1. 大多数科学进步都建立在被广泛接受的理论框架之上。这种理论框架称为“科学范式”1.2. 人工智能的未来将与大多数人工智能从业者如今的设想存在本质上的不同1.3. 人工神经网络与人类大脑中的神经元网络截然不......
  • 2024/2/6学习进度笔记
    CPU由运算器(ALU)和控制器(CU)两大部件组成。此外,还有若干个寄存器和高速缓冲存储器及实现它们之间联系的数据、控制及状态总线。ALU用来执行算术运算、移位操作、地址运算和转换;寄存器件用于保存中间数据以及指令;CU负责对指令译码,并发出为完成每条指令所要执行的各个操作的控制信号C......
  • pytorch 多机单卡分布式训练配置笔记.18010304
    pytorch多机单卡分布式训练配置笔记记录通过torchrun进行pytorch的分布式训练配置方法,示例代码为基本的分布式训练框架代码,无实际功能环境操作系统:Ubuntu22.04Python环境:anaconda23.11.0、Python3.8pytorch:2.1.2编写代码将代码保存为main.py模型训练代码写到train函数......
  • tensorflow 2.x 多机单卡 分布式训练配置笔记.18010232
    tensorflow2.x多机单卡分布式训练配置笔记tensorflow2.x多机单卡demo代码演示。配置笔记多机多卡属于tensorflow的tf.distribute.MultiWorkerMirroredStrategy策略,下面为详细的环境配置和demo代码环境、版本操作系统:Ubuntu22.04Python环境:anaconda23.11.0、Python......
  • python学习笔记37-pandas
    内容来自https://www.runoob.com/pandas/pandas-tutorial.html目录1.Series1.1Series特点1.2更多Series说明1.2.1基本操作1.2.2基本运算1.2.3属性和方法2.DataFrame2.1DataFrame特点2.2更多DataFrame说明2.2.1基本操作2.2.2属性和方法2.2.3数据操作2.2.4从外部数据......
  • Eralng 学习笔记第九天, 随手记-复习
    1,Erlang的模式匹配和java的多态和方法重载Erlang中的模式匹配和Java中的某些编程方式有相似之处,但它们通常更接近于Java中的多态(polymorphism)和方法重载(methodoverloading)这样的概念。多态(Polymorphism):在Erlang中,函数的模式匹配允许根据不同的参数模式调用不同的函......