图深度学习-2-图论基础
图神经网络的图论基础
二、图论基础
2.1 图的简介
图(Graph)描述了实体之间的两两关系,是诸多领域中真实数据的基本表示方法。
2.2 图的表示
【图】 一个图可表示为G={V,E}G=\{V,E\}G={V,E},其中V={v1,v2,⋯ ,vN}V=\{v_1,v_2,\cdots,v_N\}V={v1,v2,⋯,vN}是大小为N的节点集合,E={e1,e2,⋯ ,eM}E=\{e_1,e_2,\cdots,e_M\}E={e1,e2,⋯,eM}是大小为M的边集合。
【相邻】 两个节点相邻当且仅当它们之间存在一条边
- 连接两个节点的边与这两个节点相关联
【邻接矩阵】 给定一个图G={V,E}G=\{V,E\}G={V,E},对应的邻接矩阵可表示为A∈{0,1}N×NA \in \{0,1\}^{N\times N}A∈{0,1}N×N。邻接矩阵A的第i行第j列元素Ai,jA_{i,j}Ai,j表示节点viv_ivi与vjv_jvj的连接关系。如果viv_ivi与vjv_jvj相邻,则Ai,j=1A_{i,j}=1Ai,j=1,否则为0。
- 无向图的邻接矩阵一定是对称的
2.3 图的性质
2.3.1 度
【度】 在图G={V,E}G=\{V,E\}G={V,E}中,节点vi∈Vv_i\in Vvi∈V的度d(vi)d(v_i)d(vi)为图G中与节点viv_ivi相关联的边的数目
- 节点的度可由邻接矩阵计算:d(vi)=∑j=1NAi,jd(v_i)=\sum_{j=1}^{N}A_{i,j}d(vi)=∑j=1NAi,j
- 图中所有节点的度之和是图中边的数量的二倍
- 无向图邻接矩阵的非零元素的个数是边的数量的二倍
【邻域】 在图G={V,E}G=\{V,E\}G={V,E}中,节点viv_ivi的邻域N(vi)N(v_i)N(vi)是所有与其相邻的节点的集合。
- 一个节点的邻域的元素个数等于节点的度
2.3.2 连通度
【途径】 图的途径是节点和边的交替序列,以一个节点开始,以一个节点结束,其中每条边与紧邻的节点相关联
- 节点u起到节点v的途径表示为u−vu-vu−v途径
- 途径的长度为途径中包含边的数量
- u-v途径不是唯一的
【迹】 迹是边各不相同的途径
【路】 路是节点各不相同的途径
- 对于图G={V,E}G=\{V,E\}G={V,E}及其邻接矩阵A,AnA^nAn的第i行第j个元素等于长度为n的vi−vjv_i-v_jvi−vj途径的个数。
【子图】 子图由图的节点集子集和边集子集组成,且节点集子集必须包括边集自己的所有节点
【连通分量】 给定图G={V,E}G=\{V,E\}G={V,E},如果一个子图中任意一对节点之间都至少存在一条路,且子图的节点集不与节点集补集有联系,则该子图为一个连通分量。
【连通图】 如果图中只有一个连通分量,则图为连通图
【最短路】 pstsp=arg minp∈Pst∣p∣p^{sp}_{st}=\argmin_{p\in P_{st}}|p|pstsp=p∈Pstargmin∣p∣
- 任意给定的节点对之间可能有多条最短路
【直径】 diameter(G)=maxvs,vt∈Vminp∈Pst∣p∣diameter(G)=\max_{v_s,v_t\in V}\min_{p\in P_{st}}|p|diameter(G)=maxvs,vt∈Vminp∈Pst∣p∣
2.3.3 中心性
在图中,节点的中心性同于衡量节点在图中的重要性。
【度中心性】 cd(vi)=d(vi)=∑j=1NAi,jc_d(v_i)=d(v_i)=\sum_{j=1}^{N}A_{i,j}cd(vi)=d(vi)=∑j=1NAi,j
【特征向量中心性】 ce(vi)=1λ∑j=1NAi,j⋅ce(vj)c_e(v_i)=\frac{1}{\lambda}\sum_{j=1}^{N}A_{i,j}\cdot c_e(v_j)ce(vi)=λ1∑j=1NAi,j⋅ce(vj)
- 矩阵表示为ce=1λA⋅cec_e=\frac{1}{\lambda}A\cdot c_ece=λ1A⋅ce
- 一个元素全为正的实方阵具有唯一的最大特征值,其对应的特征向量的元素全为正
【Katz中心性】 ck(vi)=α∑j=1NAi,jck(vj)+βc_k(v_i)=\alpha\sum_{j=1}^{N}A_{i,j}c_k(v_j)+\betack(vi)=α∑j=1NAi,jck(vj)+β
- 矩阵表示为ck=αA⋅ck+βc_k=\alpha A \cdot c_k+\betack=αA⋅ck+β
- 特征向量中心性的变体,不仅考虑了邻居的中心性,而且包含了一个常数考虑中心节点本身
【介数中心性】 cb(vi)=∑vs≠vi≠vtσst(vi)σstc_b(v_i)=\sum_{v_s\neq v_i\neq v_t}\frac{\sigma_{st}(v_i)}{\sigma_{st}}cb(vi)=∑vs=vi=vtσstσst(vi)。其中σst\sigma_{st}σst为所有从节点vsv_svs到节点vtv_tvt最短路的数目,σst\sigma_{st}σst表示这些路中经过节点viv_ivi的数目
- 归一化:cnb(vi)=2×∑vs≠vi≠vtσst(vi)σst(N−1)(N−2)c_{nb}(v_i)=\frac{2\times \sum_{v_s\neq v_i\neq v_t}\frac{\sigma_{st}(v_i)}{\sigma_{st}}}{(N-1)(N-2)}cnb(vi)=(N−1)(N−2)2×∑vs=vi=vtσstσst(vi)
2.4 谱图论
谱图论通过分析图的拉普拉斯矩阵的特征值和特征向量研究图的性质。
2.4.1 拉普拉斯矩阵
【拉普拉斯矩阵】 对于图G={V,E}G=\{V,E\}G={V,E}及其邻接矩阵AAA,拉普拉斯矩阵定义为L=D−AL=D-AL=D−A。式中DDD为对角矩阵,D=diag(d(v1).d(v2),⋯ ,d(vN))D=diag(d(v_1).d(v_2),\cdots,d(v_N))D=diag(d(v1).d(v2),⋯,d(vN))
- 归一化拉普拉斯矩阵:L′=D−12(D−A)D−12=I−D−12AD−12L'=D^{-\frac{1}{2}}(D-A)D^{-\frac{1}{2}}=I-D^{-\frac{1}{2}}AD^{-\frac{1}{2}}L′=D−21(D−A)D−21=I−D−21AD−21
- 拉普拉斯矩阵是半正定、对称矩阵
2.4.2 拉普拉斯矩阵的特征值与特征向量
【定理】 图的拉普拉斯矩阵的特征值非负
【定理】 图的拉普拉斯矩阵中特征值为0的数量等于图中连通分量的数量
2.5 图信号处理
图信号,即图数据结构中存在的与节点相关联的特征或属性,它捕获结构信息(或节点之间的连接)和数据(或节点上的属性)。
图信号由图G={V,E}G=\{V,E\}G={V,E}和在节点域上定义的将节点映射为实数值的映射函数f:V→RN×df:V\rightarrow \mathrm{R}^{N\times d}f:V→RN×d构成,其中ddd为节点属性向量的维数。如果图中相邻节点的属性值相似,则称这个图是平滑的,即平滑的图信号是低频的。图信号fff的平滑度/频率可由拉普拉斯矩阵二次型fTLff^TLffTLf测量。
【图的傅里叶变换】 f^[l]=<f,ul>=∑i=1Nf[i]ul[i]\hat{f}[l]=<f,u_l>=\sum_{i=1}^{N}f[i]u_l[i]f^[l]=<f,ul>=∑i=1Nf[i]ul[i],其中ulu_lul代表拉普拉斯矩阵的第lll个特征向量,对应的特征值λl\lambda_{l}λl表示ulu_lul的频率(平滑度)。
- 矩阵表示:f^=UTf\hat{f}=U^Tff^=UTf,其中矩阵UUU的第lll列为ulu_lul
- 特征值度量对应特征向量的平滑度 -> 特征值小,则对应的特征向量平滑
【图的傅里叶逆变换】 f[l]=∑i=1Nf^[i]ul[i]f[l]=\sum_{i=1}^{N}\hat{f}[i]u_l[i]f[l]=∑i=1Nf^[i]ul[i]
- 矩阵表示:f=Uf^f=U\hat{f}f=Uf^
2.6 复杂图
【异质图】(Heterogeneous Graph) 异质图GGG由节点集合V={v1,⋯ ,vN}V=\{v_1,\cdots,v_N\}V={v1,⋯,vN}和边集合E={e1,⋯ ,eM}E=\{e_1,\cdots,e_M\}E={e1,⋯,eM}组成,其中每个节点和每条边都对应一种类型。TnT_nTn表示节点类型的集合,TeT_eTe表示边类型的集合。异质图有两个映射函数:ϕn:V→Tn\phi_n:V\rightarrow T_nϕn:V→Tn和ϕe:E→Te\phi_e:E\rightarrow T_eϕe:E→Te。
【二分图】(Bipartite Graph) 图G={V,E}G=\{V,E\}G={V,E}是二分图当且仅当:V=V1⋃V2V=V_1 \bigcup V_2V=V1⋃V2,V1⋂V2=∅V_1\bigcap V_2=\emptyV1⋂V2=∅,对于所有边e=(ve1,ve2)∈Ee=(v_e^1,v_e^2)\in Ee=(ve1,ve2)∈E,都有ve1∈V1v_e^1\in V_1ve1∈V1和ve2∈V2v_e^2\in V_2ve2∈V2
【多维图】(Multi-dimensional Graph) 多维图由一个节点集合V={v1,⋯ ,vN}V=\{v_1,\cdots,v_N\}V={v1,⋯,vN}和DDD个边集合{E1,⋯ ,ED}\{E_1,\cdots,E_D\}{E1,⋯,ED}组成。每个边集合描述了节点之间的一种关系,DDD个边集合可表示为DDD个邻接矩阵A(d)A^{(d)}A(d)
【符号图】(Signed Graph) 符号图表示为G={V,E+,E−}G=\{V,E^+,E^-\}G={V,E+,E−},E+⊂V×VE^+\subset V \times VE+⊂V×V和E−⊂V×VE^-\subset V \times VE−⊂V×V分别为正边集合和负边集合,同时保证E+⋂E−=∅E^+ \bigcap E^-=\emptyE+⋂E−=∅。在符号图的邻接矩阵中,元素取值为±1,0\pm 1,0±1,0。
【超图】(HyperGraph)超图可表示为G={V,E,W}G=\{V,E,W\}G={V,E,W},其中VVV为节点集合,EEE为超边集合,W∈R∣E∣×∣E∣W \in \mathrm{R}^{|E|\times |E|}W∈R∣E∣×∣E∣,其中Wj,jW_{j,j}Wj,j表示超边eje_jej的权重。超图也可利用关联矩阵H∈R∣V∣×∣E∣H\in R^{|V|\times |E|}H∈R∣V∣×∣E∣表示,其中Hi,j=1H_{i,j}=1Hi,j=1表示viv_ivi与eje_jej关联,节点的度为d(vi)=∑i=1∣V∣Hi,jd(v_i)=\sum_{i=1}^{|V|}H_{i,j}d(vi)=∑i=1∣V∣Hi,j。此外,DeD_eDe和DvD_vDv分别表示边和节点的度矩阵,且二者均为对角矩阵。
【动态图】(Dynamic Graph) 动态图的每个节点和边都与其产生的时间戳相关联,即存在两个映射函数分别将节点和边映射到它们的时间戳。
- 离散动态图 离散动态图由T个快照{G0,⋯ ,GT}\{G_0,\cdots,G_T\}{G0,⋯,GT}构成,每个快照是在图形成过程中观察到的
2.7 图的计算任务
图的计算任务通常分为两大类:侧重于节点的任务、侧重于图的任务。前者将整个数据表示为一个图,节点作为数据样本;后者将数据看作一组图,每个数据样本是一个图。
2.7.1 侧重于节点的任务
【节点分类】 节点分类的目标是利用图和标签节点的信息,学习一个映射使之能够预测无标签节点的分类
【链接预测】 链接预测的目标是预测最可能存在的链接。待预测的每条边被赋予一个分数值用来表示存在这条边的可能性
2.7.2 侧重于图的任务
【图分类】 图分类的目标为在图数据集上学习一个映射函数,用来预测未标记图的标签
更多推荐
所有评论(0)