深蓝学院-GNN课程笔记01-图论基础
这个系列是深蓝学院图深度学习理论与实践的同步课程笔记。课程内容涉及图深度学习的基础理论与应用,本节主要介绍图论的基础知识。
图的表示
一个图(Graph)可以表示为

一个图可以用邻接矩阵(adjacency matrix)来存储。给定一个图
图的性质
度
图的性质有很多,其中最基本的性质是节点的度(degree),它表示与该节点相邻的其他节点的数目:

同时,图上所有节点度的和(邻接矩阵中非零元素的个数)等于图上边数量的2倍:
在度的基础上我们可以定义邻域(neighborhood)

连通度
我们定义途径(walk)是节点与边的交替序列,从一个节点开始,以一个节点结束,其中每条边与紧邻的节点相连。途径的长度定义为途径中包含的边的数量。

在途径的基础上可以定义迹(trail)和路径(path),其中迹是边各不相同的途径,而路径是节点各不相同的途径。换句话说,迹中不能有相同的边儿路径中不能有相同的节点。以下图为例,


给定一个图,如果图中的任意两个节点之间都至少存在一条路径,则称这个图是一个连通图(connected graph)。对于下图所表示的图,如果只考虑左半部分则它是一个连通图,如果把整个图放在一起考虑则不是一个连通图。

给定连通图中的任意两点,连接这两点的长度最小的路径被称为这两点之间的最短路径(shortest path),最短路径的长度被称为两点间的距离。需要注意的是一对节点之间可能存在不止一条最短路径,如下图中

通过最短路径我们可以定义图的直径(diameter)为图上最远的两点间的距离,即所有最短路径中的最长路径的长度。

中心性
节点的中心性(centrality)用来衡量节点在图上的重要程度,其中最基础的是度中心性(degree centrality),它基于节点的度来测量中心性:
度中心性背后的思想在于与节点
度中心性认为与节点
其中
显然对于给定的图可能存在多个不同的特征向量,实际中一般可取最大特征值的作为特征向量中心性。
类似地,可以定义Katz中心性(Katz centrality)为:
其中常数
显然常数
谱图论与图信号处理
拉普拉斯矩阵
拉普拉斯矩阵(Laplacian matrix)在图论中具有非常重要的应用,其定义为节点度矩阵与邻接矩阵的差:
由于度矩阵
通过拉普拉斯矩阵可以度量每个节点与和它相邻节点的差异。假设节点
类似地,
因此
图信号处理
我们可以为图上的每一个节点赋予一个特征,这样的图数据结构称为图信号。图信号由图

前面已经证明了拉普拉斯矩阵的二次型
在一维信号处理中同一个信号可以在时域和频域两个域上进行表示,它们之间的转换由傅里叶变换给出:
上式可以理解为将时域信号
因此类似于一维信号处理,图上的傅里叶变换只需要将图信号投影到拉普拉斯矩阵的特征向量上即可:
其中
拉普拉斯矩阵的特征向量构成了图
其中


复杂图
到目前位置我们只考虑了无向图,但在实际应用中的图要复杂得多。本节最后介绍其它常见但更复杂的图类型。
异质图(heterogeneous graph)包含多种不同类型的节点和边来表示不同对象之间的关系。

二分图(bipartite graph)中可以将节点划分为两组互不相交的子集,每条边都连接着这两个子集中的节点。日常生活中电商平台的用户和商品就是典型的二分图。

多维图(multi-dimensional graph)中同一对节点之间允许存在多种不同的关系,其中每一种关系都可以单独建模成一张图。比如说视频网站中用户间的订阅、观看和评论就可以建模成具有3个维度的多维图。

符号图(signed graph)在社交网络中有着非常广泛的应用,用户间的「关注」行为可以看做是正关系,而「屏蔽」行为则是负关系。

超图(hypergraph)中允许多个节点通过同一条边连接起来。比如说论文构成的超图上同一个作者作为一条超边将他发表的所有文章连接起来。

前面介绍的图类型都是静态的,而动态图(dynamic graph)则允许图上的节点和边随时间不断演化。
