423 次浏览

GNN-图神经网络

科学和工程学等多个领域中的数据之间存在许多潜在关系,例如 计算机视觉,分子化学,分子生物学,模式识别,数据挖掘可以用图形表示。reference 1提出了一种新的神经网络-图神经网络(GNN)

在图形领域中的应用通常可以分为两类:分别是graph focused的应用程序和node focused的应用程序。

1.在graph focused应用中,例如如下图A,构建有机化合物成图\(\)\(G\)\(\),节点为每个原子,边则是原子间的化学键。函数\(\)\(\tau\)\(\)在类似上述的图结构上实现一个分类器或者回归器,并且此函数独立于节点。函数映射\(\)\(\tau (G)\)\(\)则用来估计化合物对于某一疾病是否有效的概率。又如下图B,一个图片可以被表示成一个区域邻接图(region adjacency graph, RAG),节点为图中每个同质的区域,连接弧表示每个同质区域的关系,此时,\(\)\(\tau (G)\)\(\)则用来区分图片。


2.在node focused应用中,不同于graph focused应用,此时函数\(\)\(\tau\)\(\)依赖于图的节点。例如图C,Web可以用图形表示,其中节点代表页面,边缘代表Web页面之间的超链。 可以将Web连接以及页面内容用于多种目的,例如 将页面分类为一组主题。

GNN则对上述两种应用都可适用,GNN可以看做是递归神经网络网络与随机游走模型的拓展。GNN在RNN基础上可以处理更为通用的图,无需预处理就可以处理以节点为中心的应用。GNN通过引入学习算法并扩大可以建模的过程类别来扩展随机游走理论。

符号介绍

感慨,GNN符号真的多!所以在此先把符号都记录下来。

图\(\)\(\textbf{G}\)\(\)是由”节点-边”对\(\)\((\textbf{N}, \textbf{E})\)\(\)组成。
\(\)\(ne[n]\)\(\)为节点\(\)\(n\)\(\)的邻居组成的集合,\(\)\(co[n]\)\(\)有节点与邻居中间的边组成的集合。
\(\)\(l_n\)\(\)代表节点\(\)\(n\)\(\)的标签,\(\)\(l_{(n_1, n_2)}\)\(\)代表边\(\)\((n_1, n_2)\)\(\)的标签,其中\(\)\(l_n \in R^{l_N}\)\(\), \(\)\(l_{(n_1, n_2)}\in R^{l_E)}\)\(\),将这些标签堆叠形成我们的标签向量\(\)\(\textbf{l}\)\(\),标签通常包括与节点相关的对象的特征以及对象之间的关系的特征。
在下图可以与上述的符号进行对应,所以再结合向量\(\)\(\textbf{l}\)\(\)集合\(\)\(ne[n]\)\(\),进行“更向量化”的表示:\(\)\(\textbf{l}_{ne[n]}\)\(\)表示节点\(\)\(n\)\(\)所有邻居的标签。

reference
1. Frano Scarselli, et al. The Graph Neural Network Model. 2009
2. Zhou J, Cui G, Zhang Z, et al. Graph neural networks: A review of methods and applications[J]. arXiv preprint arXiv:1812.08434, 2018.
3. https://medium.com/@BorisAKnyazev/tutorial-on-graph-neural-networks-for-computer-vision-and-beyond-part-1-3d9fada3b80d
4. https://www.cnblogs.com/SivilTaram/p/graph_neural_network_1.html