当前位置: 首页 > news >正文

cs224w课程学习笔记-第7课

cs224w课程学习笔记-第7课 GNN理论--上

  • 前言
  • 一、图神经网络的表征能力度量
    • 1、计算图
    • 2、表征能力理解
  • 二、构建强表征能力的图神经网络
    • 1、理论
    • 2、与WL核函数的关系
  • 三、总结

前言

前面介绍了图神经网络的构成,常见类型,训练流程与实践结构,本节课将对图神经网络的表征能力进行挖掘,首先是用什么来衡量图神经网络的表征能力,然后是什么样的结构能够得到表征能力强大的图神经网络.

一、图神经网络的表征能力度量

从图角度看,最直观的表现就是能够区分不同的图,那结合图神经网络就是该网络的图嵌入能够区分不同的图,图嵌入再往下是通过节点嵌入得到的,因此延伸到节点嵌入要能区分不同节点,而节点嵌入又是有其邻域得到的,因此图神经网络的表征能力的分析的核心是分析其对邻域结构的抓取能力上.

1、计算图

如下图所示的节点1,2,其嵌入由近邻点表示,其嵌入过程就可以表示为邻域的消息传递图(计算图),
在这里插入图片描述
但是我们知道在计算过程中节点是没有ID信息的,网络看的是每个节点的特征,那么上面的节点1,2的计算图就没有差别了,这样其嵌入结果也将变成一样的.由此总结得到节点的嵌入是通过有根子树结构(计算图)得到的,表征能力强的网络是将不同根子树结构(计算图)映射到不同的节点嵌入.
在这里插入图片描述
细看计算图可以看到有多层消息传递聚合,因此表征能力强反应在每一层的聚合都应该是单射(injective)的.
注:单射及输入与输出一一对应,输入不同输出及不同的函数,如y= x 2 x^2 x2就不是单射函数,其输入-1,与1,输出均为1

2、表征能力理解

前面举的都是计算图的结构,我们将计算图抽象为集合,那么聚合函数就是在一个有重复值的集合上做运算,为加深理解,我们可以来看一下之前介绍过的图神经热门类型的聚合方式是否是单射的.

  1. GCN (mean-pool):这个明显不是单射
  2. GraphSAGE (max-pool) :这个明显不是单射

二、构建强表征能力的图神经网络

1、理论

由2019年的一篇论文得到,任意一个单身函数均可表达为下面的形式.
在这里插入图片描述
又有理论证明只要隐藏层足够大(实践中100-500足够了),mlp可以逼近任意连续函数.
在这里插入图片描述
由此使用mlp进行消息传递聚合构建同构图神经网络,可以实现单射性质.因此GIN是表达能力最强的GNN.
在这里插入图片描述

2、与WL核函数的关系

WL核内容回顾见该篇笔记
WL核方法的具体原理说明在此不再展开,直接给出其表达公式,其hash函数则是一个单射函数,因此我们可以将其用mlp进行建模.
,
这样的话其表达式可表示为,输入是onehot,直接相加即满足单射.
在这里插入图片描述
这样看的话其表达形式是不是一致的,因此GIN模型可以理解为神经网络版本的WL图核.
在这里插入图片描述
只是GIN的结构可以

  1. 节点嵌入低维,捕捉细粒度下不同节点之间的相似性。
  2. 更新函数的参数可以根据下游任务进行针对性学习。

然而WL核无法对带环的图很好的表征,其表示如下,如分子结构上的表征,因此还有待进一步改善,好消息是这个问题目前已经有了不错的解决办法,具体内容见下一课笔记.
在这里插入图片描述

三、总结

本节课主要说明了如何分析图神经网络的表征能力,能够区分不同的图,表现在神经网络计算上为节点的嵌入应为单射;如何搭建表征能力强的网络结构GIN,通过保证节点计算图单层聚合为单射函数,引出MLP可实现单射需求.最后讲述了GIN与WL图核的关系,其hash 函数为单射函数,可用GIN实现,两者殊途同归.

http://www.dtcms.com/a/67332.html

相关文章:

  • Harmony OS:用户文件操作——图片选择与渲染使用
  • Docker根目录迁移与滚动日志设置
  • leetcode日记(96)有序链表转换二叉搜索树
  • 记录致远OA服务器硬盘升级过程
  • Android第二次面试总结(项目拷打理论篇)
  • Gone v2 中 Gone-Gin 性能测试报告
  • kotlin与MVVM的结合使用总结(二)
  • hackme靶机通关攻略
  • Java数组详解(一)
  • IDE 使用技巧与插件推荐:全面提升开发效率
  • vue3+ts+vite环境中使用json-editor-vue3,记录遇到的奇奇怪怪问题!!!
  • 三格电子Modbus TCP转CANOpen网关相关问答
  • 【vscode-01】vscode不同项目不同语言扩展插件隔离方案
  • 智算新纪元,腾讯云HAI-CPU助力法律援助
  • 提升工地安全:视觉分析助力挖掘机作业监控
  • 夜莺监控 v8.0 新版通知规则 | 对接企微告警
  • 前端面试:如何实现预览 PDF 文件?
  • PostgreSQL 日常SQL语句查询记录--空间查询
  • 单体架构、微服务组件与解决方案
  • 开VR大空间体验馆,如何最低成本获取最大收入?
  • RabbitMQ 实现原理及流程
  • 多线程--参数传递之间的关系
  • react和vue 基础使用对比
  • Docker文件夹上传秘籍Windows下的高效传输之道
  • hcia华为路由器静态路由实验配置
  • 泰山派开发之—Ubuntu24.04下Linux开发环境搭建
  • 如何使用GuzzleHttp库:详细教程与代码示例
  • android 调用wps打开文档并感知保存事件
  • 【RabbitMQ】rabbitmq在spring boot中的使用
  • 回调函数qsort①冒泡排序数组