GRADE:联合学习演化节点和社区表示的概率生成模型

作者 | 李梓盟

审稿 | 董靖鑫

今天给大家介绍加拿大蒙特利尔大学的著名学者唐建等人发表的一篇文章。作者在文章中针对现有的图动力学建模方法不能明确地捕捉到时间上的社区动态这一问题,提出了通过在轨迹上施加随机游走来学习生成不断发展的节点和社区表示的概率模型-GRADE。同时该模型还学习了通过过渡矩阵在时间步长之间进行更新的节点社区成员身份。实验表明,GRADE在动态链接预测中达到或超过基线模型,在动态社区发现方面显示出良好的性能,并且能识别出连贯且可解释的不断发展的社区。

GRADE:联合学习演化节点和社区表示的概率生成模型_第1张图片

1

介绍

由于在各种基于交互的网络(例如社交和通信网络,生物信息学和关系知识图)中有着广泛的应用,基于图结构数据的表示学习已经引起了机器学习界的极大兴趣。开发无监督图表示学习的方法具有很大的挑战性,因为它需要在低维嵌入中汇总图结构信息,然后这些表示可用于例如节点分类,链接预测和社区发现的下游任务。大多数无监督的图表示学习方法仅专注于静态非演化图,而许多现实世界的网络则表现出复杂的时间行为。为了解决对关系数据的时间模式进行编码的挑战,现有的动态图嵌入方法广泛关注于捕获节点演化。尽管这些方法相对于动态任务的静态基准而言取得了令人信服的结果,但它们并不适合捕获像节点或社区集群这样的图形级的演变结构。同时,在大规模脑网络的时间组织中出现的进化节点簇模式在社交网络中也引起了极大的兴趣。

为了解决上述问题,作者提出了GRADE(图形动态嵌入)-一种用于联合学习演化节点和社区表示的概率生成模型。先前研究表明了在静态表示中的图表示学习建模节点与社区之间交互的好处,以及诸如社区之类的高阶图结构可以增强对突发动态行为进行建模的能力。因此,在GRADE中作者将在vGraph中提出的对节点-社区交互进行建模的思想扩展到了动态案例。除此之外,作者假设社区的语义含义以及每个节点在社区中的比例随时间同时演变。遵循了一种动态主题建模中引入的先前方法,通过在时间步长之间的表示之前假设随机游走来编码方法中的时间演变。作者还从社交网络中汲取了灵感,通过引入特定于节点且随时间变化的过渡矩阵来随时间更新社区混合系数,显式地为社区成员资格的动态建模。作者通过变分推理来学习模型的参数,以最大化观测数据的下限。

2

模型

GRADE  GRADE是一种用于对动态图中的边生成过程进行建模的概率方法,图1为GRADE的盘子表示法。作者采用vGraph的方法将Gt的活动顶点集中的每个节点w表示为社区的混合,每个社区表示为节点上的多项式分布。每个时间步长t的链接邻居生成如下:首先,作者从社区z〜p(z | w)上的条件先验分布中采样社区分配z。然后,根据分配的社区定义的社会环境,从节点生成分布c〜p(c | z)中提取邻居。图快照Gt的生成过程可以表示为:

其中θt和πt分别参数化了时间步长t处的多项式生成分布和先验分布。在所提出的动态图模型中,作者假设社区的语义含义以及节点的社区比例随时间而变化。这需要通过一组不断发展的参数来捕获基础节点和社区分布的时间演变。GRADE通过使这些参数隐式依赖于不断发展的节点和社区嵌入φ和β来实现这一目标。更具体地说,作者将社区和节点表示形式视为随机变量,并施加了一个简单的状态空间模型,该模型在时间步长之间随高斯噪声而平滑地演化,如下所示:

GRADE:联合学习演化节点和社区表示的概率生成模型_第2张图片

尽管GRADE允许在每个时间步长出现节点的子集,但作者在每个时间步长都演化了完整顶点集V的嵌入。时间平滑度超参数γ和σ控制时间动态的速率。通过首先通过神经网络转换社区表示,然后通过softmax层映射输出,来实现生成分布的参数化。为了发展节点的社区混合权重,作者观察到用户对社交网络的兴趣随时间而变化,英雌用户可能会从一个社区转移到另一个社区,其特点是在社区发展的更广泛范围内具有特定于用户的行为。由于这些原因,作者使用过渡矩阵显式地为社区过渡建模。更具体地说,对于每个节点vi,我们通过K×K特定于节点的时变过渡矩阵Ati来更新社区混合权重πti,该矩阵作为节点嵌入的函数ψ生成:

GRADE:联合学习演化节点和社区表示的概率生成模型_第3张图片

图1:Plate notation for GRADE

推论算法

GRADE:联合学习演化节点和社区表示的概率生成模型_第4张图片

3

实验

作者根据最新的基准对动态链接预测和动态社区发现的任务来评估GRADE。此外,作者还提出了一种量化指标,以评估所学的不断演化的社区的质量,并为定性评估提供可视化效果。作者使用基于DBLP,IMDb和Reddit数据集的三个离散时间动态网络来评估所提出的方法

GRADE:联合学习演化节点和社区表示的概率生成模型_第5张图片

作者将GRADE与包含三种静态方法和两种动态方法的五个基准进行比较,静态方法是:DeepWalk node2vec和vGraph,动态图方法包括:DynamicTriad和DySAT。作者采用了动态链接预测和动态社区发现二个任务来评估相关模型。

在动态链接预测中,对于所有基线方法,在执行每种方法之后,作者使用节点表示之间的相似性度量(欧式距离或点积)作为连通性的预测指标。对于静态方法,作者将训练集中的所有观察到的边汇总在单个图中,以生成节点嵌入,对于动态基线,使用最后训练步骤的顶点表示。对于GRADE,作者训练模型,并在测试时间步长推断节点和社区表示的后验分布,使用度量平均等级(MAR)评估动态链接预测性能。在动态社区发现中,作者通过在训练时间步长上训练模型来利用历史信息,并根据测试集中的边缘来推断非重叠社区,使用标准化互信息(NMI)和模块化来评估此任务的性能。此外,GRADE的一种新颖应用是预测社区规模的动态,通过推断测试时间步长的社区表示形式(即每个社区的节点上的后多项式分布)并生成最可能节点的排名来证明这种能力,预测对给定社区具有高概率的顶点也应该是其结构的组成部分。作者通过计算社区k中前250个顶点的预测节点概率与相同节点的中心性之间的Spearman秩相关系数来评估此任务的性能,该概率由测试中分配给同一社区k的顶点的链接数来衡量组。

下表总结了动态链接预测的结果,GRADE在DBLP和Reddit数据集上明显优于其他基线模型,并在IMDb上达到了与基线相当的结果。此外,为了检查GRADE是否捕获了真实的社区和节点动态,作者将训练集中的图序列随机化,同时在验证和测试集中保留真实顺序。在所有数据集上进行随机化之后,观察到明显的降级,这表明GRADE可以识别时间演化的模式,而不是学习聚合的图形表示。

下表中显示了动态社区发现和预测社区规模动态的结果。在这些任务中,GRADE的性能也明显优于DBLP和Reddit数据集上的所有基线方法。结果表明,GRADE在将来的测试时间步骤中推断节点和社区表示的能力有助于提高性能,这与在最后训练步骤中将学习到的嵌入用于预测的其他动态基线形成对比。作者还观察到在某些随机图上训练GRADE可以在某些任务上获得与真实序列相当的性能,例如DBLP上的NMI和Reddit上的模块化。同时,作者提出在真实序列上训练GRADE与训练图随机化相比,始终能产生相同或更好的性能,因此证实了GRADE能勾捕获了时间动态模式。

4

总结

在本文中,作者提出了GRADE-一种在离散时间动态图中共同学习进化节点和社区表示的方法。作者通过边缘生成机制来实现这一点,该机制通过节点和社区多项式分布对局部和全局图结构之间的交互进行建模,并使用学习到的嵌入参数化这些分布,以及高斯状态空间模型随时间演化它们。此外,作者引入过渡矩阵来显式捕获节点社区动态。最后,作者在真实数据集上验证了GRADE在动态链接预测,动态社区发现和预测社区规模动态这一新颖任务的有效性,即推断未来在结构上具有影响力的顶点。

数据集

DBLP: https://www.aminer.cn/citation

IMDb: https://datasets.imdbws.com/

Reddit: https://snap.stanford.edu/conflict/

参考资料

https://arxiv.org/pdf/2007.08060

你可能感兴趣的:(大数据,python,机器学习,人工智能,深度学习)