图嵌入
0. 前言
图,如社交网络、单词共存网络、通信网络,广泛存在于各种现实应用中。通过对图的分析,我们可以深入了解社会结构、语言和不同交流模式,因此图一直是学界研究的重点。
1. 图分析任务的分类
图分析任务可以大致抽象为以下4类:
-
节点分类
基于其他标记的节点和网络拓扑结构来确定点的标签(label)。
-
链路预测
预测缺失的链路或未来可能出现的链路,即利用当前已获取的网络数据(包含结构信息和属性信息)来预测网络中会出现哪些新的连边。
-
聚类
发现相似节点的子集,并将它们分组。
-
可视化
有助于了解网络结构。
2. 图嵌入概述(Graph Embedding)
-
什么是图嵌入?
真实的图(网络)往往是高维的、难以处理的,图嵌入本质上是一种降维算法,将每个节点的高维的 features 映射到低维的features。
图嵌入首先根据实际问题构造一个 \(\R^D\) 空间的图,然后将图的节点嵌入到 \(\R^d (d << D)\) 空间中。
-
图嵌入的基本思想
嵌入的思想是在向量空间中保持连接的节点彼此靠近。拉普拉斯特征映射和局部线性嵌入是基于这一原理的算法。然而,可伸缩性是这种方法的一个主要问题,它的时间复杂度是 \(O(|V|^2)\) 。
-
相关工作
自2010年以来,关于图嵌入的研究已经转移到解决网络稀疏性的可伸缩图嵌入技术上。例如,图分解(Graph Factorization)使用邻接矩阵的近似分解作为嵌入。LINE扩展了这种方法,并试图保持一阶和二阶近似。HOPE通过使用广义奇异值分解( SVD )分解相似性矩阵而不是邻接矩阵来扩展LINE以试图保持高阶邻近性。SDNE 使用自动编码器嵌入图形节点并捕捉高度非线性的依赖关系。这些新的可扩展方法的时间复杂度为 \(O(|E|)\) 。
-
挑战
如前所述,图嵌入的目标是发现高维图的低维向量表示,而获取图中每个节点的向量表示是十分困难的,并且具有几个挑战,这些挑战一直在推动本领域的研究:
- 属性选择:节点的“良好”向量表示应保留图的结构和单个节点之间的连接。第一个挑战是选择嵌入应该保留的图形属性。考虑到图中所定义的距离度量和属性过多,这种选择可能很困难,性能可能取决于实际的应用场景。
- 可扩展性:大多数真实网络都很大,包含大量节点和边。嵌入方法应具有可扩展性,能够处理大型图。定义一个可扩展的模型具有挑战性,尤其是当该模型旨在保持网络的全局属性时。
- 嵌入的维数:实际嵌入时很难找到表示的最佳维数。例如,较高的维数可能会提高重建精度,但具有较高的时间和空间复杂性。较低的维度虽然时间、空间复杂度低,但无疑会损失很多图中原有的信息。
-
图嵌入的方法
在过去的十年里,在图形嵌入领域已经有了大量的研究,重点是设计新的嵌入算法。发展到现在,大体上可以将这些嵌入方法分为三大类:
- 基于因子分解的方法
- 基于随机游走的方法
- 基于深度学习的方法