《Network Representation Learning with Rich Text Information》
网络在我们的日常生活中无处不在,例如 Facebook 用户之间的友谊或学术论文之间的引用。近年来,研究人员广泛研究了网络中许多重要的机器学习应用,例如顶点分类(vertex classification )、标签推荐( tag recommendation)、异常检测 (anomaly detection)、链接预测( link prediction)。数据稀疏( data sparsity )是这些任务面临的常见问题。为了解决数据稀疏性问题,network representation learning: NRL 在统一的低维空间中编码和表达每个顶点。 NRL 有助于我们更好地理解顶点之间的语义相关性(semantic relatedness ),并进一步缓解稀疏性带来的不便。
NRL 中的大多数工作从网络结构中学习 representation。例如,social dimensions 是计算网络的拉普拉斯( Laplacian )矩阵或 modularity 矩阵的特征向量( eigenvectors )。最近,NLP 中的 word representation 模型 SkipGram 被引入,用于从社交网络中的随机游走序列中学习顶点的 representation,称作 DeepWalk 。social dimensions 和 DeepWalk 方法都将网络结构作为输入来学习 network representation,但是没有考虑任何其它信息。
在现实世界中,网络中的顶点通常具有丰富的信息,例如文本内容和其它元数据( meta data)。例如,维基百科文章相互连接并形成网络,每篇文章作为一个顶点都包含大量的文本信息,这些文本信息可能对 NRL 也很重要。因此,论文 《Network Representation Learning with Rich Text Information》 提出了同时从网络结构和文本信息中学习 network representation 的想法,即 text-associated DeepWalk: TADW 。
一种直接的方法是:分别独立地从文本特征和网络特征中学习 representation,然后将两个独立的 representation 拼接起来。然而,该方法没有考虑网络结构和文本信息之间复杂的交互 interaction ,因此通常会导致效果不佳。
在现有的 NRL 框架中加入文本信息也不容易。例如,DeepWalk 在网络中的随机游走过程中,无法轻松地处理附加信息。
幸运的是,给定网络 DeepWalk 实际上是分解矩阵 steps 随机游走到顶点 (a) 展示了 MF 风格的 DeepWalk:将矩阵 DeepWalk 将矩阵 representation。我们将在后面进一步详细介绍。

DeepWalk 的矩阵分解视角启发了作者将文本信息引入到 NRL 的 MF 中。如上图 (b) 展示了论文方法的主要思想:将矩阵 representation 。
论文在三个数据集上针对多个 baseline 测试了 TADW 算法。当训练集比率 training ratio在 10% ~ 50% 的范围内时,TADW 的representation 的分类准确率比其它 baseline 高达 2% ~ 10% 。当训练集比率小于 10% 时,论文还使用半监督分类器 Transductive SVM: TSVM 测试这些方法。TADW 在 1% 的训练集比率下,相比其它 baseline 方法提升了 5% ~ 20% ,尤其是在网络信息包含噪音的情况下。
论文主要贡献:
论文证明了 DeepWalk 算法实际上分解了一个矩阵 closed form 。
论文将文本特征引入 NRL,并相比其它 baseline 获得了 5% ~ 20% 的优势,尤其是在训练集比率较小的情况下。
相关工作:representation learning 广泛应用于计算机视觉、自然语言处理、knowledge representation learning 。一些研究集中在 NRL,但它们都无法泛化来处理顶点的其它特征。据作者所知,很少有工作致力于考虑 NRL 中的文本信息。
有一些主题模型topic model ,如 NetPLSA,在主题建模时同时考虑了网络和文本信息,然后可以用主题分布( topic distribution )来表示每个顶点。在本文中,作者以 NetPLSA 作为 baseline 方法。
公式化 NRL :给定网络 representation 向量 real-valued representation,network representation 的稀疏性。我们可以将 SVM 。注意,representation 不是特定于任务(task-specific )的,可以在不同任务之间共享。
我们首先介绍 DeepWalk,然后给出 DeepWalk 和矩阵分解之间的等价证明。
DeepWalk 首次将应用广泛的分布式 word representation 方法 SkipGram 引入到社交网络的研究中,从而根据网络结构来学习 vertex representation 。
DeepWalk 首先生成短的随机游走(short random walk )(短的随机游走也被用作相似性度量)。给定一条由随机游走生成的顶点序列 window size) 。遵循 SkipGram 的思想,DeepWalk 旨在最大化随机游走顶点序列 vertex-context pair 的平均对数概率( average log probability):
其中 softmax 函数的方式来定义:
其中 :
center vertex 时的 represetation 向量。
context vertex 时的 representation 向量。
即,每个顶点 representation 向量:当 center vertex 时的 context vertex 时的
之后,DeepWalk 使用 SkipGram 和 Hierarchical Softmax 从随机游走生成的序列中学习顶点的 representation。注意,Hierarchical Softmax 是用于加速的 softmax 的变体。
假设一个 vertex-context 集合 vertex-context pair vertex 集合为 context 集合为
DeepWalk 将一个vertex context vertex embedding 组成的矩阵,其中第 vertex representation。令 context embedding 组成的矩阵,其中第 context representation。我们的目标是找出矩阵 closed form,其中
现在我们考虑一个 vertex-context pair vertex context
《Neural word embedding as implicit matrix factorization》已经证明:当维度 SkipGram (SkipGram with Negative Sampling: SGNS) 相当于隐式地分解 word-context 矩阵
其中 word-context pair 的负样本数量。
word-context pair Pointwise Mutual Information: PMI 的
类似地,我们可以证明带 softmax 的 SkipGram 相当于分解矩阵
我们现在讨论 DeepWalk 中的 vertex-context pair 的采样方法会影响矩阵 connected )和无向 (undirected )的,窗口大小为 DeepWalk 算法的理想的采样方法来讨论
首先我们生成一条足够长的随机游走序列
然后我们将 vertex-context pair
PageRank 值。
将 PageRank 中的转移矩阵表示为 degree,则有:
我们使用 1 之外其它项均为零。假设我们从顶点
上述证明也适用于有向图。因此,我们可以看到
通过证明 DeepWalk 等价于矩阵分解,我们提出融合丰富的文本信息到基于 DeepWalk 派生的矩阵分解中。
这里我们首先简要介绍低秩矩阵分解,然后我们提出从网络和文本信息中学习 representation 的方法。
矩阵是表示关系型数据(relational data) 的常用方法。矩阵分析的一个有趣主题是通过矩阵的一部分项来找出矩阵的内在结构。一个假设是矩阵 complete )矩阵 rank constraint optimization )始终是 NP 难的。因此,研究人员求助于寻找矩阵 trace norm constraint )(这个约束可以通过在损失函数中添加一个惩罚项从而进一步地移除)。在本文中,我们使用平方损失函数。
低秩分解:形式上,令矩阵
其中 Frobenius 范数,
归纳矩阵补全:低秩矩阵分解仅基于 item 具有附加特征( additional feature),那么我们可以应用归纳矩阵补全( inductive matrix completion )来利用它们。归纳矩阵补全通过融合两个特征矩阵( feature matrix) 到目标函数中从而利用更多行单元( row unit )和列单元( column unit )的信息。
假设我们有特征矩阵
注意,归纳矩阵补全最初是为了补全具有基因特征和疾病特征的 “基因-疾病”矩阵,其目标与我们的工作有很大不同。受归纳矩阵补全思想的启发,我们将文本信息引入 NRL 。
给定一个网络 DeepWalk (text-associated DeepWalk: TADW )从网络结构 representaion 。
回想一下,DeepWalk 分解矩阵 DeepWalk 使用基于随机游走的采样方法来避免显式地、精确地计算矩阵 DeepWalk 采样更多的随机游走序列时,性能会更好,但是计算效率会更低。
在 TADW 中,我们找到了速度和准确性之间的 tradeoff:分解矩阵
即使是
的计算复杂度,对于百万甚至亿级顶点的网络而言,这个计算复杂度仍然无法接受。
我们的任务是求解矩阵
为了优化 TADW 可能收敛到局部最小值而不是全局最小值,但我们的方法在实践中效果很好,如我们的实验所示。
也可以直接应用随机梯度下降法来优化。
不同于低秩矩阵分解( low-rank matrix factorization )和归纳矩阵补全(inductive matrix completion)(它们聚焦于补全矩阵 TADW 的目标是结合文本特征从而获得更好的 network representation 。此外,归纳矩阵补全直接从原始数据中获得矩阵 MF 风格的 DeepWalk 的推导中人为地构建矩阵
由于从 TADW 获得的 representation,因此我们可以通过拼接它们为 network representation 构建一个统一的、representation 显著优于将 network representation 和文本特征(即矩阵
复杂度分析:在 TADW 中,计算 《Large-scale multi-label learning with missing labels》 引入的快速过程来求解 TADW 的优化问题。
最小化 nnz(.) 为矩阵非零元素的个数。作为比较,传统矩阵分解的复杂度(即低秩矩阵分解的优化问题) 为 10 次迭代中收敛。
未来工作:针对大规模网络数据场景的 TADW 在线学习和分布式学习。另外,还可以研究矩阵分解的其它技术,例如 matrix co-factorization,从而包含来自其它来源的丰富信息。
我们使用顶点分类问题来评估 NRL 的质量。正式地,我们得到顶点的低维 representation 作为顶点特征,然后我们的任务是基于顶点特征用标记顶点集合 label 。
机器学习中的许多分类器可以处理这个任务。我们分别选择 SVM 和 transductive SVM 从而进行监督的、半监督的学习和测试。注意,由于 representation learning 过程忽略了训练集中的顶点 label ,因此 representation learning 是无监督的。
我们使用三个公开可用的数据集,并使用 representation learning 的五种 baseline 方法来评估 TADW 。我们从文档之间的链接或引用,以及这些文档的 term frequency-inverse document frequency: TF-IDF 矩阵(即矩阵 representation 。
数据集:
Cora 数据集:包含来自七个类别的 2708 篇机器学习论文。论文之间的链接代表引用关系,共有 5429个链接。每篇文档映射为一个 1433 维的binary 向量,每一位为0/1 表示对应的单词是否存在。
Citeseer数据集:包含来自六个类别的 3312 篇公开发表出版物。文档之间的链接代表引用关系,共4732个链接。每篇文档映射为一个 3703 维的binary 向量,每一位为0/1 表示对应的单词是否存在。
Wiki 数据集:包含来自十九个类别的 2405篇维基百科文章。文章之间的链接代表超链接,共 17981 个链接。我们移除了没有任何超链接的文档。每篇文章都用内容单词的 TFIDF 向量来表示,向量维度为 4973 维。
Cora 和 Citeseer 数据集从标题、摘要中生成短文本作为文档,并经过停用词处理、低频词处理(过滤文档词频低于 10 个的单词),并将每个单词转化为 one-hot 向量。 Cora、Citeseer 数据集平均每篇文档包含 18~32 个单词,数据集被认为是有向图。
Wiki 数据集是长文本,平均每篇文档包含640 个单词,数据集被认为是无向图。
baseline 方法及其配置:
TADW :通过SVD 分解 TFIDF 矩阵到 200 维的文本特征矩阵 content-only 的 baseline 。
对于 Cora,Citeseer 数据集 Wiki 数据集
注意:最终每个顶点的representation 向量的维度为
DeepWalk:DeepWalk 是一种 network-only representation learning 方法。我们选择参数为:窗口尺寸 Cora,Citeseer 数据集维度 Wiki 数据集维度 50 ~200 之间选择的性能最佳的维度。
我们还通过求解“低秩分解”方程并将 representation 从而评估 MF-style DeepWalk 的性能。结果与 DeepWalk 相比差不多,因此我们仅报告了原始 DeepWalk 的性能。
pLSA:我们使用 PLSA 通过将每个顶点视为一个文档来从 TF-IDF 矩阵训练主题模型。因此,PLSA 是 content-only baseline 方法。PLSA 通过 EM 算法估计文档的主题分布和主题的 word 分布。我们使用文档的主题分布作为顶点 representation。
Text Features:使用文本特征矩阵 200 维 representation,这也是一种 content-only baseline 方法。
Naive Combination:直接拼接 DeepWalk 的embedding 向量和文本特征向量。对于 Cora,Citeseer 数据集这将得到一个300 维向量;对于Wiki 数据集这将得到一个 400 维向量。
NetPLSA :NetPLSA 将文档之间的链接视为网络正则化来学习文档的主题分布,存在链接的文档应该共享相似的主题分布。我们使用网络增强的文档主题分布作为 network representation 。
NetPLSA 可以视为一种兼顾网络和文本信息的 NRL 方法。我们将 Cora,Citeseer 数据集主题数量设置为 160,将 Wiki 数据集主题数量设置为 200 。
评估方式:对于监督分类器,我们使用由 Liblinear 实现的linear SVM。对于半监督分类器,我们使用 SVM-Light 实现的 transductive SVM 。我们对 TVSM 使用线性核。我们为每个类别训练一个 one-vs-rest 分类器,并选择 linear SVM 和 transductive SVM 中得分最高的类别。
我们将顶点的 representation 作为特征来训练分类器,并以不同的训练比率 training ratio来评估分类准确性。训练比率从 linear SVM 的 10% ~ 50% ,以及从 TSVM 的 1% ~ 10% 不等。对于每个训练比率,我们随机选择文档作为训练集,剩余文档作为测试集。我们重复试验 10 次并报告平均准确率。
实验结果:下表给出了 Cora 数据集、Citeseer 数据集、Wiki 数据集的分类准确率。这里 - 表示 TSVM 不能在 12 小时内收敛,因为 representation 的质量较低(对于 TADW,TADM 总是可以在 5 分钟内收敛)。我们没有在 Wiki 数据集上展示半监督学习的结果,因为监督 SVM 已经在这个数据集上以较小的训练比率获得了有竞争力的、甚至更好的性能。因此,我们仅报告 Wiki 数据集的有监督 SVM 的结果。Wiki 数据集的类别要比其它两个数据集多得多,这需要更多的数据来进行足够的训练,因此我们将最小训练比率设为 3%。
从这些表中我们可以看到:
TADW 在所有三个数据集上始终优于所有其它 baseline。此外,TADW 可以在 Cora 数据集和 Citeseer 数据集上减少 50% 的训练数据从而击败其它 baseline 。这些实验证明 TADW 是有效且鲁棒的。
TADW 对于半监督学习有更显著的提升。TADW 的表现优于最佳的 baseline (即 naive combination),在 Cora 数据集上提升 4%、在 Citeseer 数据集上提升 10% ~ 20%。这是因为在 Citeseer 上的 network representation 质量很差,而 TADW 从噪音的数据中学习比 naive combination 更鲁棒。
TADW 在训练比率较小时有更好的表现。大多数 baseline 的准确率随着训练比率的降低而迅速下降,因为它们的vertex representation 对于 training 和 testing 而言非常 noisy 和 inconsistent 。相反,由于 TADW 从网络和文本信息中联合学习 representation,因此 representation 具有更少的噪音并且更加一致。
这些观察结果证明了 TADW 生成的高质量 representation。此外,TADW 不是 task-specific 的,representation 可以方便地用于不同的任务,例如链接预测、相似性计算、顶点分类等等。TADW 的分类准确性也与最近的几种 collective 分类算法相媲美,尽管我们在学习representation 时没有对任务执行特别的优化。



参数敏感性:TADW 有两个超参数:维度 10%,并使用不同的 Cora 数据集和 Citeseer 数据集,我们让 40 ~ 120 之间变化,而 0.1 ~ 1 之间变化。对于 Wiki 数据集,我们让 100 ~ 200 之间变化,而 0.1 ~ 1 之间变化。下图显示了不同
可以看到:
对于 Cora, Citeseer, Wiki 上的固定 1.5%, 1%, 2% 的波动范围内。
当 Cora 和 Citeseer 上的 Wiki 上的 competitive 。因此,当 TADW 可以保持稳定。

案例研究:为了更好地理解 NRL 文本信息的有效性,我们在 Cora 数据集中提供了一个案例。document 标题为 Irrelevant Features and the Subset Selection Problem(不相关特征和子集选择问题)。我们将这篇论文简称为 IFSSP。IFSSP 的类别标签为 Theory。如下表所示,使用 DeepWalk 和 TADW 生成的 representation,我们找到了 5 篇最相似的论文,并基于余弦相似度来排序。
我们发现,所有这些论文都被 IFSSP 引用。然而,DeepWalk 发现的 5 篇论文中有 3 篇具有不同的类别标签,而 TADW 发现的前 4 篇论文具有相同的类别标签 Theory 。这表明:与单纯的基于网络的 DeepWalk 相比,TADW 可以借助文本信息学到更好的 network representation 。
DeepWalk 发现的第 5 篇论文也展示了仅考虑网络信息的另一个限制。《MLC Tutorial A Machine Learning library of C classes》 (简称 MLC)是一个描述通用 toolbox 的论文,可以被不同主题的许多论文引用。一旦其中一些论文也引用了 IFSSP,DeepWalk 将倾向于给 IFSSP 一个与 MLC 类似的 representation,即使它们具有完全不同的主题。
