《Graph Representation Learning》【8】——Traditional Graph Generation Approaches

Part III Generative Graph Models

8 Traditional Graph Generation Approaches

这一部分主要介绍图生成(graph generation),它和之前介绍的图表示学习不同,但却很相似。既然是图生成,那么我们到底希望生成什么样的图呢?这个问题的答案是显而易见的——生成包含一些理想性质(property)的真实世界的图。
这一章主要介绍传统的图生成方法。

8.1 Overview of Traditional Approaches

传统的方法一般都会指定生成过程(generative progress),它告诉我们如何去生成图中的边。因此,也可以将其看作是告诉我们某条边存在的概率。
主要挑战在于,我们需要找到的一个生成过程,它既要稳定可控(tractable),又能生成包含很多非平凡性质(non-trivial properties)的真实世界的图。

8.2 Erdos-Renyi Model

最著名的ER模型,将所有边出现的概率都设置为一个密度参数 r r r
P ( A [ u , v ] = 1 ) = r ∈ [ 0 , 1 ] P(A[u,v]=1)=r\in [0,1]\\ P(A[u,v]=1)=r[0,1]
它的生成过程十分简单:
(1)确定节点数目和密度参数r
(2)根据公式,采样生成邻接矩阵A
缺点在于,它实在是太简单了,这样会导致它不能捕获一些重要的性质(度分布、社区结构等),所以不能生成真实的图。

8.3 Stochastic Block Models

针对ER模型的缺点,SBM模型进行了改进,它生成具有社区结构的图。
它将图分为了 γ \gamma γ个块 C i \mathcal C_i Ci,并且每个节点属于某个块的概率为 p i p_i pi,块与块之间的节点存在边的概率用一个概率矩阵 C ∈ [ 0 , 1 ] γ × γ C\in [0,1]^{\gamma\times \gamma} C[0,1]γ×γ来表示。
SBM模型的生成过程如下:
(1)根据概率分布 p i p_i pi进行采样,为每个节点u分配一个块 C i \mathcal C_i Ci
(2)根据下面的边概率,采样生成邻接矩阵A。
P ( A [ u , v ] = 1 ) = C [ i , j ] u ∈ C i , v ∈ C j P(A[u,v]=1)=C[i,j]\quad u\in \mathcal C_i,v\in \mathcal C_j\\ P(A[u,v]=1)=C[i,j]uCi,vCj
SBM模型的创新点是,它能够控制不同块之间的边概率、捕捉图中的社区结构,正因如此,生成的图可以显示出社区结构。

8.4 Preferential Attachment

SBM模型的缺点是,它不能捕获单个节点的结构信息(节点的度分布),同一个社区内的节点具有相同的度分布,这和真实世界不符。因此,PA模型针对其缺点进行改进,使其能够捕获真实世界的度分布(degree distribution)这一特征属性。
PA模型假设真实世界的图服从幂律度分布(power law degree distribution):
P ( d u = k ) ∝ k − α , α > 1 P(d_u=k)\propto k^{-\alpha}\quad ,\alpha \gt 1\\ P(du=k)kα,α>1
它的一个重要属性是重尾性(heavy tailed),模拟了真实世界中,有大量低度的节点和极少量高度的节点。
PA模型的生成过程如下:
(1)初始化一个具有 m 0 m_0 m0个节点的全连通图。
(2)在每次迭代过程(iteration t)中,都生成 n − m 0 n-m_0 nm0个新节点。对于每个新生成的节点u,使用以下的概率分布,为其采样m个邻居。
P ( A [ u , v ] = 1 ) = d v ( t ) ∑ k ∈ V ( t ) d k ( t ) P(A[u,v]=1)=\frac{d_v^{(t)}}{\sum_{k\in V^{(t)}}d_k^{(t)}}\\ P(A[u,v]=1)=kV(t)dk(t)dv(t)
可以看出,PA模型的关键思想就是,高度的节点将在迭代的过程中,积累更多的邻居。也验证了一个现象——“富的更富”,也就是说,你用钱生钱,越有钱就越有钱,最终世界上绝大部分的财富都集中在了极少数的人手中了。
还有一点很重要,PA模型的生成过程是迭代的、自回归的,而非一次性生成整张图。这种自回归生成方法也会在后面的深度学习方法中,重新出现。

8.5 Traditional Applications

传统的图生成模型主要有两个主要应用。

Generating synthetic data for benchmarking and analysis tasks
为基准测试和分析任务生成人工合成的数据。

Creating null models
从统计学意义上讲,它们为我们提供了空模型,可以作为我们理解真实世界图的参考点。

猜你喜欢

转载自blog.csdn.net/weixin_41650348/article/details/110792723