【论文阅读|深读】DRNE:Deep Recursive Network Embedding with Regular Equivalence【2】

1,546 阅读11分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第31天,点击查看活动详情

前言

Hello!

非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~  

自我介绍 ଘ(੭ˊᵕˋ)੭

昵称:海轰

标签:程序猿|C++选手|学生

简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金,有幸在竞赛中拿过一些国奖、省奖...已保研。

学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!  

唯有努力💪  

知其然 知其所以然!

本文只记录感兴趣的部分

3.1 Notations and Definitions

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

N(v)={u(v,u)E}N(v)=\{u| (v,u)\in E\}

X=RV×k\boldsymbol X= \mathbb{R}^{|V| \times k}:顶点的嵌入空间向量表示

dv=N(v)d_v=|N(v)|:顶点vv的度

I(x)={1x00elseI(x)=\begin{cases} 1\quad x \geq 0\\ 0 \quad else \end{cases}


Definition 3.1 (Structural Equivalence)

  • s(u)=s(v)s(u) = s(v) : 节点uuvv是结构等价
  • N(u)=N(v)s(u)=s(v)N(u) = N(v) \Rightarrow s(u) = s(v)
  • 也就是节点的邻域相同,则为结构等价

Definition 3.2 (Regular Equivalence)

  • r(u)=r(v)r(u) = r(v):节点uuvv是正则等价
  • {r(i)iN(u)}={r(j)jN(u)}\{r(i)|i\in N(u)\}=\{r(j)|j\in N(u)\}(没懂)

3.2 Recursive Embedding

根据定义3.2,我们以递归的方式学习节点嵌入,目标节点的嵌入可以用其邻居节点嵌入的聚合来近似

基于此概念,我们设计了如下损失函数:

在这里插入图片描述

其中Agg是聚合函数


在一个递归步骤中,学习到的嵌入节点可以保留其邻居的局部结构

通过迭代更新学习到的表示,学习到的节点嵌入可以在全局意义上融合其结构信息,这与规则等价的定义是一致的


由于真实网络的底层结构往往是高度非线性的[22],我们设计了一个深度模型,归一化长短时记忆层(ln-LSTM)[2]作为聚合函数

众所周知,LSTM对序列建模是有效的。然而,节点的邻居在网络中没有自然排序

这里我们使用节点的度作为将邻居排序成有序序列的标准

  • 主要是因为度是邻居排序的最有效的度量
  • 而度在许多图论度量中往往起着重要的作用,特别是那些与结构角色相关的度量,如PageRank[27]和Katz[25]

  • 有序邻域的嵌入为{X1X2XtXT}\{X_1,X_2,…,X_t,…,X_T\}
  • 在每个时间步长tt时,隐态hth_ttt时刻的输入嵌入XtX_t与其之前的隐态ht1h_{t−1}的函数,即ht=LSTMCell(ht1,Xt)h_t = LSTMCell(h_{t−1},X_t)

当LSTM Cell对嵌入序列进行从1到T的递归处理时,隐含表示hth_t的信息会越来越丰富

hTh_T可以看作是邻居的聚集表示。

为了学习长序列中的长距离相关性,LSTM利用了门控机制

  • 遗忘门决定我们要从记忆中丢弃什么信息
  • 输入门和旧记忆一起决定我们要在记忆中存储什么新信息
  • 输出门根据记忆决定我们要输出什么

具体来说,LSTM跃迁方程LSTMCell为:

在这里插入图片描述 此外,为了避免以长序列为输入的梯度[14]爆炸或消失的问题,我们还引入了层归一化

层归一化的LSTM使其不变地重新缩放所有的求和输入。它产生了更稳定的动力学

特别是,它在方程6后使用额外的归一化使细胞状态CtC_t居中并重新缩放,如下所示:

在这里插入图片描述

3.3 Regularization

在这里插入图片描述

(1)式是按照定义3.2的递归嵌入过程,没有任何其他约束

它具有很强的表达能力,只要满足给定的递归过程,就可以推导出多个解。

该模型退化为所有嵌入值为0的平凡解是有风险的


为了避免出现平凡解,我们将节点的度作为弱引导信息,并设置一个约束条件

  • 学习的节点嵌入必须能够近似节点的度

据此,我们设计了以下正则化器:

在这里插入图片描述 其中

  • dvd_v是节点vv的度
  • MLPMLP是单层多层感知器,具有整流线性单元(ReLU)[11]激活,其定义为ReLU(X)=max(0x)ReLU(X)=max(0,x)

总而言之,我们通过组合公式1的重构损失和公式9的正则化来最小化目标函数:

在这里插入图片描述

其中

  • λλ是正则化的权重

注意

  • 这里不使用度信息作为网络嵌入的监督信息。
  • 相反,它最终起到辅助作用,使解决方案远离微不足道的解决方案。
  • 因此,这里的λλ是一个相当小的值。

Neighborhood Sampling

在现实网络中,节点的度往往服从重尾分布[9],即少数节点的度很高,而大多数节点的度很小

在Ln-LSTM算法中,为了提高算法的效率,在输入LN-LSTM之前,我们对节点的邻域进行了大次数的下采样。

具体地说,我们设置了邻居数S的上界,如果邻居数超过上界S,我们将它们下采样为S个不同的节点。

在幂律网络中,度大的节点比度小的普通节点携带更多独特的结构信息。

在这里插入图片描述

为此,我们设计了一种有偏采样策略:

  • 通过设置节点vv的采样概率P(v)P(v)与其度数dvd_v成正比
  • P(v)dvP(v)∝d_v来保持节点的大阶数

3.4 Optimization

为了优化前述模型,目标是最小化作为神经网络参数集θ嵌入X的函数的总损失L(等式10)

Adam[16]被用来优化这些参数(使用Adam算法进行求解)

  • 利用时间反向传播(BackPropagation Through Time, BPTT)算法[37]估计导数
  • 在训练开始时,Adam的学习速率α初始设定为0.0025

论文:Adam: A Method for Stochastic Optimization

3.5 Theoretical Analysis

我们进一步从理论上证明DRNEDRNE的结果嵌入可以很好地反映几个典型的和常见的中心性度量,这些中心性度量与规则等价密切相关

在不丧失一般性的情况下,我们忽略方程9中用于避免平凡解的正则项。


定理3.3. 度中心性、特征向量中心性[5]、PageRank中心性[27]分别是我们模型的三个最优解。

利用引理3.4进行证明

引理3.4 对于任何可计算函数,都存在一个有限递归神经网络[24]来计算它。

证明过程略(看不懂)


定理3.5. 如果节点vv的中心性C(v)C(v)满足C(v)=uN(u)F(u)C(u)C(v) =\sum_{u\in N(u)}F(u)C(u) and F(u)=f({F(u)uN(v)})F(u) = f (\{F (u), u∈N(v)\}),其中FF是任意可计算函数,那么C(v)C(v)就是我们模型的最优解之一

证明过程略(看不懂)


通过(F(v)f({xi}))(F(v), f(\{x_i\}))在表1中对中心性的定义,我们可以很容易地得到度中心性、特征向量中心性、PageRank中心性满足定理3.5的条件,从而完成了定理3.3的证明。

在这里插入图片描述

根据定理3.3,对于任何图,我们提出的方法都存在这样一个参数设置,即学习到的嵌入可以是三个中心性之一

这证明了我们的方法在捕获与规则等价相关的网络结构信息的不同方面的表达能力。

3.6 Analysis and Discussions

在本节中,我们将介绍样本外扩展和复杂性分析。

3.6.1 Out-of-sample Extension

对于一个新到达的节点vv,如果已知它与现有节点的连接,我们可以直接将其邻居的嵌入输入到聚合函数中,用式1得到作为该节点嵌入的聚合表示。

该过程的复杂度为O(dvk)O(d_vk)

  • kk为嵌入的长度,
  • dvd_v为节点vv的度。

3.6.2 Complexity Analysis

在训练过程中,对于每次迭代的单个节点vv,计算梯度和更新参数的时间复杂度为O(dvk2)O(d_v k^2)

dvd_v为节点vv的度,kk为嵌入的长度

由于采样过程的原因,dvd_v度不会超过限定的数值S。因此整体训练复杂度为O(VSk2I)O(|V|Sk^2I)

II为迭代次数

其它参数的设置

  • 嵌入的长度kk通常设置为一个较小的数字,如32,64,128。
  • S设为300。迭代次数II通常很小,但与节点数V|V|无关

因此,训练过程的复杂度与节点数V|V|成线性关系。

4 EXPERIMENTS

4.1 Baselines and Parameter Settings

基线方法

  • DeepWalk
  • LINE
  • node2vec
  • struc2vec
  • Centralities:采用近中心性[26]、中间中心性[4]、特征向量中心性[6]和K-core[17]这四种常用的中心性来衡量节点的重要性。此外,我们将之前的四个中心性连接到一个向量中作为另一个基线(Combined)

参数设置

对于我们的模型,我们设置

  • 嵌入长度kk为16
  • 正则化器的权值λλ为1
  • 有限邻域数SS为300

我们将在4.5节中说明我们的模型对这些参数不是很敏感

4.2 Network Visualization

杠铃网络可视化

在这里插入图片描述 空手道网络可视化

在这里插入图片描述

4.3 Regular Equivalence Prediction

在本节中,我们评估学习到的嵌入是否在两个真实世界的数据集上保持规则等价

数据集

  • Jazz[10]
  • BlogCatalog [38]

在这里我们设置了两个任务,包括规则等价性预测中心性评分预测


对于第一个任务,我们使用常用的基于规则等价的相似性度量方法VS[18]作为基础真值。

两个节点的两两相似度由其嵌入的内积来衡量。

我们根据节点对的相似性对其进行排序,并将结果排序与VS. Kendall排序进行比较

使用[1]秩相关系数来衡量这两个秩的相关性。其定义如下:

在这里插入图片描述 结果如图5所示:

在这里插入图片描述


对于第二个任务,我们将4.1节中提到的四个中心性作为基准来计算

然后随机隐藏20%的节点,利用剩余的节点训练线性回归模型,基于节点嵌入预测中心性得分

训练后,我们使用回归模型来预测被屏蔽节点的中心性

采用均方误差(Mean Square Error, MSE)评价其性能。MSE定义如下:

在这里插入图片描述 其中YY为观测值,Y^\hat Y为预测值。

由于不同中心性的尺度存在显著差异,我们将MSE值除以相应的所有节点中心性的平均值来重新缩放。

结果如表2、表3所示。

在这里插入图片描述

在这里插入图片描述

4.4 Structural Role Classification

基于结构角色的分类任务中,节点的标签与其结构信息的关联比与其相邻节点的标签的关联更大。

在本节中,我们评估学习嵌入在预测给定网络中节点的结构角色的能力

数据集:欧洲航空交通网络和美国航空交通网络[29]

节点表示机场,边表示直航的存在。 降落加起飞的总人数或通过机场的总人数可以用来衡量他们的活动,反映他们在航班网络中的结构角色。 通过将每个机场的活动分布均匀地划分为四个可能的标签之一。

在得到机场的嵌入后,我们训练一个逻辑回归来预测基于嵌入的标签

我们随机抽取10% ~ 90%的节点作为训练样本,使用剩余的节点来测试性能。

平均精度用于评估性能。

结果如图6所示,其中实线表示网络嵌入方法,虚线表示中心性方法。

在这里插入图片描述

4.5 Parameter Sensitivity

我们评估了嵌入维数kk、正则化器权重λλ和邻域大小上界SS的影响

在这里插入图片描述

4.6 Scalability

为了证明可扩展性,我们测试每个epoch的训练时间

结果如图8所示

在这里插入图片描述

5 CONCLUSION

在本文中,我们提出了一个新的深度模型来学习网络中具有规则等价性的节点表示。

假设节点的规则等价信息已被其相邻节点的表示编码,我们提出一层归一化LSTM模型递归学习节点嵌入。

对于给定的节点,远距离节点的结构重要性信息可以递归地传播到相邻节点,从而嵌入到其嵌入中。

因此,学习到的节点嵌入能够在全局意义上反映节点的结构信息,这与规则的等价性和中心性度量是一致的。

实证结果表明,我们的方法可以显著和持续地优于最先进的算法。

读后总结

整体思路大概了解了

但是由于对LSTM的不了解

细节上的东西还是没有理解到

若以后需要仔细探究,再仔细研究研究!

结语

文章仅作为个人学习笔记记录,记录从0到1的一个过程

希望对您有一点点帮助,如有错误欢迎小伙伴指正

在这里插入图片描述