本章我们介绍关于图的基础知识,包括图的定义、类型和性质、图谱理论、图的傅里叶分析等。在之后介绍图神经网络会基于这些基础知识展开,
- 想要简单运用图神经网络,这部分知识可以不用学。
- 想要系统的理解图神经网络的来源和本质,这部分知识相当重要。
图的基本概念
对于接触过算法和数据结构的读者来说,图并不是一个陌生的概念。一个图由一些顶点[Vertex,也称为节点(Node)]]。和连接这些顶点的边组成。
给定一个图
G
=
(
V
,
ε
)
G = (V,\varepsilon)
G=(V,ε)
其中
V
V
V是{
V
1
,
V
2
,
⋯
,
V
n
V_1,V_2,\cdots,V_n
V1,V2,⋯,Vn}是一个具有n个顶点的集合。
- ε ⊆ V × V \varepsilon \subseteq V \times V ε⊆V×V
- 是边的集合,那么我们有以下的概念:
邻接矩阵Adjacent matrix
A ∈ R n × n A \in R^{n \times n} A∈Rn×n
表示顶点之间的连接关系。如果顶点 v i v_i vi和 v j v_j vj之间有连接,就表示 ( v i , v j ) (v_i,v_j) (vi,vj)组成一条边, ( v i , v j ) ∈ ε (v_i,v_j) \in \varepsilon (vi,vj)∈ε
那么对应的林杰矩阵元素
A
i
j
=
1
A_{ij} = 1
Aij=1,否则
A
i
j
=
0
A_{ij} = 0
Aij=0
邻接矩阵的对角线元素通常设为0
顶点的度
一个顶点的度指的是与该顶点连接边的总数,我们用
d
(
v
)
d( v)
d(v)来表示顶点
v
v
v的度,则顶点的度和边之间有关系:
所有顶点的度之和是边数目的2倍。
度矩阵 Degree Matrix
路径
距离
如果从顶点 u u u到顶点 v v v的最短路径存在,则这条最段路径的长度(Distance)称为顶点 v v v和顶点 v v v之间的距离,如果 u 和 v u和v u和v之间不存在路径,则距离无穷大。
邻居节点
权重图
**
**
有向图
如果一个图的每个边都有一个方向,则称这个 图为有向图,反之称为无向图。在有向图中,从顶点 u u u到 v v v的边和从 v v v到 u u u的边是两条不同的边,反之在邻接矩阵中,有向图的邻接矩阵通常是非对称的。而无向图的邻接矩阵一定是对称的, A i j = A j i A_{ij} = A_{ji} Aij=Aji 我们默认处理的图为无向图
图的遍历
从图的某个顶点出发,沿着图中的边访问每个顶点且只是访问一次,这叫做图的遍历。图的遍历一般有两种,深度优先搜索和宽度优先搜索。
图的同构
简易图普伦
早期,很多图神经网络相关概念是基于图信号分析或者图扩散的,而这些都需要与图谱论相关知识。本节介绍与图谱轮有关的重要概念。
- 拉普拉斯矩阵以及背后的意义。
- 图论傅里叶变换等。
拉普拉斯矩阵
对于一个有
n
n
n个顶点的图
G
G
G,它的莱普赖斯矩阵定义为:
L
=
D
−
A
L = D - A
L=D−A
其中,
D
D
D是图G的度矩阵,A是图G的邻接矩阵。
L的元素可以定义为:
通常我们需要将拉普拉斯矩阵进行归一化,常用的有两种方法:
对称归一化的拉普拉斯矩阵
随机游走归一化的拉普拉斯矩阵
拉普拉斯二次型
拉普拉斯矩阵与图扩散
- 先了解,后续深入研究与学习。