GNN图网络学习一

图的基本概念

如何表示图

点集合用N表示,边集合用E表示,图用G(N, E)表示;

有向图与无向图

按照边是否有方向,图可以分为有向图(directed graph)和无向图(undirected graph)两类,这里需要注意的一点是,有向图里两个节点之间最多有两条边,A到B,B到A这两条边;而无向图里两个节点之间最多有一条边。

平均度数(average degree)

图中每个节点的连边数均值称为平均度数,
无向图的平均度数是 [公式]
有向图的平均度数是
在这里插入图片描述

二部图(Bipartite Graphs)

把图G的所有节点分成彼此不相交的两个子集U和V,如果G中每条边的两个节点都分别属于U和V,则称G为二部图。
GNN图网络学习一_第1张图片

邻接矩阵(adjacency matrix)

图G的邻接矩阵A是一个n*n的矩阵,n是节点数|N|,矩阵的元素 [公式] 表示节点i到节点j的连边权重。很显然,无向图是对称矩阵,有向图则未必。绝大多数情况下,图都是稀疏的,即 在这里插入图片描述因此邻接矩阵里大部分元素都是0,因此可以考虑用边列表(edge list)的方式来存储图结构,这就避开了那些权重为0的边,比如:

```python
a,b,1 # edge1: node a to node b, weight = 1
a,c,2 # edge2: node a to node c, weight = 2
b,d,1 # edge3: node b to node d, weight = 1

连通分量(Connected Components, CC)

在有向图中,如果节点i到节点j存在一条路径,且节点j到节点i也存在一条路径,则称节点i和j强连通。**不管如何只有一条路径
如果一个子图(subgraph)中任意两个节点都强连通,则称该子图为强连通分量(Strongly Connected Components)。**扩展到子图的范围
如果不考虑边的方向,一个子图中任意两个节点都存在一条路径,则称该子图为
弱连通分量(Weakly Connected Components)。**图中的任意节点都有路径,不管方向
如下图,A、B、C三个节点构成了一个强连通分量,图中所有节点构成一个弱连通分量,另外,借这个例子补充一个推论:环一定是强连通分量。
GNN图网络学习一_第2张图片
GNN图网络学习一_第3张图片
GNN图网络学习一_第4张图片
GNN图网络学习一_第5张图片
GNN图网络学习一_第6张图片
GNN图网络学习一_第7张图片
GNN图网络学习一_第8张图片

GNN图网络学习一_第9张图片

你可能感兴趣的:(计算机科学,图论)