其他分享
首页 > 其他分享> > 《Graph Representation Learning》笔记 Chapter2

《Graph Representation Learning》笔记 Chapter2

作者:互联网

目录

节点特征

node degree

最直接的节点特征是 degree ,通常表示为 d u , u ∈ V d_{u}, u∈\mathcal{V} du​,u∈V
d u = ∑ v ∈ V A [ u , v ] . d_{u} = \sum_{v∈\mathcal{V}}{A[u, v]}. du​=v∈V∑​A[u,v].
它简单地计算了节点的边数。

node centrality

一个重要的中心性度量是特征向量中心性 eigenvector centrality ,它考虑了节点邻居的重要性 。通过递归关系定义了节点的中心性 e u e_{u} eu​ ,其中节点的中心度与其邻居的中心度之和成正比
e u = 1 λ ∑ v ∈ V A [ u , v ] e v ∀ u ∈ V e_{u} = \frac{1}{λ}\sum_{v∈\mathcal{V}}{A[u, v]e_{v}} \quad \forall{u∈\mathcal{V}} eu​=λ1​v∈V∑​A[u,v]ev​∀u∈V
其中 λ λ λ 是常数,用 e 作为中心性的向量重写这个方程
λ e = A e λe = Ae λe=Ae
中心性向量 e 对应邻接矩阵 A A A 的一个特征向量,应用Perron-Frobenius定理(任何不可约方阵都有一个唯一的最大实特征值,其对应的特征向量内的元素均正)确定 e 为邻接矩阵最大特征值 λ λ λ 所对应的特征向量。同一网络中邻接矩阵为强连通方阵,故其为不可约方阵,证明可见 定理1
λ λ λ 是 A A A 的主特征值,可以通过幂迭代来计算
e ( t + 1 ) = A e ( t ) e^{(t+1)} = Ae^{(t)} e(t+1)=Ae(t)
如果我们从向量 e ( 0 ) = ( 1 , 1 , . . . , 1 ) T e^{(0)} = (1, 1, ..., 1)^{T} e(0)=(1,1,...,1)T 开始幂迭代,那么我们可以看到,在第一次迭代之后, e ( 1 ) e^{(1)} e(1) 将包含所有节点的 degree 。当 t > 1 t>1 t>1 时 e ( t ) e^{(t)} e(t) 为从某一节点出发,长度小于等于 t t t 的路径数量。

集聚系数 The clustering coefficient

聚类系数描述了与节点 u u u 相邻等等节点抱成团(完全子图)的程度,用 c u c_{u} cu​ 表示
c u = ∣ ( v 1 , v 2 ) ∈ E : v 1 , v 2 ∈ N ( u ) ∣ d u ( d u − 1 ) N ( u ) = { v ∈ V : ( u , v ) ∈ E } c_{u} = \frac{|(v_{1}, v_{2})∈\mathcal{E} : v_{1}, v_{2}∈\mathcal{N}(u)|}{d_{u}(d_{u} - 1)} \\ \mathcal{N}(u) = \{v∈\mathcal{V} : (u, v)∈\mathcal{E}\} cu​=du​(du​−1)∣(v1​,v2​)∈E:v1​,v2​∈N(u)∣​N(u)={v∈V:(u,v)∈E}
分子计算了节点 u u u 邻域的边数,分母计算了 u u u 及其邻域内的节点之间可以连出的最大边数。与书中描述不一样,详见局部集聚系数

图特征

Weisfieler-Lehman kernel

  1. 给每个节点分配一个初始标签 l ( 0 ) ( v ) l^{(0)}(v) l(0)(v) ,标签内的值为节点的特征。
  2. 通过hash(映射函数)节点及其邻域的标签组成的多重集,给每个节点分配一个新标签,并进行迭代
    l ( i ) ( v ) = h a s h ( { { l ( i − 1 ) ( u ) ∀ u ∈ N ( v ) } } ) l^{(i)}(v) = hash(\{\{l^{(i-1)}(u) \quad \forall{u∈\mathcal{N}(v)}\}\}) l(i)(v)=hash({{l(i−1)(u)∀u∈N(v)}})
    双大括号表示多重集,hash函数将每个多重集分别映射成新的标签。

WL核可以通过比较两个图的最终标签集来判定两图是否同构。

邻域重叠检测 Neighborhood Overlap Detection

最简单的邻域重叠度量只计算两节点间共同相邻节点的数量
S [ u , v ] = ∣ N ( u ) ∩ N ( v ) ∣ S[u, v] = |\mathcal{N}(u) ∩ \mathcal{N}(v)| S[u,v]=∣N(u)∩N(v)∣
表示节点 u u u 和 v v v 之间关系的量化。

局部重叠度量 Local overlap measure

S S o r e n s o n [ u , v ] = 2 ∣ N ( u ) ∩ N ( v ) ∣ d u + d v S_{Sorenson}[u, v] = \frac{2|\mathcal{N}(u) ∩ \mathcal{N}(v)|}{d_{u} + d_{v}} SSorenson​[u,v]=du​+dv​2∣N(u)∩N(v)∣​
Sorenson指标通过节点 degree 的总和来标准化共同邻点的个数,否则 degree 大的节点重叠度量将普遍大于 degree 小的节点。
其他相似的方法包括Salton指标和Jaccard指标
S S a l t o n [ u , v ] = 2 ∣ N ( u ) ∩ N ( v ) ∣ s q r t ( d u d v ) S J a c c a r d [ u , v ] = ∣ N ( u ) ∩ N ( v ) ∣ ∣ N ( u ) ∪ N ( v ) ∣ S_{Salton}[u, v] = \frac{2|\mathcal{N}(u) ∩ \mathcal{N}(v)|}{sqrt(d_{u}d_{v})} \\ S_{Jaccard}[u, v] = \frac{|\mathcal{N}(u) ∩ \mathcal{N}(v)|}{|\mathcal{N}(u) ∪ \mathcal{N}(v)|} SSalton​[u,v]=sqrt(du​dv​)2∣N(u)∩N(v)∣​SJaccard​[u,v]=∣N(u)∪N(v)∣∣N(u)∩N(v)∣​
也有一些方法考虑了共同邻点的重要性,如Resource Allocation(RA)指标计算共同邻点 degree 的倒数
S R A [ v 1 , v 2 ] = ∑ u ∈ N ( v 1 ) ∩ N ( v 2 ) 1 d u S_{RA}[v_{1}, v_{2}] = \sum_{u∈\mathcal{N}(v_{1})∩\mathcal{N}(v_{2})}{\frac{1}{d_{u}}} SRA​[v1​,v2​]=u∈N(v1​)∩N(v2​)∑​du​1​
Adamic-Adar(AA)指标使用 degree 的对数倒数来执行相似的计算
S A A [ v 1 , v 2 ] = ∑ u ∈ N ( v 1 ) ∩ N ( v 2 ) 1 l o g ( d u ) S_{AA}[v_{1}, v_{2}] = \sum_{u∈\mathcal{N}(v_{1})∩\mathcal{N}(v_{2})}{\frac{1}{log(d_{u})}} SAA​[v1​,v2​]=u∈N(v1​)∩N(v2​)∑​log(du​)1​

全局重叠度量 Global overlap measure

Kate index

Kate指标计算两节点之间的所有路径
S K a t e [ u , v ] = ∑ i = 1 ∞ β i A i [ u , v ] S_{Kate}[u, v] = \sum_{i=1}^{∞}{β^{i}A^{i}[u, v]} SKate​[u,v]=i=1∑∞​βiAi[u,v]
β ∈ R + , β < m i n ( 1 , 1 λ 1 ) β∈\mathbb{R}^{+}, β < min(1, \frac{1}{λ_{1}}) β∈R+,β<min(1,λ1​1​) 是一个用户定义的参数,为了控制短路径和长路径的权重,路径越长权重越小, λ 1 λ_{1} λ1​ 是 A A A 的最大特征值。
根据定理1(见文末)
S K a t e = ( I − β A ) − 1 − I S_{Kate} = (I-βA)^{-1} - I SKate​=(I−βA)−1−I

Leicht, Holme, and Newman(LHN) similarity

当考虑高 degree 节点时,Kate指标通常会给出更高的分数。为了减轻 degree 的影响,Leicht等人采用两节点间实际观测到的路径数和期望的路径数之比
A i E [ A i ] \frac{A^{i}}{\mathbb{E}[A^{i}]} E[Ai]Ai​
为了计算期望 E [ A i ] \mathbb{E}[A^{i}] E[Ai] ,我们绘制一个与给定图各节点 degree 相同的随机图。
在这个随机图中,一条路径存在的可能性可以看作有 d u d_{u} du​ 条边离开节点 u u u ,每条边有 d v 2 ∣ E ∣ \frac{d_{v}}{2|\mathcal{E}|} 2∣E∣dv​​ 的可能性到达节点 v v v ,即
E [ A [ u , v ] ] = d u d v 2 ∣ E ∣ \mathbb{E}[A[u, v]] = \frac{d_{u}d_{v}}{2|\mathcal{E}|} E[A[u,v]]=2∣E∣du​dv​​
当计算长度为2的路径时,其存在的可能性可以看作从节点 v 1 v_{1} v1​ 出发到达节点 u u u 的概率 d v 1 d u 2 ∣ E ∣ \frac{d_{v1}d_{u}}{2|\mathcal{E}|} 2∣E∣dv1​du​​ 乘以节点 u u u 出发到达节点 v 2 v_{2} v2​ 的概率 d v 2 ( d u − 1 ) 2 ∣ E ∣ \frac{d_{v2}(d_{u}-1)}{2|\mathcal{E}|} 2∣E∣dv2​(du​−1)​ ( d u − 1 d_{u}-1 du​−1 是因为节点 v 1 v_{1} v1​ 到达节点 u u u 时已经占据了 u u u 的一条边),即
E [ A 2 [ v 1 , v 2 ] ] = d v 1 d v 2 ( 2 ∣ E ∣ ) 2 ∑ u ∈ V ( d u − 1 ) d u \mathbb{E}[A^{2}[v_{1}, v_{2}]] = \frac{d_{v1}d_{v2}}{(2|\mathcal{E}|)^{2}}\sum_{u∈\mathcal{V}}{(d_{u} - 1)d_{u}} E[A2[v1​,v2​]]=(2∣E∣)2dv1​dv2​​u∈V∑​(du​−1)du​
但是当 i > 2 i>2 i>2 时,路径的期望难以计算。依赖于最大特征值可用于近似路径数量增长的事实,我们定义向量 p i ∈ R ∣ V ∣ p_{i} ∈ \mathbb{R}^{|\mathcal{V}|} pi​∈R∣V∣ 代表节点 u u u 和所有其他节点之间的长度为 i i i 的路径数量
p i = A i v p_{i} = A^{i}v pi​=Aiv
其中,向量 v v v 除了 v [ i ] = 1 v[i] = 1 v[i]=1 其余元素全为0, p i p_{i} pi​ 将最终收敛到邻接矩阵的主特征向量(幂迭代),因此
p i + 1 = λ 1 p i p_{i+1} = λ_{1}p_{i} pi+1​=λ1​pi​
其中, λ 1 λ_{1} λ1​ 是 A A A 的最大特征值,因此
E [ A i [ u , v ] ] = d u d v λ 1 i − 1 2 ∣ E ∣ \mathbb{E}[A^{i}[u, v]] = \frac{d_{u}d_{v}λ_{1}^{i-1}}{2|\mathcal{E}|} E[Ai[u,v]]=2∣E∣du​dv​λ1i−1​​
最终,LNH指标表示为
S L N H [ u , v ] = I [ u , v ] + 2 ∣ E ∣ d u d v ∑ i = 1 ∞ β i λ 1 1 − i A i [ u , v ] S_{LNH}[u, v] = I[u, v] + \frac{2|\mathcal{E}|}{d_{u}d_{v}}\sum_{i=1}^{\infty}{β^{i}λ_{1}^{1-i}A^{i}[u, v]} SLNH​[u,v]=I[u,v]+du​dv​2∣E∣​i=1∑∞​βiλ11−i​Ai[u,v]
其中, I I I 使 S L N H [ u , u ] = 1 S_{LNH}[u, u]=1 SLNH​[u,u]=1 ,且不对其他部分产生影响。
根据定理1(见文末)
S L N H = I + 2 ∣ E ∣ λ 1 d u d v ∑ i = 1 ∞ ( β λ 1 A ) i = 2 ∣ E ∣ λ 1 D − 1 ( I − β λ 1 A ) − 1 D − 1 \begin{aligned} S_{LNH} & = I + \frac{2|\mathcal{E}|λ_{1}}{d_{u}d_{v}}\sum_{i=1}^{\infty}{(\frac{β}{λ_{1}}A)^{i}} \\ &= 2|\mathcal{E}|λ_{1}D^{-1}(I-\frac{β}{λ_{1}}A)^{-1}D^{-1} \end{aligned} SLNH​​=I+du​dv​2∣E∣λ1​​i=1∑∞​(λ1​β​A)i=2∣E∣λ1​D−1(I−λ1​β​A)−1D−1​
其中 D D D 为对角线为 node degree 的矩阵。

随机游走法 Random walk methods

该方法起源于Personalized PageRank方法,用于量化互联网网页的重要程度。定义随机矩阵 P = A D − 1 P=AD^{-1} P=AD−1 表示从某一节点出发到达另一节点的期望,计算
q u = c P q u + ( 1 − c ) e u = ( 1 − c ) ( I − c P ) − 1 e u \begin{aligned} q_{u} &= cPq_{u} + (1-c)e_{u} \\ &= (1-c)(I-cP)^{-1}e_{u} \end{aligned} qu​​=cPqu​+(1−c)eu​=(1−c)(I−cP)−1eu​​
其中 e u e_{u} eu​ 表示上文提到的节点中心性向量, q u q_{u} qu​ 表示从节点 u u u 开始随机游走到其他节点的稳态概率的向量,这个概率由两部分组成,式中第一项表示根据路径进行转移访问的概率(通过网页 u u u 提供的的链接转移访问网页 v v v),第二项表示直接访问某一节点的概率(直接输入网址访问网页 v v v), c c c 为转移概率。
两节点的相似度与其互相随机游走到达彼此的概率成正比,因此定义节点间的随机游走相似性度量为
S R W [ u , v ] = q u [ v ] + q v [ u ] S_{RW}[u, v] = q_{u}[v] + q_{v}[u] SRW​[u,v]=qu​[v]+qv​[u]

Graph Laplacians and Spectral Methods

Graph Laplacians

unnormalized Laplacian

最基本的拉普拉斯矩阵是未标准化的,定义为
L = D − A L = D - A L=D−A
其中, A A A 是邻接矩阵, D D D 是度矩阵(对角线为 node degree 的矩阵)。简单图的拉普拉斯矩阵由一些重要的特性

  1. 拉普拉斯矩阵是对称( L T = L L^{T} = L LT=L )且半正定的( x T L x ≥ 0 , ∀ x ∈ R ∣ V ∣ x^{T}Lx ≥ 0, \forall{x ∈ \mathbb{R}^{|\mathcal{V}|}} xTLx≥0,∀x∈R∣V∣ )。
  2. 对于 ∀ x ∈ R ∣ V ∣ \forall{x} ∈ \mathbb{R}^{|\mathcal{V}|} ∀x∈R∣V∣
    x T L x = x T D x − x T A x = ∑ u x [ u ] 2 D [ u , u ] − ∑ u x [ u ] ∑ v A [ u , v ] x [ v ] = 1 2 ( 2 ∑ u x [ u ] 2 D [ u , u ] − 2 ∑ u ∑ v x [ u ] A [ u , v ] x [ v ] ) = 1 2 ( ∑ u x [ u ] 2 D [ u , u ] − 2 ∑ u ∑ v x [ u ] A [ u , v ] x [ v ] + ∑ v x [ v ] 2 D [ v , v ] ) = 1 2 ( ∑ u ∑ v x [ u ] 2 A [ u , v ] − 2 ∑ u ∑ v x [ u ] A [ u , v ] x [ v ] + ∑ u ∑ v x [ v ] 2 A [ u , v ] ) = 1 2 ∑ u ∑ v A [ u , v ] ( x [ u ] − x [ v ] ) 2 = ∑ ( u , v ) ∈ E ( x [ u ] − x [ v ] ) 2 ≥ 0 \begin{aligned} x^{T}Lx &= x^{T}Dx - x^{T}Ax \\ &= \sum_{u}{x[u]^{2}D[u, u]} - \sum_{u}{x[u]\sum_{v}{A[u, v]x[v]}} \\ &= \frac{1}{2}(2\sum_{u}{x[u]^{2}D[u, u]} - 2\sum_{u}\sum_{v}{x[u]A[u, v]x[v]}) \\ &= \frac{1}{2}(\sum_{u}{x[u]^{2}D[u, u]} - 2\sum_{u}\sum_{v}{x[u]A[u, v]x[v]} + \sum_{v}{x[v]^{2}D[v, v]}) \\ &= \frac{1}{2}(\sum_{u}\sum_{v}{x[u]^{2}A[u, v]} - 2\sum_{u}\sum_{v}{x[u]A[u, v]x[v]} + \sum_{u}\sum_{v}{x[v]^{2}A[u, v]}) \\ &= \frac{1}{2}\sum_{u}\sum_{v}{A[u, v](x[u] - x[v])^{2}} \\ &= \sum_{(u, v) ∈ \mathcal{E}}{(x[u] - x[v])^{2}} ≥ 0 \end{aligned} xTLx​=xTDx−xTAx=u∑​x[u]2D[u,u]−u∑​x[u]v∑​A[u,v]x[v]=21​(2u∑​x[u]2D[u,u]−2u∑​v∑​x[u]A[u,v]x[v])=21​(u∑​x[u]2D[u,u]−2u∑​v∑​x[u]A[u,v]x[v]+v∑​x[v]2D[v,v])=21​(u∑​v∑​x[u]2A[u,v]−2u∑​v∑​x[u]A[u,v]x[v]+u∑​v∑​x[v]2A[u,v])=21​u∑​v∑​A[u,v](x[u]−x[v])2=(u,v)∈E∑​(x[u]−x[v])2≥0​
  3. L L L 有 ∣ V ∣ |\mathcal{V}| ∣V∣ 个非负特征值: 0 = λ ∣ V ∣ ≤ λ ∣ V ∣ − 1 ≤ . . . ≤ λ 1 0 = λ_{|\mathcal{V}|} ≤ λ_{|\mathcal{V}|-1} ≤ ... ≤ λ_{1} 0=λ∣V∣​≤λ∣V∣−1​≤...≤λ1​

Normalized Laplacians

介绍两种标准化方法,其中对称标准化拉普拉斯矩阵被定义为
L s y m = D − 1 2 L D − 1 2 L_{sym} = D^{-\frac{1}{2}}LD^{-\frac{1}{2}} Lsym​=D−21​LD−21​
随机游走(random walk)拉普拉斯矩阵被定义为
L R W = D − 1 L L_{RW} = D^{-1}L LRW​=D−1L
这些标准化方法只改变了代数性质。

Graph Cuts and Clustering

图分割 Graph cuts

设 A ⊂ V \mathcal{A} \subset \mathcal{V} A⊂V 代表图中节点的子集, A ˉ \bar{\mathcal{A}} Aˉ 为该子集的补集。将图分割成 K K K 个不重合的子集 A 1 , . . . , A k \mathcal{A}_1, ..., \mathcal{A}_k A1​,...,Ak​ ,定义分割量化指标为
c u t ( A 1 , . . . , A k ) = 1 2 ∑ k = 1 K ∣ ( u , v ) ∈ E : u ∈ A k , v ∈ A ˉ k ∣ cut(\mathcal{A}_1, ..., \mathcal{A}_k) = \frac{1}{2}\sum_{k = 1}^{K}{|(u, v) ∈ \mathcal{E} : u ∈ \mathcal{A}_k, v ∈ \bar{\mathcal{A}}_k|} cut(A1​,...,Ak​)=21​k=1∑K​∣(u,v)∈E:u∈Ak​,v∈Aˉk​∣
这个指标简单的计算了不同子集及其补集在边界的边缘数,我们需要最小化这个量化指标进行切割,但是这种方法会使切割后的子集趋向于仅包含一个节点。
为了使每个子集具有合理的大小, Ratio Cut 被提出,惩罚了较小的子集
R a t i o C u t ( A 1 , . . . , A k ) = 1 2 ∑ k = 1 K ∣ ( u , v ) ∈ E : u ∈ A k , v ∈ A ˉ k ∣ ∣ A k ∣ RatioCut(\mathcal{A}_1, ..., \mathcal{A}_k) = \frac{1}{2}\sum_{k = 1}^{K}{\frac{|(u, v) ∈ \mathcal{E} : u ∈ \mathcal{A}_k, v ∈ \bar{\mathcal{A}}_k|}{|\mathcal{A}_k|}} RatioCut(A1​,...,Ak​)=21​k=1∑K​∣Ak​∣∣(u,v)∈E:u∈Ak​,v∈Aˉk​∣​
还有一种解决方法是最小化 Normalized Cut (NCut) ,它会使分割后的子集内部具有差不多的边缘
N C u t ( A 1 , . . . , A k ) = 1 2 ∑ k = 1 K ∣ ( u , v ) ∈ E : u ∈ A k , v ∈ A ˉ k ∣ ∑ u ∈ A k d u NCut(\mathcal{A}_1, ..., \mathcal{A}_k) = \frac{1}{2}\sum_{k = 1}^{K}{\frac{|(u, v) ∈ \mathcal{E} : u ∈ \mathcal{A}_k, v ∈ \bar{\mathcal{A}}_k|}{\sum_{u ∈ \mathcal{A}_k}{d_{u}}}} NCut(A1​,...,Ak​)=21​k=1∑K​∑u∈Ak​​du​∣(u,v)∈E:u∈Ak​,v∈Aˉk​∣​

Approximating the RatioCut with the Laplacian spectrum

以下讨论将图分割成两个子集的情况,我们的目标是解决如下优化问题
min ⁡ A ∈ V R a t i o C u t ( A , A ˉ ) \min_{\mathcal{A} ∈ \mathcal{V}}{RatioCut(\mathcal{A}, \bar{\mathcal{A}})} A∈Vmin​RatioCut(A,Aˉ)
定义向量 a ∈ R ∣ V ∣ a ∈ \mathbb{R}^{|\mathcal{V}|} a∈R∣V∣
a [ u ] = { ∣ A ˉ ∣ A , i f   u ∈ A − ∣ A ∣ ∣ A ˉ ∣ , i f   u ∈ A ˉ a T L a = 1 2 ∑ u , v A [ u , v ] ( a [ u ] − a [ v ] ) 2 = 1 2 ∑ u ∈ A , v ∈ A ˉ A [ u , v ] ( a [ u ] − a [ v ] ) 2 + 1 2 ∑ u ∈ A ˉ , v ∈ A A [ u , v ] ( a [ u ] − a [ v ] ) 2 = c u t ( A , A ˉ ) ( ∣ A ˉ ∣ A + ∣ A ∣ ∣ A ˉ ∣ + 2 ) = c u t ( A , A ˉ ) ( ∣ A ∣ + ∣ A ˉ ∣ ∣ A ˉ ∣ + ∣ A ∣ + ∣ A ˉ ∣ ∣ A ∣ ) = ∣ V ∣ R a t i o c u t ( A , A ˉ ) a[u] = \begin{cases} \sqrt{\frac{|\bar{\mathcal{A}}|}{\mathcal{A}}}, & if \ u ∈ \mathcal{A} \\ -\sqrt{\frac{|\mathcal{A}|}{|\bar{\mathcal{A}}|}}, & if \ u ∈ \bar{\mathcal{A}} \end{cases} \\ \begin{aligned} a^{T}La &= \frac{1}{2}\sum_{u, v}{A[u, v](a[u] - a[v])^{2}} \\ &= \frac{1}{2}\sum_{u ∈ \mathcal{A}, v ∈ \bar{\mathcal{A}}}{A[u, v](a[u] - a[v])^{2}} + \frac{1}{2}\sum_{u ∈ \bar{\mathcal{A}}, v ∈ \mathcal{A}}{A[u, v](a[u] - a[v])^{2}} \\ &= cut(\mathcal{A}, \bar{\mathcal{A}})(\frac{|\bar{\mathcal{A}}|}{\mathcal{A}} + \frac{|\mathcal{A}|}{|\bar{\mathcal{A}}|} + 2)\\ &= cut(\mathcal{A}, \bar{\mathcal{A}})(\frac{|\mathcal{A}| + |\bar{\mathcal{A}}|}{|\bar{\mathcal{A}}|} + \frac{|\mathcal{A}| + |\bar{\mathcal{A}}|}{|\mathcal{A}|}) \\ &= |\mathcal{V}|Ratiocut(\mathcal{A}, \bar{\mathcal{A}}) \end{aligned} a[u]=⎩⎨⎧​A∣Aˉ∣​ ​,−∣Aˉ∣∣A∣​ ​,​if u∈Aif u∈Aˉ​aTLa​=21​u,v∑​A[u,v](a[u]−a[v])2=21​u∈A,v∈Aˉ∑​A[u,v](a[u]−a[v])2+21​u∈Aˉ,v∈A∑​A[u,v](a[u]−a[v])2=cut(A,Aˉ)(A∣Aˉ∣​+∣Aˉ∣∣A∣​+2)=cut(A,Aˉ)(∣Aˉ∣∣A∣+∣Aˉ∣​+∣A∣∣A∣+∣Aˉ∣​)=∣V∣Ratiocut(A,Aˉ)​
注意: A A A 为邻接矩阵, A \mathcal{A} A 为分割后的子集。
a a a 有两个重要的特性

  1. ∑ u ∈ V a u = ∣ A ∣ ∣ A ˉ ∣ A − ∣ A ˉ ∣ ∣ A ∣ ∣ A ˉ ∣ = 0 ⇔ a ⊥ [ 1 , 1 , . . . , 1 ] \sum_{u ∈ \mathcal{V}}{a_{u}} = |\mathcal{A}|\sqrt{\frac{|\bar{\mathcal{A}}|}{\mathcal{A}}} - |\bar{\mathcal{A}}|\sqrt{\frac{|\mathcal{A}|}{|\bar{\mathcal{A}}|}} = 0 \Leftrightarrow a \perp [1, 1, ..., 1] ∑u∈V​au​=∣A∣A∣Aˉ∣​ ​−∣Aˉ∣∣Aˉ∣∣A∣​ ​=0⇔a⊥[1,1,...,1]
  2. ∣ ∣ a ∣ ∣ 2 = ∣ A ∣ ∣ A ˉ ∣ ∣ A ∣ + ∣ A ˉ ∣ ∣ A ∣ ∣ A ˉ ∣ = ∣ V ∣ ||a||^{2} = |\mathcal{A}|\frac{|\bar{\mathcal{A}}|}{|\mathcal{A}|} + |\bar{\mathcal{A}}|\frac{|\mathcal{A}|}{|\bar{\mathcal{A}}|} = |\mathcal{V}| ∣∣a∣∣2=∣A∣∣A∣∣Aˉ∣​+∣Aˉ∣∣Aˉ∣∣A∣​=∣V∣

松弛 A ∈ V \mathcal{A} ∈ \mathcal{V} A∈V 这个离散条件,优化目标变为
min ⁡ a ∈ R ∣ V ∣ a T L a \min_{a ∈ \mathbb{R}^{|\mathcal{V}|}}{a^{T}La} a∈R∣V∣min​aTLa
根据Rayleigh-Ritz定理,其解为 L L L 的第二小特征值对应的特征向量。为了将这个实值向量 a a a 转化为离散的子集分配,可以根据 a [ u ] a[u] a[u] 的符号来划分子集。
{ u ∈ A i f   a [ u ] ≥ 0 u ∈ A ˉ i f   a [ u ] < 0 \begin{cases} u ∈ \mathcal{A} & if \ a[u] ≥ 0 \\ u ∈ \bar{\mathcal{A}} & if \ a[u] < 0 \end{cases} {u∈Au∈Aˉ​if a[u]≥0if a[u]<0​

Generalized spectral clustering

上述结论可以扩展至任意 K K K 个子集,流程如下

  1. 计算 L L L 的最小的 K K K 个特征值对应的特征向量 e ∣ V ∣ − 1 , e ∣ V ∣ − 2 , . . . , e ∣ V ∣ − K e_{|\mathcal{V}| - 1}, e_{|\mathcal{V}| - 2}, ..., e_{|\mathcal{V}| - K} e∣V∣−1​,e∣V∣−2​,...,e∣V∣−K​ 。
  2. 将步骤1所得的特征向量按列拼接成矩阵 U ∈ R ∣ V ∣ × ( K − 1 ) U ∈ \mathbb{R}^{|\mathcal{V}|×(K-1)} U∈R∣V∣×(K−1) 。
  3. 用矩阵 U U U 中对应的行来表示每个节点
    z u = U [ u ] ∀ u ∈ V z_u = U[u] \quad \forall u ∈ \mathcal{V} zu​=U[u]∀u∈V
  4. 使用 K-means 算法对 embeddings z u z_{u} zu​ 聚类

定理1

如果 X X X 为一个实数方阵, λ 1 < 1 λ_{1} < 1 λ1​<1 代表 X X X 的最大特征值,并且 ( I − X ) (I-X) (I−X) 是非奇异矩阵,那么
( I − X ) − 1 = ∑ i = 0 ∞ X i (I-X)^{-1} = \sum_{i=0}^{∞}{X^{i}} (I−X)−1=i=0∑∞​Xi
证明:设 s n = ∑ i = 0 n X i s_{n} = \sum_{i=0}^{n}{X^{i}} sn​=∑i=0n​Xi ,则
X s n = X ∑ i = 0 n X i = ∑ i = 1 n + 1 X i s n − X s n = ∑ i = 0 n X i − ∑ i = 1 n + 1 X i ( I − X ) s n = X 0 − X n + 1 s n = ( I − X ) − 1 ( I − X n + 1 ) \begin{aligned} Xs_{n} &= X\sum_{i=0}^{n}{X^{i}} \\ &= \sum_{i=1}^{n+1}{X^{i}} \\ s_{n} - Xs_{n} &= \sum_{i=0}^{n}{X^{i}} - \sum_{i=1}^{n+1}{X^{i}} \\ (I - X)s_{n} &= X^{0} - X^{n+1} \\ s_{n} &= (I - X)^{-1}(I - X^{n+1}) \end{aligned} Xsn​sn​−Xsn​(I−X)sn​sn​​=Xi=0∑n​Xi=i=1∑n+1​Xi=i=0∑n​Xi−i=1∑n+1​Xi=X0−Xn+1=(I−X)−1(I−Xn+1)​
因为 λ 1 < 1 λ_{1} < 1 λ1​<1 ,可知 lim ⁡ n → ∞ X n = 0 \lim_{n \to \infty}{X^{n}} = 0 limn→∞​Xn=0 ,所以
lim ⁡ n → ∞ s n = lim ⁡ n → ∞ ( I − X ) − 1 ( I − X n + 1 ) = ( I − X ) − 1 \begin{aligned} \lim_{n \to \infty}{s_{n}} &= \lim_{n \to \infty}{(I-X)^{-1}(I-X^{n+1})} \\ &= (I-X)^{-1} \end{aligned} n→∞lim​sn​​=n→∞lim​(I−X)−1(I−Xn+1)=(I−X)−1​

定理2

拉普拉斯矩阵 L L L 的特征值为0的个数与图中连通部分的个数相等。
证明:对于特征值0的任何特征向量 e e e
e T L e = 0 e^{T}Le = 0 eTLe=0
因此
∑ ( u , v ) ∈ E ( e [ u ] − e [ v ] ) 2 = 0 \sum_{(u, v) ∈ \mathcal{E}}{(e[u] - e[v])^{2}} = 0 (u,v)∈E∑​(e[u]−e[v])2=0
可知,对于同一连通部分中所有节点 u u u , e [ u ] e[u] e[u] 相同。当图全连接时, e [ u ] e[u] e[u] 全为1,只有一个特征值为0。
当图中有 K K K 个连通部分时,拉普拉斯矩阵表示为
L = [ L 1 L 2 ⋱ L K ] L = \left[ \begin{matrix} L_{1} & & & \\ & L_{2} & & \\ & & \ddots & \\ & & & L_{K} \end{matrix} \right] L=⎣⎢⎢⎡​L1​​L2​​⋱​LK​​⎦⎥⎥⎤​
每个 L K L_{K} LK​ 都是全连接子图,都有唯一的特征值0。

标签:bar,frac,Graph,sum,Chapter2,Learning,mathcal,du,节点
来源: https://blog.csdn.net/weixin_43269419/article/details/120381645