“REGAL: Representation Learning-based Graph Alignment”
针对场景、问题
-
网络对齐,不同网络之间识别相应节点
-
现有的表征学习方法:1.依赖于单个图中节点的邻近性,产生的嵌入在不相交的网络中不具可比性。2.通常涉及一些程序随机性(如随机漫步),这在嵌入学习中引入了差异,即使在一个网络中也是如此
-
问题:学习节点表示,推断两个网络之间的节点映射
主要finding
-
第一次将无监督图对齐问题表述为学习和匹配节点表征的问题
-
首个使用 SGNS(skip-gram with negative sampling)捕捉结构标识的节点嵌入的方法
要点
-
RECAL
“REpresentation learning-based Graph ALignment” (pdf)
-
“leverages the power of automaticallylearned node representations to match nodes across different graphs” (Heimann 等, 2018, p. 117) (pdf) 🔤利用自动学习的节点表征功能来匹配不同图中的节点🔤
-
采用的方法是表示学习(通过学习节点或边的嵌入表示来捕捉图结构信息的方法)
-
对齐节点的潜在特征
-
具体步骤
-
节点身份提取:第一步提取所有 n 个节点的结构和属性相关信息。
-
基于相似性的高效表示:第二步获取节点嵌入,概念上是通过对上一步节点标识的相似性矩阵进行因式分解。为了避免昂贵的成对节点相似性计算和显式因式分解,扩展了低阶矩阵近似的 Nyström 方法,通过以下方式进行隐式相似性矩阵因式分解:(a)
-
只将每个节点的相似性与 p ≪ n 个 "地标 "节点的样本进行比较;(b) 利用这些节点到地标的相似性,通过其低阶近似的分解来构建我们的表示。
-
快速节点表示对齐:最后,通过贪婪地匹配嵌入与高效的数据结构来对齐图之间的节点,这种数据结构可以快速识别来自其他图的α最相似的嵌入。
-
-
-
“xNetMF” (pdf)
“Cross-Network Matrix Factorization” (pdf) 跨网络矩阵因式分解
-
n elegant and principled node embedding formulation that uniquely generalizes to multi-network problems.”节点嵌入公式
-
保留的是结构相似性,而不是
“proximity-based” (pdf) 的相似性,所以可以超越单一网络的局限
-
依赖于单个图中节点的接近性,产生在不同网络中不可比较的嵌入
-
将 xNetMF 构建为在包含不同图中节点之间的结构相似性和属性一致性(如果可用)的相似性矩阵上进行矩阵分解。为了避免显式构建完整的相似性矩阵
-
step1+step2ab
-
-
REGAL在表征学习阶段的运行速度比同类方法快30倍,比现有的网络配准方法平均高出 20% 到 30%,并可扩展到拥有数百万节点的网络。
基线方法
-
FINAL: 优化二次目标函数的一类算法。
-
NetAlign: 将对齐视为整数二次规划问题,并使用消息传递算法进行求解。
-
IsoRank: 通过对放松约束的整数二次规划问题进行求解。
-
Klau’s algorithm (Klau): 通过对称约束进行线性规划松弛,并迭代求解。
-
REGAL-node2vec: 使用 node2vec 方法替换 xNetMF 步骤的 REGAL 变体。
-
REGAL-struc2vec: 使用 struc2vec 方法替换 xNetMF 步骤的 REGAL 变体。
-
主要贡献
-
问题表述。我们将重要的无监督图对齐问题表述为学习和匹配泛化到多个图的节点表示的问题
-
有原则的算法。我们引入了一种灵活的对齐框架 REGAL(图 1),它通过联合嵌入多个图并比较图之间最相似的嵌入来学习节点对齐,而无需执行所有成对比较。在 REGAL 中,我们设计了 xNetMF,一种优雅且有原则的表示学习公式。 xNetMF 从结构标识和属性标识(如果可用)中学习嵌入,这些特征最有利于多网络分析
-
广泛的实验。我们的结果证明了基于表示学习的网络对齐在速度和准确性方面的实用性。在真实图上的实验表明,xNetMF 的运行速度比几种现有的网络嵌入技术快 30 倍,而 REGAL 的准确率比传统网络对齐方法高 20-30%。
-
我的想法
xNetMF如何依赖于单个图中节点的接近性,产生在不同网络中不可比较的嵌入
节省时间和空间:
- 没有直接对
“Y 1 and ̃ Y 2” (Heimann 等, 2018, p. 122) (pdf)
计算节点嵌入,而是先选出top-α,再计算,使用k-d树选出top-α,又进行了加速。
2. 节点分组到桶
3. 没有计算nn,而是随机选择p个节点,计算n*p
4. 没有显示构造S,而是通过直接推导出节点嵌入矩阵Y的表示,从而直接计算Y(通过np和p * p的小矩阵分解)
节点度的分组:
-
定义:
-
� D �D �D 是原始图
-