前言
大家好,我是阿光。
本专栏整理了《图神经网络代码实战》,内包含了不同图神经网络的相关代码实现(PyG以及自实现),理论与实践相结合,如GCN、GAT、GraphSAGE等经典图网络,每一个代码实例都附带有完整的代码。
正在更新中~ ✨
🚨 我的项目环境:
- 平台:Windows10
- 语言环境:python3.7
- 编译器:PyCharm
- PyTorch版本:1.11.0
- PyG版本:2.1.0
🌠 『精品学习专栏导航帖』
-
🐧【Matplotlib绘制图像目录】Python数据可视化之美🐧
-
🐳最适合入门的100个深度学习实战项目🐳
-
🐙【PyTorch深度学习项目实战100例目录】项目详解 + 数据集 + 完整源码🐙
-
🐶【机器学习入门项目10例目录】项目详解 + 数据集 + 完整源码🐶
-
🦜【机器学习项目实战10例目录】项目详解 + 数据集 + 完整源码🦜
-
🐌Java经典编程100例🐌
-
🦋Python经典编程100例🦋
-
🦄蓝桥杯历届真题题目+解析+代码+答案🦄
-
🐯【2023王道数据结构目录】课后算法设计题C、C++代码实现完整版大全🐯
对于本专栏的网络模型,分别使用了三种实现方式 PyG框架实现、PyTorch实现、Message Passing消息传递机制实现,小伙伴可以按照自己的能力以及需求学习不同的实现方式。
注意 🚨:本目录中已存在的链接博文已全部写好,例如 + (一):节点分类 这类带有删除线的文章表示正在更新中,如果写完会去掉删除线,点击出现404表示文章还没有发布,后续根据情况陆续发布。
🌈『目录』
📢 PyG算子、数据集介绍
- (一):PyG内置常见图数据集一览表
- (二):PyG图神经网络算子一览表
📢 图神经网络常见任务与应用场景
- (一):节点分类(PyG基于GCN实现Cora节点分类任务)
- (二):图分类(PyG基于GCN实现MUTAG图分类任务)
+ (三):链路预测
+ (四):异常检测
+ (五):社区检测
📢 图嵌入学习(Graph Embedding)
- (一):DeepWalk(PyG基于DeepWalk实现节点分类及其可视化)
- (二):Node2Vec(PyG基于Node2Vec实现节点分类及其可视化)
- (三):MetaPath2Vec(PyG基于MetaPath2Vec实现节点分类及其可视化)
+ (三):LINE
📢 图池化(Graph Pooling)
- (一):EdgePool(Pytorch+PyG实现EdgePool实现图分类)
- (二):TopKPool(Pytorch+PyG实现TopKPool实现图分类)
- (三):SAGPool(Pytorch+PyG实现SAGPool实现图分类)
- (四):ASAPool(Pytorch+PyG实现ASAPool实现图分类)
📢 MLP
- (一):Pytorch+PyG实现MLP(基于PyG实现)
- (二):Pytorch实现MLP(基于PyTorch实现)
📢 GCN
- (一):Pytorch+PyG实现GCN(基于PyG实现)
- (二):Pytorch实现GCN(基于PyTorch实现)
- (三):Pytorch实现GCN(基于Message Passing消息传递机制实现)
📢 GAT
- (一):Pytorch+PyG实现GAT(基于PyG实现)
- (二):Pytorch实现GAT(基于PyTorch实现)
- (三):Pytorch实现GAT(基于Message Passing消息传递机制实现)
📢 GIN
- (一):Pytorch+PyG实现GIN(基于PyG实现)
- (二):Pytorch实现GIN(基于PyTorch实现)
- (三):Pytorch实现GIN(基于Message Passing消息传递机制实现)
📢 GraphSAGE
- (一):Pytorch+PyG实现GraphSAGE(基于PyG实现)
- (二):Pytorch实现GraphSAGE(基于PyTorch实现)
- (三):Pytorch实现GraphSAGE(基于Message Passing消息传递机制实现)
📢 EdgeCNN
- (一):Pytorch+PyG实现EdgeCNN(基于PyG实现)
- (二):Pytorch实现EdgeCNN(基于PyTorch实现)
- (三):Pytorch实现EdgeCNN(基于Message Passing消息传递机制实现)
📢 GraphConv
- (一):Pytorch+PyG实现GraphConv(基于PyG实现)
- (二):Pytorch实现GraphConv(基于PyTorch实现)
- (三):Pytorch实现GraphConv(基于Message Passing消息传递机制实现)
注意🚨:所有文章使用的图数据是经典的 Cora 数据集,定义的训练轮数(200轮)以及损失函数优化器都是一致的,由于图网络很容易过拟合导致训练集的分类精度达到 99.9%,所以下表中显示的数据都是基于测试集的。
Accuracy Loss MLP 0.1800 1.9587 GCN 0.7200 1.3561 GAT 0.7810 1.0362 GIN 0.7650 0.9645 GraphSAGE 0.7060 1.2712 EdgeCNN 0.3790 1.7529 GraphConv 0.6030 1.2378
-