目录

  • 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解释相关推荐

  1. 【dgl学习】dgl处理图中的节点/边的属性/特征/类型

    目录 1 dgl.DGLGraph.nodes 1.1 举个例子 3 dgl.DGLGraph.edges dgl.DGLGraph.edata 举个例子 3 参考文献 1 dgl.DGLGraph. ...

  2. 图神经网络框架DGL学习 103——信息传递 (Message Passing Tutorial)

    在图神经网络中,信息的传递和特征的转变,用户可以自定义的.当然在DGL中,也有高级别的API供调用. 现在来看一个网页排名简单的模型.每一个节点都有相同的PV值,PV=0.01, 每一个节点首先会均匀 ...

  3. 【DGL学习2】编写自己的GNN模型(MPNN)

    使用DGL的消息传递API编写自己的GNN模型. 参考: https://docs.dgl.ai/tutorials/blitz/3_message_passing.html https://docs ...

  4. DGL教程--DGL概览

    Note: Click here to download the full example code DGL at a Glance Author: Minjie Wang, Quan Gan, Ja ...

  5. php video标签使用方法,HTML_HTML5 video标签(播放器)学习笔记(一):使用入门,近有在学习html5中video标签(播 - phpStudy...

    HTML5 video标签(播放器)学习笔记(一):使用入门 近有在学习html5中video标签(播放器)的使用,这里做一些学习笔记,方便自己查阅和记录,本文是第一篇,将介绍的是使用该标签初始化该做 ...

  6. 如何理解并学习javascript中的面向对象(OOP)

    本文不适合javascript初学者看(javascript水平还停留在函数级别的朋友,看了会觉得很晕的).如果你想让你的javascript代码变得更加优美,性能更加卓越.或者,你想像jQuery的 ...

  7. 疯狂python讲义学习笔记——中十章完结

    #第十一章 thinker import tkinter as tk print(help(tk.Button.__init__))#以按扭为例查看有什么属性 class myApplication( ...

  8. 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. ...

  9. 教女朋友学习 vue中的过滤器及其时间格式化

    写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字.我热爱技术.热爱开源.热爱编程.技术是开源的.知识是共享的. 这博客是对自己学习的一点点总结及记录,如果您对 Java.算法 感兴 ...

最新文章

  1. python字符串去重保持原顺序_python实现文本去重且不打乱原本顺序
  2. jquery插件---自动补全类插件
  3. xstream不映射字段_Mybatis_day03:输入映射和输出映射
  4. 证书服务器无法启动,使用 SSL 证书后服务无法启动 - SQL Server | Microsoft Docs
  5. 图解HTTP学习笔记
  6. 合并果子_tyvj1066_vijos1097_codevs1063_贪心+堆
  7. c++:json字符串拼接,json对象组装
  8. 谁是ASML的最大股东?为何荷兰光刻巨头要听美国的话?
  9. java 内存管理 知乎_[知乎]Java 语言的 GC 为什么不实时释放内存?
  10. 第 23 章 解释器模式
  11. 滚动条样式设置_自定义滚动条样式
  12. 2018 CodeM复赛:C. 边的染色
  13. java data文件夹_java-如何在不指定父文件夹/ ref的情况下遍历Datasnapshot
  14. 【首度披露】乐视电商云的整体架构与技术实现
  15. linux下获取主机信息
  16. 如何将APP安装包发布到360手机助手上
  17. 使用Python生成docx文档
  18. CSS表格和设置表格样式
  19. 这世界无非是“人人为我,我为人人”
  20. 传统防火墙与Web应用程序防火墙(WAF)的区别

热门文章

  1. matlab画柱形图
  2. PHP 重启 php-fpm 的几种方法
  3. IPaddr和IPaddr2的区别
  4. 菜鸟也能飞:SQL数据库实战专业教程(二)
  5. 喜报丨为工业安全赋能再添新动力 上海控安安全测评中心荣获CNAS认可
  6. 给App启用MultiDex功能
  7. 关于ES5和ES6的简介
  8. 获取webservice(wsdl)数据包
  9. Git之删除本地仓库
  10. git上如何删除仓库