基于图卷积网络的半监督分类_阅读笔记1

1.图的快速近似卷积

(1) Loss Function

考虑图的节点分类问题,只有一部分节点有标签。这个问题可以被框架为基于图的半监督学习,其中标签信息通过某种形式的显式基于图的正则化在图上平滑,使用了图拉普拉斯正则化的Loss Function:

L_0:图中监督学习部分的标签值

\lambda:加权因子,X:节点特征向量X_i构成的矩阵,\Delta:无向图G={\left ( V,E \right )}的未正则化拉普拉斯矩阵

\Delta =D-A,其中D是度数矩阵,A是邻接矩阵(二进制或者加权形式)

对于\Delta =D-A的补充提示:(参考

公式\left ( 1 \right )建立在“相邻节点标签值很可能相同”的基础上,这可能会限制建模能力,因为edges不一定需要编码节点的相似性,而节点相似性只能作为附加信息。


(2)GCN

模型:f\left ( X,A\right )

X:图的节点特征矩阵,N个节点,N行D维数据,D个特征维度

A:图的邻接矩阵

  • 传播规则propagation rule

$\tilde{A}=A+I_N$:邻接矩阵与单位相加,表示邻接矩阵加上自连接

H_{l+1}是特征矩阵或者张量:(l+1层的激活矩阵,l+2层的输入矩阵)

由于D_{ii}=\sum _jA_{ij}(注意度数矩阵只在对脚线上有值), 同理$\tilde{D_{ii}}=\sum_j\tilde{A_{ij}}$

显然,H_0=X

  • 2.1谱图卷积 Spectral Graph Convolutions
definition:

图信号:x\in\mathbb{R}^N,滤波器:g\left ( \theta \right )=diag(\theta )\theta \in\mathbb{R}^N是在傅里叶域上的一个滤波参数

(也可以将g\left (\theta \right )看成一个关于拉普拉斯矩阵L特征值向量的函数)

U是拉普拉斯矩阵L特征向量组成的正交矩阵

拉普拉斯矩阵:L=I_N-D^{-1/2}AD^{1/2}=U{\Lambda}U^T

由于要乘以特征向量组成的U\left (3 \right )的复杂度为O\left ( N^2 \right ),考虑近似。

近似公式1:

解释:

g\left ( \theta \right )由切比雪夫多项式来近似。

$\tilde{\Lambda}=\frac {2} {​{\lambda}_{max}}-I_N${\lambda}_{max}表示拉普拉斯矩阵的最大特征值,{\theta}^{'}\in\mathbb{R}^{K}是切比雪夫系数,切比雪夫多项式是递归定义的:T_k\left ( x \right )=2xT_{k-1}\left ( x \right )-T_{k-2}\left ( x \right ),且T_0\left ( x \right )=1,T_1\left ( x \right )=x

所以可以得到下方近似公似公式2。

卷积近似公式2(最终):

解释:\tilde{L}=\frac {2} {​{\lambda}_{max}}L-{I_N},这点由{\left ( U{\Lambda}U^T \right )}^k=U{\Lambda}^kU^T得;

现在这个式子是K局部化的,因为它是拉普拉斯算子中的K阶多项式。它仅取决于距离中心节点最大K步的节点(K阶邻域)。

(5)式的计算复杂度为O(\left | \varepsilon \right |),即是边数的线性复杂度。

2.2分层线性模型

        通过对(5)的堆叠即可构建基于图卷积的神经网络,每一层之后都是逐点非线性。现在,想象我们将逐层卷积运算限制为K=1(也就是\left ( 5 \right )式中的K,并且再次强调实际上\left ( 5 \right )就是关于拉普拉斯矩阵L的一个函数)。

        通过这种方式可以堆叠多个层来恢复丰富的卷积滤波器函数类,但是我们不限制于通过Chebyshev多项式的显式参数化。我们直观的期望这样的模型可以减轻在具有非常宽的节点分布图中局部领域结构的过拟合问题,比如社交网络、引用网络、知识图和其他的现实世界图数据集。此外,对固定算力预算,这种逐层的线性公式让我们能够建构更深的模型,这种实践已经被用来提升多个域的建模能力。

        在这个GCN的线性公式中,我们进一步近似{\lambda_{max}}\approx 2,因为我们预期神经网络参数可以在训练过程中适应这样的变化。所以,(5)可以近似为下式:

两个自由参数:{\theta}_0,{\theta}_1^{'},过滤函数可以在整个图上传播共享。于是这种形式的过滤函数的应用可以有效卷积节点的k阶邻域,这里的k是指神经网络模型中连续滤波操作或卷积层的数量。在实践中,进一步约束参数的数量以解决过拟合并最小化每层操作(比如矩阵乘法)的数量可能是有益的。这给我们留下了以下表达式:

只有一个自由参数:\theta={\theta}_0^{'}=-{\theta}_1^{'},注意I_N+D^{-1/2}AD^{1/2}的特征值范围为[0,2]。因此,当在深度神经网络模型中使用时,重复应用该算子可能导致数值不稳定性和梯度爆炸/消失。为了缓解这个问题,我们引入了以下重正化技巧:I_N+D^{-1/2}AD^{1/2}\rightarrow \tilde{D}^{-1/2} \tilde{A} \tilde{D}^{1/2},其中,\tilde{A}=A+I_N\tilde{D_{ii}}=\sum _j{ \tilde{A}_{ij}}

        将这个定义推广到具有C个输入通道的信号X\in\mathbb{R}^{N\times C}(比如说每个点都有的一个C维的特征向量),并且如下有F个过滤函数和特征图的:

Z= \tilde{D}^{-1/2} \tilde{A} \tilde{D}^{-1/2}X\Theta

        其中,\Theta\in \mathbb{R}^{C\times F}是滤波器的参数矩阵,并且Z\in \mathbb{R}^{N\times F}是卷积信号矩阵。这个过滤操作的复杂度是O(|Edges|FC),\tilde{A}X作为稀疏矩阵与密集矩阵的积容易计算。


2.半监督节点分类(SEMI-SUPERVISED NODE CLASSIFICATION

        在介绍了一个简单而灵活的模型f(X,A)用于图上的有效信息传播之后,我们可以回到半监督节点分类的问题。如引言中所述,我们可以放松基于图的半监督学习中通常所做的某些假设,方法是将我们的模型f(X,A)同时基于数据X和底层图结构的邻接矩阵A进行训练。我们希望这种设置在邻接矩阵包含数据X中不存在的信息的情况下特别强大,例如引用网络中文档之间的引用链接或知识图中的关系。整个模型,一个用于半监督学习的多层GCN,如图1所示。

图解:左:用于半监督学习的多层图卷积网络(GCN)的示意图,具有C个输入通道和输出层中的F个特征映射。图结构(边缘显示为黑线)在层上共享,标签由Y_i表示。右:在Cora数据集上训练的两层GCN的隐藏层激活的t-SNE(Maaten &欣顿,2008)可视化(Sen等人,2008年,使用5%的标签。颜色表示文档类别。

2.1 Examples

        在下文中,我们考虑用于具有对称邻接矩阵A(二进制或加权)的图上的半监督节点分类的两层GCN。我们首先在预处理步骤中计算\hat{A}=\tilde{D}^{-1/2} \tilde{A} \tilde{D}^{-1/2}。我们的前向模型采用简单的形式:

        其中,W^{\left ( 0 \right )}\in\mathbb{R}^{C\times H}是隐藏层的具有H个特征映射的的输入-隐藏权重矩阵,W^{\left ( 1 \right )}\in\mathbb{R}^{H\times F}是一个隐藏-输出权重矩阵。按行应用的softmax激活函数,定义为softmax\left ( x_i \right )=\frac{1}{Z}exp\left ( x_i \right ),其中Z=\sum_iexp\left ( x_i\right )。对于半监督多类分类,我们评估所有标记样本的交叉熵误差:

        其中\gamma _L(第一个sum号下面的那个)是具有标签的节点索引的集合。神经网络权重W^{\left ( 0 \right )},W^{\left ( 1 \right )}用梯度下降训练。在这项工作中,我们在每次训练迭代中使用完整的数据集执行批量梯度下降,只要数据集适合内存,这是一个可行的选择。对于A,使用稀疏表示,内存需求为O(|E|),即在边的数量上是线性的。训练过程中的随机性通过dropout引入实现(Srivastava等人,2014年)。我们留下小批量随机梯度下降的有效内存扩展给未来的工作探索。

2.2 实现IMPLEMENTATION

        实践中,我们使用TensorFlow来实现(9)式的密集-稀疏矩阵乘法的有效GPU执行,对(9)式的计算复杂度是O\left ( \left | \varepsilon \right |CHF \right ),是图边数\varepsilon(或者E、edges)的线性复杂度。
​​​​​​​

3.相关工作Related Work

        我们的模型从基于图的半监督学习领域和最近关于在图上操作的神经网络的工作中汲取灵感。在下文中,我们简要介绍了这两个领域的相关工作​​​​​​​​​​​​​​。

 3.1 基于图的半监督学习

        近年来,已经提出了大量使用图表示的半监督学习方法,其中大部分分为两大类:使用某种形式的显式图拉普拉斯正则化的方法和基于图嵌入的方法。图拉普拉斯正则化的突出示例包括标签传播(Zhu等人,2003)、流形正则化(Belkin等人,2006)和深度半监督嵌入(韦斯顿等人,2012年)。

        最近,注意力已经转移到用受skip-gram模型启发的学习图嵌入的模型(Mikolov等人,2013年)中。DeepWalk(Perozzi等人,2014)通过预测节点的局部邻域来学习嵌入,这些邻域是从图上的随机游走中采样的。LINE(Tang等人,2015)和node 2 vec(Grover & Leskovec,2016)通过更复杂的随机游走或广度优先搜索方案扩展了DeepWalk。然而,对于所有这些方法,需要包括随机游走生成和半监督训练的多步骤流水线,其中每个步骤必须单独优化。小行星(杨等人,2016)通过在学习嵌入的过程中注入标签信息来缓解这一点。

3.2 图上的神经网络 Neural Networks on Graphs 

        此前,Gori 等人(2005 年)和 Scarselli 等人(2009 年)将在图上运行的神经网络作为一种递归神经网络形式引入。他们的框架要求反复应用压缩映射作为传播函数,直到节点表征达到稳定的固定点。后来,Li 等人(2016)通过在原始图神经网络框架中引入现代递归神经网络训练方法,缓解了这一限制。Duvenaud 等人(2015)介绍了一种类似卷积的图传播规则和图级分类方法。他们的方法需要学习特定节点度的权重矩阵,这并不适合节点度分布广泛的大型图。而我们的模型每层使用一个权重矩阵,并通过对邻接矩阵进行适当的归一化处理不同的节点度(见第 3.1 节)。                

        Atwood & Towsley(2016)最近介绍了一种使用基于图的神经网络进行节点分类的相关方法。他们报告了O(N2)的复杂度,限制了可能的应用范围。在一个不同但相关的模型中,Niepert等人(2016)将图局部转换为序列,这些序列被馈送到传统的1D卷积神经网络中,这需要在预处理步骤中定义节点排序。

        我们的方法基于谱图卷积神经网络,在Bruna et al.(2014)中引入,后来由Defferrard et al.(2016)扩展为快速局部卷积。与这些工作相反,我们在这里考虑的任务,转导节点分类网络内的显着更大的规模。我们表明,在这种情况下,可以对Bruna et al.(2014)和Defferard et al.(2016)的原始框架进行一些简化(见第2.2节),以提高大规模网络的可扩展性和分类性能。

4.实验​​​​​​​

        我们在一系列实验中测试了我们的模型:引文网络中的半监督文档分类、从知识图中提取的双元图中的半监督实体分类、各种图传播模型的评估以及随机图的运行时间分析。

4.1 数据集

        我们紧跟 Yang 等人(2016 年)的实验设置。表 1 总结了数据集的统计数据。在引文网络数据集--Citeseer、Cora 和 Pubmed(Sen 等人,2008 年)中,节点是文档,边是引文链接。标签率表示用于训练的标签节点数除以每个数据集的节点总数。NELL(Carlson 等人,2010 年;Yang 等人,2016 年)是一个从知识图谱中提取的双向图数据集,包含 55864 个关系节点和 9891 个实体节点。

        引文网络。我们考虑了三个引文网络数据集: Citeseer、Cora 和 Pubmed(Sen 等人,2008 年)。这些数据集包含每篇文档的稀疏词袋特征向量和文档之间的引文链接列表。我们将引文链接视为(不定向)边,并构建了一个二元对称邻接矩阵 A。每个文档都有一个类标签。在训练时,我们只使用每个类别的 20 个标签,但会使用所有的特征向量。

        NELL。 NELL 是从(Carlson 等人,2010 年)中介绍的知识图谱中提取的数据集。知识图谱是一组用有向、有标注的边(关系)连接起来的实体。我们遵循 Yang 等人(2016)中描述的预处理方案。我们为每个实体对\left ( e_1,r,e_2 \right )分配独立的关系节点 r1 和 r2,即\left ( e_1,r_1 \right )\left ( e_2,r_2 \right )。实体节点由稀疏特征向量描述。我们通过为每个关系节点分配唯一的单次表示来扩展 NELL 中的特征数量,从而有效地为每个节点分配了 61,278 维稀疏特征向量。这里的半监督任务考虑了训练集中每个类只有一个标记示例的极端情况。如果节点 i 和 j 之间存在一条或多条边,我们将设置条目 A_{ij}=1,从而从该图中构建一个二元对称邻接矩阵。

        随机图。我们在实验中模拟了不同大小的随机图数据集,以测量每个历时的训练时间。对于有 N 个节点的数据集,我们创建一个随机图,均匀随机地分配 2N 条边。我们将身份矩阵 I_N 作为输入特征矩阵 X,从而隐含地采用了一种无特征方法,即模型只需了解每个节点的身份,该身份由唯一的单击向量指定。我们为每个节点添加虚拟标签 Y_i=1

4.2 set-up

        除非另有说明,我们按照第 3.1 节所述的方法训练双层 GCN,并在 1000 个标注示例的测试集上评估预测准确率。在附录 B 中,我们还提供了使用多达 10 层的更深层模型的额外实验。我们选择了与 Yang 等人(2016 年)相同的数据集拆分,并增加了 500 个标注示例的验证集,用于超参数优化(所有层的丢弃率、第一个 GCN 层的 L2 正则化系数和隐藏单元数)。我们不使用验证集标签进行训练。

        对于引文网络数据集,我们只在 Cora 上优化超参数,而在 Citeseer 和 Pubmed 上使用同一组参数。我们使用 Adam(Kingma & Ba,2015 年)对所有模型进行了最多 200 个历元(训练迭代)的训练,学习率为 0.01,早期停止窗口大小为 10,即如果验证损失在连续 10 个历元中没有减少,我们就停止训练。我们使用 Glorot & Bengio(2010 年)中描述的初始化方法初始化权重,并相应地(行)归一化输入特征向量。在随机图数据集上,我们使用的隐层大小为 32 个单元,并且省略了正则化(即既不使用 dropout,也不使用 L2 正则化)。

4.3 Baseline

        我们与Yang等人(2016)的基线方法进行了比较,即标签传播(LP)(Zhu等人,2003)、半监督嵌入(SemiEmb)(Weston等人,2012)、流形正则化(ManiReg)(Belkin等人,2006)和基于跳格的图嵌入(DeepWalk)(Perozzi等人,2014)。我们省略了 TSVM(Joachims,1999 年),因为在我们的一个数据集中,它无法扩展到大量的类。

        我们进一步与 Lu 和 Getoor(2003 年)提出的迭代分类算法(ICA)以及两个逻辑回归分类器进行了比较,其中一个分类器仅用于本地节点特征,另一个分类器则使用本地特征和 Sen 等人(2008 年)所述的聚合算子进行关系分类。我们首先使用所有标注的训练集节点来训练本地分类器,然后用它来引导未标注节点的类标签,以便进行关系分类器训练。我们使用随机节点排序对所有未标注节点(使用本地分类器自举)进行 10 次迭代分类(关系分类器)。L2 正则化参数和聚合算子(count vs. prop,参见 Sen 等人(2008 年))是根据每个数据集的验证集性能分别选择的。

        最后,我们与小行星进行比较(Yang等人,2016),我们总是选择他们表现最好的模型变体(transductive vs. inductive)作为基线。

原文:http://arxiv.org/abs/1609.02907

  • 19
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值