【图神经网络】李宏毅

GNN 引入

假如要预测一个人是否是凶手。可以通过每个角色的特征训练出一个分类器。

在这里插入图片描述

有没有我们忽略的信息,或者我们可以利用但没有完全利用的信息。就是角色的关系。

在这里插入图片描述

这些角色关系可以让我们在做分类的时候获得一些额外的信息,可以帮助我们做更好的model。怎样同时考虑角色的特征和角色之间的关系,这个时候就要用GNN。

CNN 扩展到 GNN

在这里插入图片描述
对于CNN,通过卷积核,将一个点周围的邻居和卷积核对应相乘相加,得到下一层 feature map 的结果。这件事情能否 generalize 到 graph 上?
对于GNN,能否有一个类似卷积核的东西?

在这里插入图片描述

方法一:通过邻居 update ferture map。
方法二:信号处理的方法。先把信号转到 fourier domain 里面,再把转到 fourier domain 的信号和转到 fourier domain 的 filter response 做相乘,相乘之后再做 inverse fourier transform,就可以得到最后经过 filter 的信号。

如何在 graph 上做 convolution

有两种方式,就是上面讲的两个方法,一种是 Spatial-based 方法,一种是 Spectral-based 方法。

在这里插入图片描述

Spatial-based GNN

回顾 CNN 的做法
在这里插入图片描述
Spatial-based GNN 的做法
在这里插入图片描述

NN4G

看一下具体的 GNN 是如何做的

先做 embedding
embedding 是一个将离散变量转为连续向量表示的一个方式。
在这里插入图片描述
更新一个节点的做法
将邻居节点的特征相加,经过一个 transform,再加上该节点原本的特征。
在这里插入图片描述
Readout 的做法

在这里插入图片描述

DCNN

在这里插入图片描述
第一层是将跟节点3距离为1的节点取平均,第二层是将跟节点3距离为2的节点取平均。如果叠 k 层,就能看到 k 邻居的信息。

在这里插入图片描述
把每一层节点的特征叠起来。

在这里插入图片描述
得到最终某个节点的特征。

DGC

和 DCNN 的区别
在这里插入图片描述

MoNET

NN4G 是将每个节点相加,没有考虑邻居的权重。MoNET 考虑了邻居的权重。
在这里插入图片描述

GAT

MoNET 是定义了权重的计算方式,GAT 让网络自己去学这个权重。

在这里插入图片描述

做法是对邻居做 attention

在这里插入图片描述

GIN

在这里插入图片描述
结论是对邻居做 sum 而不是 mean 或 max

Spectral-based GNN

还是想像 CNN 一样做卷积
在这里插入图片描述

上图原理是时域卷积等于频域乘积

后面就听不懂了。。。
可以去看原视频
P43(选修)To Learn More - Graph Neural Netwo(2_2)

参考

P42 (选修)To Learn More - Graph Neural Network(1_2)
P43(选修)To Learn More - Graph Neural Netwo(2_2)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dotJunz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值