论文阅读|深读Role2Vec:Role-Based Graph Embeddings

Posted 海轰Pro

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论文阅读|深读Role2Vec:Role-Based Graph Embeddings相关的知识,希望对你有一定的参考价值。

目录

前言

Hello!
非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~
 
自我介绍 ଘ(੭ˊᵕˋ)੭
昵称:海轰
标签:程序猿|C++选手|学生
简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金,有幸在竞赛中拿过一些国奖、省奖…已保研。
学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!
 
唯有努力💪
 

知其然 知其所以然!

 
本文仅记录自己感兴趣的内容

Abstract

随机游走是许多现有的节点嵌入和网络表示学习方法的核心

传统的随机游走的限制:

  • 由这些方法产生的嵌入捕获顶点之间的邻近性(社区),而不是结构相似性(角色)
  • 此外,嵌入无法转移到新的节点和图,因为它们与节点标识绑定在一起

为了克服这些限制,我们引入了Role2Vec框架,该框架基于所提出的属性随机游走的概念来学习基于角色的结构化嵌入

值得注意的是,该框架可作为泛化任何基于行走的方法的基础

  • Role2Vec框架通过学习捕获图中结构角色的归纳函数,使这些方法能够得到更广泛的应用
  • 此外,当每个顶点被映射到它自己的唯一标识它的函数时,原始方法被恢复为框架的特殊情况

1 INTRODUCTION

受词嵌入模型(如skip-gram模型[6]、[7])成功的启发,最近的一些作品将词嵌入模型扩展到学习图(节点)嵌入[8]、[9]、[10]、[11]

这些工作的主要目标是建立将每个输入顶点与其上下文联系起来的条件概率模型

上下文是与输入顶点相关的其他顶点的集合

许多现有的节点嵌入方法使用随机游走(基于节点id)来生成上下文顶点[8]、[9]、[10]、[12]。

例如,DeepWalk[8]从每个顶点开始随机漫步,收集顶点序列(类似于语言中的句子)
然后,使用跳跃图模型通过最大化每个输入顶点与其周围环境之间的条件概率来拟合嵌入
因此,在跳过图模型中,顶点身份被用作单词,嵌入被绑定到顶点id
在语言中,具有相似含义的单词被假定包围在相似的上下文[13]中
因此,在语言模型中,单词的上下文被定义为周围的单词[6],[7]

然而,这个想法并不能直接转化为图表

因为语言中的单词没有与特定文档或语料库绑定的正式定义,通过遍历获得的顶点id是任意的,并且只在特定的图中有意义

在另一个图中就不起作用了

因此,这些基于行走的方法有三个主要缺点

  • 首先,这些嵌入方法本质上是转导的,本质上处理孤立的图,不能推广到看不见的节点,也不能跨网络转移,它们不适用于跨网络分类[14]、[15]和图相似性/比较[16]、[17]等基于图的迁移学习任务
  • 其次,使用这种传统的随机游走定义,在嵌入中没有集成顶点属性/特征的通用方法
  • 最后,这些方法无法学习捕获结构角色的结构节点嵌入

结构角色发现[18]的目的是将具有结构相似的邻域(连接/子图模式)的节点嵌入在一起,同时允许节点在图中很远,甚至在完全不同的图中[19]

节点角色的示例包括充当枢纽、星形边、近边和连接图中不同区域的桥梁的节点

直观地说

  • 如果两个顶点在结构上相似,不需要用边连接,也不属于同一个社区,甚至不属于同一个图[18],那么它们就属于同一个角色
  • 图中的角色表示一般的结构功能,与顶点id无关,因此可以跨网络转移

虽然最近许多流行的嵌入方法是基于传统的带id的随机游动

  • 但这些方法无法学习保留结构相似性概念的基于结构角色的嵌入
  • 相反,它们学习了基于邻近的嵌入,这种嵌入保留了图[11]中节点之间的接近和接近的概念。
  • 因此,这些方法保证将图中接近的节点嵌入到一起(社区[23]的一个属性),因为它们在随机游走中出现在彼此附近,而不是基于[18]中提出的结构相似性概念将节点嵌入到一起的结构角色
  • 此外,基于行走的嵌入方法从根本上也与节点身份绑定,因此不能在网络中归纳或转移。

然而,角色表示一般的结构功能,自然地归纳和可转移,因为它们可以在任何图上导出,独立于顶点id

因此,共享类似角色嵌入的两个节点可以位于不同的社区,甚至完全位于不同的图中

这与传统的基于行走的方法形成了对比

  • 在传统的方法中,不同图/组件中的节点显然不能一起出现在相同的随机行走中
  • 因此,尽管不同图中的节点可能在结构上相似,因此执行相同的结构角色(功能),但使用这些先前的方法永远不会分配类似的嵌入

在这项工作中,我们提出了Role2Vec框架,作为推广许多使用随机游动的现有方法的基础

特别地,我们引入了带有属性的随机游走的概念

  • 它不与顶点一致性绑定,而是基于一个函数 Φ : x → w \\Phi:x\\rightarrow w Φ:xw

  • 它将顶点属性向量映射到一个角色(类型、标签、属性值)

  • 这样,如果两个顶点在结构上相似,它们就属于同一个角色

因此,Role2Vec的目标是建立将每个顶点角色与其上下文角色联系起来的条件概率模型


Role2Vec框架为任何被它推广的方法提供了许多重要的优势:

  • 首先,提出的框架是自然归纳的,因为学习的嵌入推广到新的节点和跨图,因此可以用于迁移学习任务。

  • 其次,它们能够捕获结构相似性(角色)

  • 第三,提出的框架是固有的空间高效,因为嵌入是为角色学习的(与顶点相反),因此比现有方法需要更少的空间。

  • 第四,提出的框架自然支持带有输入属性的图(如果可用)。此外,任何使用Role2Vec框架泛化的方法都保证至少执行得和原始方法一样好,因为当函数 Φ \\Phi Φ将每个节点映射到一个唯一的角色时,它被恢复为框架的一个特殊情况。

  • 最后,Role2Vec被证明是有效的,平均提高了17.8%的AUC,同时在不同领域的各种图上比现有的最先进的方法平均减少了853倍的空间。


以前的工作主要集中在节点级别[8],[9],[10],[12],[24]的学习嵌入

本文提出了一个在角色级别学习嵌入的框架

  • 与节点级嵌入相比,角色嵌入在跨网络迁移学习任务中总是可迁移的,例如跨网络链路预测和节点分类[24]
  • 角色嵌入对于基于图的异常检测、图摘要/压缩、图相似度查询(寻找结构相似的节点)、意义构建和网络探索性分析、网络可视化以及[18]、[19]等任务也特别有用
  • 此外,角色嵌入使用的空间也大大减少(当 M < N v M < N_v M<Nv时),因此对于需要实时性能的应用程序以及涉及大规模(流)图数据的应用程序也很有用

2 FRAMEWORK

G = ( V , E ) G=(V, E) G=(V,E)

N v = ∣ V ∣ N_v=|V| Nv=V:图G的顶点数量

N e = ∣ E ∣ N_e=|E| Ne=E:图G的边的数量

Γ i \\Gamma_i Γi:顶点 v i v_i vi的邻域

d i = ∣ Γ i ∣ d_i = |\\Gamma_i| di=Γi:顶点 v i v_i vi的度

X X X:一个属性/特征矩阵 X X X,其中每个 x i x_i xi是顶点 v i v_i vi k k k维向量(由属性向量构成的矩阵)

M M M:角色数量

W W W:角色集,其中 w ∈ W w \\in W wW是分配给一个或多个节点的角色

α k \\alpha_k αk:角色 w k w_k wk D D D维嵌入向量

我们的框架不需要任何输入属性,因为我们总是可以根据输入/输出/总/加权度、egonet、motif/graphlet计数等获得结构特征。

嵌入方法的目标是通过学习将每个图元素映射到隐维空间的模型来派生特定图元素的有用特征(例如,顶点,边)

虽然该方法仍然适用于任何图元素,但本文重点关注顶点嵌入

为了实现这一点,一个可能的嵌入定义包含三个通用组件:

  • 上下文函数,它指定了一组其他的顶点,称为上下文 c i c_i ci对于任何给定的顶点 v i v_i vi,这样上下文顶点围绕和/或拓扑上与给定顶点相关。每个顶点都与两个潜在向量相关联,一个嵌入向量 α i ∈ R D \\alpha_i \\in R^D αiRD和一个上下文向量 β i ∈ R D \\beta_i \\in R^D βiRD
  • 条件分布,它指定用于组合嵌入向量和上下文向量的统计分布。更具体地说,一个顶点的条件分布结合了它的嵌入和它周围顶点的上下文向量。
  • 模型参数(例如,嵌入向量和上下文向量)以及如何在条件分布中共享这些参数。因此,一种嵌入方法将每个顶点与其上下文关联的条件概率建模如下:

    其中 c i c_i ci是顶点 v i v_i vi的上下文顶点集合, x i x_i xi是它的属性向量, P P P是条件分布

我们的目标是建模 P [ x c i ∣ x i ] = ∏ j ∈ c i P ( x j ∣ x i ) P[x_c_i | x_i] = \\prod_j\\in c_i P(x_j|x_i) P[xcixi]=jciP(xjxi)

假设上下文顶点是有条件独立的

最常用的条件分布是分类分布

在这种情况下,使用两个潜在向量(即嵌入向量和上下文向量)参数化的softmax函数

因此,对于每个输入上下文顶点对 ( v i , v j ) (v_i, v_j) (vi,vj)

对于稀疏图, ∑ v k ∈ V e α i ⋅ β k \\sum_v_k \\in Ve^\\alpha_i\\cdot\\beta_k vkVeαiβk中的求和包含许多零项,因此可以通过对这些零项进行次采样来近似(使用类似于语言模型[6]的负采样)

最后,嵌入方法的目标函数为每个顶点的似然值对数之和,即:

显然,有一类可能的嵌入方法,其中三个组件(上面讨论的)中的每一个都被认为是具有各种替代方案的建模选择

最近的工作提出了随机游走来采样/收集上下文顶点 c i c_i ci[8],[9]

注意,对于这些基于随机游走的嵌入方法, x i x_i xi只是顶点 v i v_i vi的指示向量,没有属性

2.1 Mapping Vertices to Vertex-Roles 顶点映射到顶点角色

给定:

  • 有(无)向图 G = ( V , E ) G = (V, E) G=(V,E)
  • N v × K N_v \\times K Nv×K矩阵 X X X的属性(如果可用) 和/或 结构特征(可以从G单独计算)

Role2Vec框架从定位顶点集合开始

与集合中任意两个之间的距离(接近程度)无关
它们被放置在与所有其他顶点集合相似的位置

因此,如果两个顶点在结构特征(和/或输入属性)方面相似,它们就属于同一个集合

在这项工作中,矩阵 X X X由基于graphlets/network motif[25]的结构特征组成
这些特征已知用于捕获节点[19]的基于角色的结构属性

我们通过学习(或手动定义)一个函数来实现这一点

该函数将 N v N_v Nv个顶点映射到集合 W = w 1 , . . . , w M W=\\w_1,...,w_M\\ W=w1,...,wM,其中顶点角色数量 M , M ≤ N v M,M \\leq N_v MMN论文阅读|深读DRNE:Deep Recursive Network Embedding with Regular Equivalence

论文阅读|深读GraLSP: Graph Neural Networks with Local Structural Patterns

论文阅读|深读VERSE: Versatile Graph Embeddings from Similarity Measures

论文阅读|深读 GraphSAGE:Inductive Representation Learning on Large Graphs

论文阅读|深读LINE: Large-scale Information Network Embedding

论文阅读|深读 GraphSAGE:Inductive Representation Learning on Large Graphs