PyG将同构模型转化为异构网络模型

对于同构图来讲,我们可以使用通用的 GCNGAT 等图神经网络作为消息传递函数来更新每个节点特征,但是对于异构图来讲,他有不同的节点类型以及边类型,所以使用同构网络模型显然是不能够处理异构数据的。

对于这种问题,一般有两种解决方式:

  • 将同构网络模型转化为异构网络模型
  • 将异构图数据转化为同构图数据

关于这两种解决方式都有论文给出了详细证明以及操作,对于本文,我们只谈第一种策略,就是如何使用 PyG 将我们的同构网络模型转化为可以处理异构图数据的异构网络。

PyG中 to_hetero() 函数介绍:

在这里插入图片描述
该函数可以将同构网络转化为异构网络

在这里插入图片描述

这里给出了异构网络的通用消息传递函数,其实和同构网络的消息传递机制差不多,对于同构网络它是将所有邻居节点的特征信息进行聚合映射,但是异构图同一节点存在很多种不同类型边,也就是不同种类的邻居,他会基于同一种边(也就是一类节点类型邻居)执行一种消息聚合方式,这样最终就会得到边的类型个不同的特征向量,然后对不同边关系得到的特征向量做特征聚合。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部