GNN笔记

本文探讨了图神经网络(GNN)的基础概念、作用及原理,强调其在非欧几里得数据结构中的优势。通过信息聚合策略,GNN如GCN、GAT和R-GCN在节点特征表达中的应用。旨在帮助读者高效学习并避免频繁回炉复习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

笔者研究方向为知识图谱(结合GNN),每次看论文遇到知识点不会就回去翻书重新学习GNN的理论,但是下次又会忘记,在反复几次这样的过程之后觉得十分浪费时间,因此特此写一个帖子。

1.GNN即图神经网络

1.1图

图的基本概念略过

1.2GNN作用(为什么有GNN)

图是一种非欧几里得空间的数据结构,传统的CNN并不能处理,并且现在的思路都是基于embedding,因此融合邻居节点的embedding到本节点上可以更准确的描述节点的特征,以便下游任务。

2.GNN原理

简洁的来讲其实就是信息聚合,将邻居节点的信息聚合到本节点上,最简单的来说可以有将邻居节点embedding进行求和再取平均,加到本节点上,当然这仅仅是最原始的一种策略。GNN是一个宏观的方法,下面还会分为GCN、GAT、R-GCN等。所以GNN是一种最简单的在图结构上的聚合策略而已。

### 图神经网络 (GNN) 学习资源 对于希望深入了解图神经网络(Graph Neural Networks, GNNs)的学习者来说,有多种高质量的教程、论文和技术博客可以作为参考资料。 #### 论文阅读 一些重要的研究工作奠定了现代GNN的基础。例如,《DeepWalk: Online Learning of Social Representations》探讨了如何通过随机游走的方式捕捉社交网络中的节点特征[^1];《node2vec: Scalable Feature Learning for Networks》则进一步扩展了这一思路,提出了更灵活的方法来生成节点嵌入表示;而《Semi-Supervised Classification with Graph Convolutional Networks》引入了一种基于卷积操作处理图形数据的新框架——GCN(Graph Convolutional Network),它能够有效地利用未标记的数据进行半监督分类任务。 #### 教程视频 除了学术文章外,在线教育平台也提供了许多易于理解的教学材料。比如B站上有一个名为“GNN从入门到精通”的系列课程,该课程由浅入深地讲解了有关GNN的知识点,并配有实际案例分析和编程练习[^3]。 #### 技术文档与笔记整理 为了帮助初学者更好地掌握理论概念并应用于实践当中,“【GNN】图神经网络学习小结and笔记汇总”这份总结性的资料非常有价值。这里不仅包含了对核心算法原理详尽解释的文字描述,还有配套代码实现供读者参考学习[^2]。 ```python import torch from torch_geometric.nn import GCNConv class Net(torch.nn.Module): def __init__(self): super(Net, self).__init__() self.conv1 = GCNConv(dataset.num_node_features, 16) self.conv2 = GCNConv(16, dataset.num_classes) def forward(self, data): x, edge_index = data.x, data.edge_index x = self.conv1(x, edge_index) x = F.relu(x) x = F.dropout(x, training=self.training) x = self.conv2(x, edge_index) return F.log_softmax(x, dim=1) ``` 上述Python代码片段展示了如何使用PyTorch Geometric库构建简单的两层GCN模型来进行节点分类预测。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值