如果把深度学习看作一部要素过多的大片,那么,它有两条主线,跟着这两条主线走就不会跑偏。一条主线叫卷积神经网络,简称CNN,主要用于图像类数据的处理。另一条主线叫循环神经网络,简称RNN,主要用于时序类数据的处理。“时序类数据”这种叫法大家也许很陌生,不过肯定都见过,主要就是指文本类数据和音频类数据。CNN和RNN共同搭建起深度学习的稳固框架。
毕竟机器学习的神经网络算法正是深度学习发家的根本,和CNN、RNN一样,GNN全名图神经网络(Graph Nerual Network),GNN关键在于打首的G,GNN之所以重要,是因为图很重要。
图是计算机科学里的一种非常重要的数据结构。GNN里的“图”,正是指图论的“图”。图神经网络并不是图与机器学习的第一次结合,机器学习在此之前已经大量使用了这个重要的数据结构。机器学习众多的模型中,有一个重要的大类,叫概率图模型(PGM),名字叫得很形象,这类模型就是用图来表示变量与变量之间转移的概率关系。
不过,虽然名字都有“图”字,但概率图模型和这里要介绍的图神经网络,有着本质的不同。深度学习的每一款经典模型,背后都有一篇经典的论文,GNN的那篇经典论文可以参阅《Semi-SupervisedClassification with Graph Convolutional Networks》。
什么是图呢?一种集合论的定义方法G=(V, E)表达的意思就是:图是顶点和边的集合,就是GNN的G,意思是Graph(图),V就是前面的Vertex(顶点),E就是前面的Edge(边)。图的应用非常广,网络拓扑图就是一种非常典型的图结构。星形、环形、总线形,无论哪种,所谓的顶点,就是网络拓扑图里面的节点,譬如网络拓