【dgl学习】dgl中edges.src/edges.dst/edges.data解释
目录
- 1 引言
- 2 函数介绍
- 2.1 E.g. dgl.function.copy_u
- 2.2 E.g. dgl.function.copy_e
1 引言
在使用dgl定义的message passing函数时,经常使用如dgl.function.copy_u、dgl.function.copy_src和dgl.function.copy_e函数。这些函数的底层一般是用edges.src/edges.dst/edges.data实现,下面介绍一下这三个函数及其应用。
2 函数介绍
消息函数:接受一个参数 edges,这是一个 dgl.EdgeBatch 的实例, 在消息传递时,它被DGL在内部生成以表示一批边。edges有三个成员属性:src、dst和data,分别用于访问源节点、目标节点和边的特征。
2.1 E.g. dgl.function.copy_u
# Builtin message function that computes message
# using source node feature.import dgl
message_func = dgl.function.copy_u('h', 'm')# 这两个函数是等价的,访问源节点特征,并且存到m中
def message_func(edges):return {'m': edges.src['h']} # 访问边对于的源节点特征
2.2 E.g. dgl.function.copy_e
# Builtin message function that computes
# message using edge feature.import dgl
message_func = dgl.function.copy_e('h', 'm')# 这两个函数等价,用边的特征计算消息传递
def message_func(edges):return {'m': edges.data['h']} # 访问边的特征
【dgl学习】dgl中edges.src/edges.dst/edges.data解释相关推荐
- 【dgl学习】dgl处理图中的节点/边的属性/特征/类型
目录 1 dgl.DGLGraph.nodes 1.1 举个例子 3 dgl.DGLGraph.edges dgl.DGLGraph.edata 举个例子 3 参考文献 1 dgl.DGLGraph. ...
- 图神经网络框架DGL学习 103——信息传递 (Message Passing Tutorial)
在图神经网络中,信息的传递和特征的转变,用户可以自定义的.当然在DGL中,也有高级别的API供调用. 现在来看一个网页排名简单的模型.每一个节点都有相同的PV值,PV=0.01, 每一个节点首先会均匀 ...
- 【DGL学习2】编写自己的GNN模型(MPNN)
使用DGL的消息传递API编写自己的GNN模型. 参考: https://docs.dgl.ai/tutorials/blitz/3_message_passing.html https://docs ...
- DGL教程--DGL概览
Note: Click here to download the full example code DGL at a Glance Author: Minjie Wang, Quan Gan, Ja ...
- php video标签使用方法,HTML_HTML5 video标签(播放器)学习笔记(一):使用入门,近有在学习html5中video标签(播 - phpStudy...
HTML5 video标签(播放器)学习笔记(一):使用入门 近有在学习html5中video标签(播放器)的使用,这里做一些学习笔记,方便自己查阅和记录,本文是第一篇,将介绍的是使用该标签初始化该做 ...
- 如何理解并学习javascript中的面向对象(OOP)
本文不适合javascript初学者看(javascript水平还停留在函数级别的朋友,看了会觉得很晕的).如果你想让你的javascript代码变得更加优美,性能更加卓越.或者,你想像jQuery的 ...
- 疯狂python讲义学习笔记——中十章完结
#第十一章 thinker import tkinter as tk print(help(tk.Button.__init__))#以按扭为例查看有什么属性 class myApplication( ...
- python opencv的函数cv2.LUT(src, lut, dst=None)的具体使用(LUT:查找表)
文章目录: 1 查看cv2.LUT(src, lut, dst=None)函数的使用 1.1 LUT函数的python接口cv2.LUT()的参数说明 1.2 LUT函数在C++中的定义 2 cv2. ...
- 教女朋友学习 vue中的过滤器及其时间格式化
写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字.我热爱技术.热爱开源.热爱编程.技术是开源的.知识是共享的. 这博客是对自己学习的一点点总结及记录,如果您对 Java.算法 感兴 ...
最新文章
- python字符串去重保持原顺序_python实现文本去重且不打乱原本顺序
- jquery插件---自动补全类插件
- xstream不映射字段_Mybatis_day03:输入映射和输出映射
- 证书服务器无法启动,使用 SSL 证书后服务无法启动 - SQL Server | Microsoft Docs
- 图解HTTP学习笔记
- 合并果子_tyvj1066_vijos1097_codevs1063_贪心+堆
- c++:json字符串拼接,json对象组装
- 谁是ASML的最大股东?为何荷兰光刻巨头要听美国的话?
- java 内存管理 知乎_[知乎]Java 语言的 GC 为什么不实时释放内存?
- 第 23 章 解释器模式
- 滚动条样式设置_自定义滚动条样式
- 2018 CodeM复赛:C. 边的染色
- java data文件夹_java-如何在不指定父文件夹/ ref的情况下遍历Datasnapshot
- 【首度披露】乐视电商云的整体架构与技术实现
- linux下获取主机信息
- 如何将APP安装包发布到360手机助手上
- 使用Python生成docx文档
- CSS表格和设置表格样式
- 这世界无非是“人人为我,我为人人”
- 传统防火墙与Web应用程序防火墙(WAF)的区别