背景
在之前深度学习主要关注例如文字的序列结构、图片的二维平面结构,处理的对象是序列或者二维图片 这种简单的排列。而现实中诸多数据表现为更为复杂的图结构,如社交网络、分子结构等。因此GNN就是深度学习在图数据结构上的一些模型、方法和应用。
GNN
GNN为什么能如此成功
- GNN能够表示图这一非欧几里得的数据结构,并且不考虑节点的输入顺序。也就是说对于不同顺序的节点输入,输出是不变的。
- GNN通过一个节点的邻居状态的权重和来更新这个节点的隐藏状态。
- GNN能够从场景图片和故事文档等非结构化的数据中生成图片,而传统的NN并不能。
概念
GNN
的目标就是学习每个节点v的隐藏状态,而每个节点的表示由该节点的特征、与该节点连接的边的特征、该节点的邻居的隐藏状态及邻居的特征计算得到:
节点的输出(例如节点的标签):
对于关注节点的任务,可以直接拿的表示去完成特定任务;而对于关注整个图的任务,可以通过将所有的节点的表示做 Pooling
或其他方法获得一个全局的表示信息然后去做相应的任务。