十五、NetMF

  1. 网络 embedding 问题通常形式化为如下问题:给定一个无向带权图 十五、NetMF - 图1 ,其中 十五、NetMF - 图2 为顶点集合、十五、NetMF - 图3 为边集合、十五、NetMF - 图4 为邻接矩阵,任务的目标是学习一个映射 十五、NetMF - 图5 ,该映射将每个顶点映射到一个能够捕获该顶点结构属性的 十五、NetMF - 图6 维向量。

    目前已有一些方法,如DeepWalk,LINE,PTE,node2vec ,它们在实践中得到了有效的证明,但是背后的理论机制尚不了解。

    事实上在 Word Embedding 任务中,带负采样的 SkipGram 模型已经被证明等价于一个 word-context 矩阵的隐式分解,但是还不清楚word-context 矩阵和网络结构之间的关系。另外,尽管 DeepWalk,LINE,PTE,node2vec 之间看起来很相似,但是缺乏对其底层连接更深入的理解。

    论文《Network Embedding as Matrix Factorization: Unifying DeepWalk, LINE, PTE, and node2vec》 证明了 DeepWalk,LINE,PTE,node2vec 在理论上等价于隐式矩阵分解,并给出了每个模型的矩阵形式的闭式解。另外论文还发现:

    • 当上下文窗口大小 十五、NetMF - 图7 时,LINE 可以被视为是 DeepWalk 的特例。
    • PTE 作为 LINE 的扩展,实际上它是多个网络联合矩阵的隐式分解。
    • DeepWalk 的隐式矩阵分解和图拉普拉斯算子之间存在理论联系,基于这种联系作者提出了一个新的算法 NetMF 来近似 DeepWalk 隐式矩阵分解的闭式解。

    最后作者使用 SVD 对每个算法的矩阵进行显式分解,通过实验证明了 NetMF 优于其它的几个模型。

15.1 模型

15.1.1 LINE

  1. 给定一个带权无向图 十五、NetMF - 图8LINE(2nd) 任务是学到两个representation 矩阵 :

    • vertex represetation 矩阵 十五、NetMF - 图9:第 十五、NetMF - 图10十五、NetMF - 图11 为顶点 十五、NetMF - 图12 作为vertex 时的 embedding 向量。
    • context representation 矩阵十五、NetMF - 图13 :第 十五、NetMF - 图14十五、NetMF - 图15 为顶点 十五、NetMF - 图16 作为contex 时的 embedding 向量。

    LINE(2nd) 的目标函数为:

    十五、NetMF - 图17

    其中:

    • 十五、NetMF - 图18sigmoid 函数

    • 十五、NetMF - 图19 为负采样系数

    • 十五、NetMF - 图20 为用于产生负样本的 noise 分布,在 LINE 原始论文中使用经验分布:十五、NetMF - 图21 ,其中 十五、NetMF - 图22 为顶点 j 的加权 degree

      十五、NetMF - 图23

  2. 本文我们选择 十五、NetMF - 图24 ,因为这种形式的经验分布将得到一个闭式解。定义 十五、NetMF - 图25 为所有顶点的加权 degree 之和,则有:

    十五、NetMF - 图26

    我们重写目标函数为:

    十五、NetMF - 图27

    我们在图 十五、NetMF - 图28 的所有顶点上计算,从而得到期望为:

    十五、NetMF - 图29

    因此有:

    十五、NetMF - 图30

    则对于每一对顶点 (i,j),其局部目标函数local objective function 为:

    十五、NetMF - 图31

    定义 十五、NetMF - 图32 ,根据 《NeuralWord Embedding as Implicit Matrix Factorization》 的结论:对于一个足够大的 embedding 维度, 每个 十五、NetMF - 图33 之间可以认为是相对独立的。因此我们有:

    十五、NetMF - 图34

    为求解目标函数极大值,我们令偏导数为零,则有:

    十五、NetMF - 图35

    这个方程有两个闭式解:

    • 十五、NetMF - 图36 :其解为虚数,不予考虑。
    • 十五、NetMF - 图37 :有效解。

    因此有:

    十五、NetMF - 图38

    定义对角矩阵 十五、NetMF - 图39,则 LINE(2nd) 对应于矩阵分解:

    十五、NetMF - 图40

    .

15.1.2 PTE

  1. PTE 将文本网络分为三个子网络,假设单词集合为 十五、NetMF - 图41 ,文档集合为 十五、NetMF - 图42 ,标签集合为 十五、NetMF - 图43

    • word-word 子网 十五、NetMF - 图44:每个 word 是一个顶点,边的权重为两个 word 在大小为 T 的窗口内共现的次数。

      假设其邻接矩阵为 十五、NetMF - 图45 ,定义 十五、NetMF - 图46十五、NetMF - 图47十五、NetMF - 图48 行的元素之和, 定义 十五、NetMF - 图49十五、NetMF - 图50十五、NetMF - 图51 列的元素之和。由于 十五、NetMF - 图52 为无向图,因此 十五、NetMF - 图53 为对称矩阵,所以有 十五、NetMF - 图54

      定义对角矩阵 十五、NetMF - 图55十五、NetMF - 图56 ,它们分别由 十五、NetMF - 图57 的各行之和、各列之和组成。

    • word-document 子网 十五、NetMF - 图58 :每个 worddocument 都是一个顶点,边的权重是word 出现在文档中的次数。它是一个二部图,因此 十五、NetMF - 图59 不是对称矩阵,因此 十五、NetMF - 图60

      同样的我们定义对角矩阵 十五、NetMF - 图61十五、NetMF - 图62 ,它们分别由 十五、NetMF - 图63 的各行之和、各列之和组成。

    • word-label 子网 十五、NetMF - 图64:每个 wordlabel 都是一个顶点,边的权重为 word 出现在属于这个 label 的文档的篇数。它也是一个二部图,因此 十五、NetMF - 图65 不是对称矩阵,因此 十五、NetMF - 图66

      同样的我们定义对角矩阵 十五、NetMF - 图67十五、NetMF - 图68 ,它们分别由 十五、NetMF - 图69 的各行之和、各列之和组成。

    PTE 的损失函数为:

    十五、NetMF - 图70

    其中 十五、NetMF - 图71 分别为三个子网中的量,十五、NetMF - 图72 为三个超参数来平衡不同子网的损失,十五、NetMF - 图73 为负采样系数。

    根据前面的结论有:

    十五、NetMF - 图74

    令:

    十五、NetMF - 图75

    则有 十五、NetMF - 图76,且有:

    十五、NetMF - 图77

  2. 根据 PTE 论文, 十五、NetMF - 图78 需要满足:

    十五、NetMF - 图79

    这是因为PTE 在训练期间执行边采样,其中边是从三个子网中交替采样得到。

15.1.3 DeepWalk

  1. DeepWalk 首先通过在图上执行随机游走来产生一个 corpus 十五、NetMF - 图80 ,然后在 十五、NetMF - 图81 上训练 SkipGram 模型。这里我们重点讨论带负采样的 SkipGram 模型skipgram with negative sampling:SGNS 。整体算法如下所示:

    • 输入:

      • 十五、NetMF - 图82
      • 窗口大小 十五、NetMF - 图83
      • 随机游走序列长度 十五、NetMF - 图84
      • 总的随机游走序列数量 十五、NetMF - 图85
    • 输出:顶点的 embedding 矩阵 十五、NetMF - 图86

    • 算法步骤:

      • 迭代: 十五、NetMF - 图87 ,迭代过程为:

        • 根据先验概率分布 十五、NetMF - 图88 随机选择一个初始顶点 十五、NetMF - 图89

        • 在图 十五、NetMF - 图90 上从初始顶点 十五、NetMF - 图91 开始随机游走,采样得到一条长度为 十五、NetMF - 图92 的顶点序列 十五、NetMF - 图93

        • 统计顶点共现关系。对于窗口位置 十五、NetMF - 图94

          • 考虑窗口内第 十五、NetMF - 图95 个顶点 十五、NetMF - 图96

            • 添加 vertex-context 顶点对 十五、NetMF - 图97十五、NetMF - 图98 中。
            • 添加 vertex-context 顶点对 十五、NetMF - 图99十五、NetMF - 图100 中。
      • 然后在 十五、NetMF - 图101 上执行负采样系数为 十五、NetMF - 图102SGNS
  2. 根据论文 《NeuralWord Embedding as Implicit Matrix Factorization》SGNS 等价于隐式的矩阵分解:

    十五、NetMF - 图103

    其中:十五、NetMF - 图104 为语料库大小; 十五、NetMF - 图105 为语料库 十五、NetMF - 图106vertex-context 十五、NetMF - 图107 共现的次数;十五、NetMF - 图108 为语料库中 vertex 十五、NetMF - 图109 出现的总次数; 十五、NetMF - 图110 为语料库中 context 十五、NetMF - 图111 出现的总次数;十五、NetMF - 图112 为负采样系数。

  3. 接下来的分析依赖于一些关键的假设:

    • 假设图 十五、NetMF - 图113 为无向的undirected、连接的connectednon-bipartite 的,这使得 十五、NetMF - 图114 为一个平稳分布。
    • 假设每个随机游走序列的第一个顶点从这个平稳分布 十五、NetMF - 图115 中随机选取。

    对于 十五、NetMF - 图116 ,定义:

    • 十五、NetMF - 图117 ,即 十五、NetMF - 图118十五、NetMF - 图119 的子集,它的每个 context 顶点 十五、NetMF - 图120 都在每个 vertex 顶点 十五、NetMF - 图121 的右侧 十五、NetMF - 图122 步。

      另外定义 十五、NetMF - 图123十五、NetMF - 图124vertex-context 十五、NetMF - 图125 共现的次数。

    • 十五、NetMF - 图126 , 即 十五、NetMF - 图127十五、NetMF - 图128 的子集,它的每个 context 顶点 十五、NetMF - 图129 都在每个 vertex 顶点 十五、NetMF - 图130 的左侧 十五、NetMF - 图131 步。

      另外定义 十五、NetMF - 图132十五、NetMF - 图133vertex-context 十五、NetMF - 图134 共现的次数。

    • 定义 十五、NetMF - 图135十五、NetMF - 图136十五、NetMF - 图137十五、NetMF - 图138 相乘),其中对角矩阵 十五、NetMF - 图139十五、NetMF - 图140十五、NetMF - 图141。定义 十五、NetMF - 图142十五、NetMF - 图143 的第 十五、NetMF - 图144 行、第 十五、NetMF - 图145 列。

      事实上 十五、NetMF - 图146 定义了一个概率转移矩阵, 十五、NetMF - 图147 定义了从顶点 十五、NetMF - 图148 经过一步转移到 十五、NetMF - 图149 的概率;十五、NetMF - 图150 定义了从顶点 十五、NetMF - 图151 经过 十五、NetMF - 图152 步转移到 十五、NetMF - 图153 的概率。

    另外考虑到对称性,我们有 十五、NetMF - 图154

  4. 定理一:定义,则当 十五、NetMF - 图155 时有:

    十五、NetMF - 图156

    其中:十五、NetMF - 图157 表述依概率收敛。

    其物理意义为:

    • 在所有正向转移过程中,vertex-context 十五、NetMF - 图158 在语料库中出现的概率等于:十五、NetMF - 图159 出现的概率,乘以从 十五、NetMF - 图160 正向转移 十五、NetMF - 图161 步骤到达 十五、NetMF - 图162 的概率。
    • 在所有正向转移过程中,vertex-context 十五、NetMF - 图163 在语料库中出现的概率等于:十五、NetMF - 图164 出现的概率,乘以从 十五、NetMF - 图165 正向转移 十五、NetMF - 图166 步骤到达 十五、NetMF - 图167 的概率。

    因为 十五、NetMF - 图168 相互之间构成对方的上下文,所以这里的结论是对称的。

    证明:

    首先介绍 S.N. Bernstein 大数定律:设 十五、NetMF - 图169 为一个随机变量的序列,其中每个随机变量具有有限的期望 十五、NetMF - 图170 和有限的方差 十五、NetMF - 图171 ,并且协方差满足:当 十五、NetMF - 图172 时,十五、NetMF - 图173 。则大数定律 law of large numbers:LLN 成立。

    考虑只有一条随机游走序列(即 十五、NetMF - 图174 ):十五、NetMF - 图175 。给定一个 vertex-context 十五、NetMF - 图176 ,定义随机变量 十五、NetMF - 图177 为事件 十五、NetMF - 图178 发生的指示器 indicator

    我们观察到:

    • 十五、NetMF - 图179十五、NetMF - 图180 。因此有:

      十五、NetMF - 图181

    • 基于我们对图的假设和随机游走的假设,则有:十五、NetMF - 图182 发生的概率等于 十五、NetMF - 图183 的概率乘以 十五、NetMF - 图184 经过 十五、NetMF - 图185 步转移到 十五、NetMF - 图186 的概率。即:

      十五、NetMF - 图187

    • 基于我们对图的假设和随机游走的假设,则有:当 十五、NetMF - 图188 时有:

      十五、NetMF - 图189

      其中:第一项为 十五、NetMF - 图190 采样到 十五、NetMF - 图191 的概率;第二项为从 十五、NetMF - 图192 经过 十五、NetMF - 图193 步转移到 十五、NetMF - 图194 的概率;第三项为从 十五、NetMF - 图195 经过 十五、NetMF - 图196 步转移到 十五、NetMF - 图197 得概率;第四项为从 十五、NetMF - 图198 经过 十五、NetMF - 图199 步转移到 十五、NetMF - 图200 的概率。

    则有:

    十五、NetMF - 图201

    十五、NetMF - 图202 时,从 十五、NetMF - 图203 经过 十五、NetMF - 图204 步转移到 十五、NetMF - 图205 的概率收敛到它的平稳分布,即 十五、NetMF - 图206 。即:

    十五、NetMF - 图207

    因此有 十五、NetMF - 图208 。因此随机游走序列收敛到它的平稳分布。

    应用大数定律,则有:

    十五、NetMF - 图209

    类似地,我们有:

    十五、NetMF - 图210

    十五、NetMF - 图211 时,我们定义 十五、NetMF - 图212 为事件 十五、NetMF - 图213 的指示器,同样可以证明相同的结论。

  5. 事实上如果随机游走序列的初始顶点分布使用其它分布(如均匀分布),则可以证明:当 十五、NetMF - 图214 时,有:

    十五、NetMF - 图215

    因此定理一仍然成立。

  6. 定理二:当 十五、NetMF - 图216 时,有:

    十五、NetMF - 图217

    证明:

    注意到 十五、NetMF - 图218 ,应用定理一有:

    十五、NetMF - 图219

    进一步的,考察 十五、NetMF - 图220 的边际分布和 十五、NetMF - 图221 的边际分布,当 十五、NetMF - 图222 时,我们有:

    十五、NetMF - 图223

  7. 定理三:在 DeepWalk 中,当 十五、NetMF - 图224 时有:

    十五、NetMF - 图225

    因此DeepWalk 等价于因子分解:

    十五、NetMF - 图226

    证明:

    利用定理二和continous mapping theorem,有:

    十五、NetMF - 图227

    写成矩阵的形式为:

    十五、NetMF - 图228

  8. 事实上我们发现,当 十五、NetMF - 图229 时,DeepWalk 就成为了 LINE(2nd), 因此 LINE(2nd)DeepWalk 的一个特例。

15.1.4 node2vec

  1. node2vec 是最近提出的 graph embedding 方法,其算法如下:

    • 输入:

      • 十五、NetMF - 图230
      • 窗口大小 十五、NetMF - 图231
      • 随机游走序列长度 十五、NetMF - 图232
      • 总的随机游走序列数量 十五、NetMF - 图233
    • 输出:顶点

    • 算法步骤:

      • 构建转移概率张量 十五、NetMF - 图234

      • 迭代: 十五、NetMF - 图235 ,迭代过程为:

        • 根据先验概率分布 十五、NetMF - 图236 随机选择初始的两个顶点 十五、NetMF - 图237

        • 在图 十五、NetMF - 图238 上从初始顶点 十五、NetMF - 图239 开始二阶随机游走,采样得到一条长度为 十五、NetMF - 图240 的顶点序列 十五、NetMF - 图241

        • 统计顶点共现关系。对于窗口位置 十五、NetMF - 图242

          • 考虑窗口内第 十五、NetMF - 图243 个顶点 十五、NetMF - 图244

            • 添加三元组 十五、NetMF - 图245十五、NetMF - 图246 中。
            • 添加三元组 十五、NetMF - 图247十五、NetMF - 图248 中。
      • 然后在 十五、NetMF - 图249 上执行负采样系数为 十五、NetMF - 图250SGNS

      注意:这里为了方便分析,我们使用三元组 十五、NetMF - 图251 ,而不是vertex-context 二元组。

  2. node2vec 的转移概率张量 十五、NetMF - 图252 采取如下的方式定义:

    • 首先定义未归一化的概率:

      十五、NetMF - 图253

      其中 十五、NetMF - 图254 表示在 十五、NetMF - 图255 的条件下,十五、NetMF - 图256 的概率。

    • 然后得到归一化的概率:

      十五、NetMF - 图257

  3. 类似 DeepWalk ,我们定义:

    十五、NetMF - 图258

    这里 十五、NetMF - 图259previous 顶点。

    定义 十五、NetMF - 图260十五、NetMF - 图261 出现在 十五、NetMF - 图262 中出现的次数;定义 十五、NetMF - 图263十五、NetMF - 图264 出现在 十五、NetMF - 图265 中出现的次数。

    定义二阶随机游走序列的平稳分布为 十五、NetMF - 图266,它满足:十五、NetMF - 图267 。根据 Perron-Frobenius 定理,这个平稳分布一定存在。为了便于讨论,我们定义每个随机游走序列的初始两个顶点服从平稳分布 十五、NetMF - 图268

    定义高阶转移概率矩阵 十五、NetMF - 图269

    由于篇幅有限,这里给出 node2vec 的主要结论,其证明过程类似 DeepWalk

    十五、NetMF - 图270

    因此 node2vec 有:

    十五、NetMF - 图271

    尽管实现了 node2vec 的封闭形式,我们将其矩阵形式的公式留待以后研究。

  4. 注意:存储和计算转移概率张量 十五、NetMF - 图272 以及对应的平稳分布代价非常高,使得我们难以对完整的二阶随机游走动力学过程建模。但是最近的一些研究试图通过对 十五、NetMF - 图273 进行低秩分解来降低时间复杂度和空间复杂度:

    十五、NetMF - 图274

    由于篇幅限制,我们这里主要集中在一阶随机游走框架DeepWalk 上。

15.1.5 NetMF

  1. 根据前面的分析我们将 LINE,PTE,DeepWalk,node2vec 都统一到矩阵分解框架中。这里我们主要研究 DeepWalk 矩阵分解,因为它比 LINE 更通用、比 node2vec 计算效率更高。

  2. 首先论文引用了四个额外的定理:

    • 定理四:定义归一化的图拉普拉斯矩阵为 十五、NetMF - 图275 ,则它的特征值都是实数。

      而且,假设它的特征值从大到小排列 ,则有:

      十五、NetMF - 图276

      进一步的,假设该图是连通图 (connected),并且顶点数量 十五、NetMF - 图277 ,则有: 十五、NetMF - 图278

      证明参考:Fan RK Chung. 1997. Spectral graph theory. Number 92. American Mathematical Soc.

    • 定理五:实对称矩阵的奇异值就是该矩阵特征值的绝对值。

      证明参考:Lloyd N Trefethen and David Bau III. 1997. Numerical linear algebra. Vol. 50. Siam.

    • 定理六:假设 十五、NetMF - 图279 为两个对称矩阵,假设将 十五、NetMF - 图280 的奇异值按照降序排列,则对于任意 十五、NetMF - 图281 ,以下不等式成立:

      十五、NetMF - 图282

      其中 十五、NetMF - 图283 为对应矩阵的奇异值根据降序排列之后的第 十五、NetMF - 图284 个奇异值。

      证明参考:Roger A. Horn and Charles R. Johnson. 1991. Topics in Matrix Analysis. Cambridge University Press. https://doi.org/10.1017/CBO9780511840371

    • 定理七:给定一个实对称矩阵 十五、NetMF - 图285 ,定义它的瑞利商为:

      十五、NetMF - 图286

      假设 十五、NetMF - 图287 的特征值从大到小排列为 十五、NetMF - 图288 ,则有:

      十五、NetMF - 图289

      证明参考:Lloyd N Trefethen and David Bau III. 1997. Numerical linear algebra. Vol. 50. Siam.

  3. 考察 DeepWalk 的矩阵分解:

    十五、NetMF - 图290

    忽略常量以及 element-wiselog 函数,我们关注于矩阵:十五、NetMF - 图291

    根据定理四,实对称矩阵 十五、NetMF - 图292 存在特征值分解 十五、NetMF - 图293 ,其中 十五、NetMF - 图294 为正交矩阵、 十五、NetMF - 图295 为特征值从大到小构成的对角矩阵。

    根据定理三可知, 十五、NetMF - 图296 ,并且 十五、NetMF - 图297

    考虑到 十五、NetMF - 图298 ,因此有:

    十五、NetMF - 图299

    • 我们首先分析 十五、NetMF - 图300 的谱。显然,它具有特征值:

      十五、NetMF - 图301

      这可以视为对 十五、NetMF - 图302 的特征值 十五、NetMF - 图303 进行一个映射 十五、NetMF - 图304。这个映射可以视为一个滤波器,滤波器的效果如下图所示。可以看到:

      • 滤波器倾向于保留正的、大的特征值。
      • 随着窗口大小 十五、NetMF - 图305 的增加,这种偏好变得更加明显。

      即:随着 十五、NetMF - 图306 的增加,滤波器尝试通过保留较大的、正的特征值来近似低阶半正定矩阵。

      十五、NetMF - 图307

    • 然后我们分析 十五、NetMF - 图308 的谱。

      根据定理五,矩阵 十五、NetMF - 图309 的奇异值可以根据其特征值的绝对值得到。我们将 十五、NetMF - 图310 进行降序排列,假设排列的顺序为 十五、NetMF - 图311,则有:

      十五、NetMF - 图312

      考虑到每个 十五、NetMF - 图313 都是正数,因此我们可以将 十五、NetMF - 图314 的奇异值根据特征值 十五、NetMF - 图315 降序排列。假设排列的顺序为 十五、NetMF - 图316 ,则有:

      十五、NetMF - 图317

      特别的,十五、NetMF - 图318 为最小的 degree

      通过应用两次定理五,我们可以发现第 十五、NetMF - 图319 个奇异值满足:

      十五、NetMF - 图320

      因此 十五、NetMF - 图321 的第 十五、NetMF - 图322 个奇异值的上界为 十五、NetMF - 图323

      另外,根据瑞利商,我们有:

      十五、NetMF - 图324

      应用定理七,我们有:

      十五、NetMF - 图325

  4. 为了说明过滤器 十五、NetMF - 图326 的效果,我们分析了 Cora 数据集对应的引文网络。我们将引文链接视为无向边,并选择最大连通分量 largest connected component

    我们分别给出了 十五、NetMF - 图327十五、NetMF - 图328 以及 十五、NetMF - 图329 按照降序排列的特征值,其中 十五、NetMF - 图330

    • 对于 十五、NetMF - 图331 ,最大的特征值为 十五、NetMF - 图332,最小特征值为 十五、NetMF - 图333

    • 对于 十五、NetMF - 图334 ,我们发现:它的所有负特征值以及一些小的正特征值都被过滤掉了 filtered out

    • 对于 十五、NetMF - 图335 ,我们发现:

      • 它的奇异值(即特征值的绝对值)被 十五、NetMF - 图336 的奇异值所限制 bounded
      • 它的最小特征值的被 十五、NetMF - 图337 的特征值所限制 bounded

    十五、NetMF - 图338

  5. 基于前面的理论分析,我们提出了一个矩阵分解框架 NetMF ,它是对 DeepWalkLINE 的改进。

    为表述方便,我们定义:

    十五、NetMF - 图339

    因此 十五、NetMF - 图340 对应于 DeepWalk 的矩阵分解。

    • 对于很小的 十五、NetMF - 图341 ,我们直接计算 十五、NetMF - 图342 并对 十五、NetMF - 图343 进行矩阵分解。

      考虑到直接对 十五、NetMF - 图344 进行矩阵分分解难度很大,有两个原因:

      • 十五、NetMF - 图345 时, 十五、NetMF - 图346 的行为未定义。
      • 十五、NetMF - 图347 是一个巨大的稠密矩阵,计算复杂度太高。

      受到 Shifted PPMI 启发,我们定义 十五、NetMF - 图348 。这使得 十五、NetMF - 图349 中每个元素都是有效的,并且 十五、NetMF - 图350 是稀疏矩阵。然后我们对 十五、NetMF - 图351 进行奇异值分解,并使用它的 top 十五、NetMF - 图352 奇异值和奇异向量来构造embedding 向量。

    • 对于很大的 十五、NetMF - 图353 ,直接计算 十五、NetMF - 图354 的代价太高。我们提出一个近似算法,主要思路是:根据 十五、NetMF - 图355 和归一化拉普拉斯算子之间的关系来近似 十五、NetMF - 图356

      • 首先我们对 十五、NetMF - 图357 进行特征值分解,通过它的 top 十五、NetMF - 图358 个特征值和特征向量十五、NetMF - 图359来逼近 十五、NetMF - 图360

        由于只有 top 十五、NetMF - 图361 个特征值被使用,并且涉及的矩阵是稀疏的,因此我们可以使用 Arnoldi 方法来大大减少时间。

      • 然后我们通过 十五、NetMF - 图362 来逼近 十五、NetMF - 图363

  6. NetMF 算法:

    • 输入:

      • 十五、NetMF - 图364
      • 窗口大小 十五、NetMF - 图365
    • 输出:顶点的 embedding 矩阵 十五、NetMF - 图366

    • 算法步骤:

      • 如果 十五、NetMF - 图367 较小,则计算:

        十五、NetMF - 图368

        如果 十五、NetMF - 图369 较大,则执行特征值分解:十五、NetMF - 图370 。然后计算:

        十五、NetMF - 图371

      • 执行 十五、NetMF - 图372 维的 SVD 分解:十五、NetMF - 图373 或者 十五、NetMF - 图374

      • 返回 十五、NetMF - 图375 作为网络 embedding

  7. 对于较大的 十五、NetMF - 图376 ,可以证明 十五、NetMF - 图377 逼近 十五、NetMF - 图378 的误差上界,也可以证明 十五、NetMF - 图379 逼近 十五、NetMF - 图380 的误差上界。

    定理八:令 十五、NetMF - 图381 为矩阵的 Frobenius 范数,则有:

    十五、NetMF - 图382

    证明:

    • 第一个不等式:可以通过 F 范数的定义和前面的定理七来证明。

    • 第二个不等式:不失一般性我们假设 十五、NetMF - 图383 ,则有:

      十五、NetMF - 图384

      第一步成立是因为: 对于 十五、NetMF - 图385十五、NetMF - 图386 ;第二步成立是因为:十五、NetMF - 图387 。因此有 十五、NetMF - 图388

      另外,根据 十五、NetMF - 图389十五、NetMF - 图390 的定义有:

      十五、NetMF - 图391

      因此有: 十五、NetMF - 图392

  8. DeepWalk 尝试通过随机游走来对顶点抽样,从而期待用经验分布来逼近真实的 vertex-context 分布。尽管大数定律可以保证这种方式的收敛性,但是实际上由于真实世界网络规模较大,而且实际随机游走的规模有限(随机游走序列的长度、序列的数量),因此经验分布和真实分布之间存在gap 。这种 gap 会对 DeepWalk 的性能产生不利影响。

    NetMF 通过直接建模真实的 vertex-context 分布,从而降低了这种 gap ,从而得到比 DeepWalk 更好的效果。

15.2 实验

  1. 作者在多标签顶点分类任务中评估 NetMF 的性能。

  2. 数据集:

    • BlogCatalog 数据集:由博客作者提供的社交关系网络。标签代表作者提供的主题类别。
    • Flickr 数据集:Flickr网站用户之间的关系网络。标签代表用户的兴趣组,如“黑白照片”。
    • Protein-Protein Interactions:PPI:该数据集包含蛋白质和蛋白质之间的关联,标签代表基因组。
    • Wikipedia 数据集:来自维基百科,包含了英文维基百科 dump 文件的前 十五、NetMF - 图393 个字节中的单词共现网络。顶点的标签表示通过Stanford POS-Tagger推断出来的单词词性Part-of-Speech:POS
  3. Baseline 模型:我们将 NetMF(T=1)NetMF(T=10)LINE,DeepWalk 进行比较。

    • 所有模型的 embedding 维度都是 128 维。
    • 对于 NetMF(T=10) ,我们在 Flickr 数据集上选择 十五、NetMF - 图394 ,在其它数据集上选择 十五、NetMF - 图395
    • 对于 DeepWalk ,我们选择窗口大小为 10、随机游走序列长度 40、每个顶点开始的随机游走序列数量为 80

    我们重点将 NetMF(T=1)DeepWalk 进行比较,因为二者窗口大小都为 1 ;重点将 NetMF(T=10)DeepWalk 进行比较,因为二者窗口大小都为 10

  4. DeepWalk 相同的实验步骤,我们首先训练整个网络的 embedding,然后随机采样一部分标记样本来训练一个one-vs-rest 逻辑回归分类模型,剩余的顶点作为测试集。我们评估测试集的 Micro-F1 指标和 Macro-F1 指标。为了确保实验结果可靠,每个配置我们都重复实验 10 次,并报告测试集指标的均值。

    对于 BlogCatalog,PPI,Wikipedia 数据集,我们考察分类训练集占比 10%~90% 的情况下,各模型的性能;对于 Flickr 数据集,我们考察分类训练集占比 1%~10% 的情况下,各模型的性能。

    完成的实验结果如下图所示。可以看到:NetMF(T=1) 相对于 LINE(2nd) 取得了性能的提升,NetMF(T=10) 相对于 DeepWalk 也取得了性能提升。

    • BlogCatalog,PPI,Flickr 数据集中,我们提出的 NetMF(T=10)Baseline 性能更好。这证明了NetMF 理论的正确性。
    • Wikipedia 数据集中,窗口更小的 NetMF(T=1)LINE(2nd) 效果更好。这表明:短期依赖足以建模 Wikipedia 网络结构。

    十五、NetMF - 图396

    如下表所示,大多数情况下当标记数据稀疏时,NetMF 方法远远优于 DeepWalkLINE

    十五、NetMF - 图397