图神经网络(三)GCN的变体与框架(3)R-GCN

图神经网络(三)GCN的变体与框架(3)R-GCN

3.3 R-GCN

 在之前介绍的所有GNN的变体模型中,都没有显式地考虑节点之间关系的不同,相较于同构图,现实生活中的图数据往往是异构的,即图里面存在不止一种类型的关系。本节要介绍的R-GCN就是将图卷积神经网络拓展到这种场景的图数据中去 [0]

3.3.1 知识图谱

 一种最典型的包含多种关系的图数据就是知识图谱(Knowledge Graph)。知识图谱是一种规模非常庞大的语义网络,其主要作用是描述通用或专用场景下实体间的关联关系,主要应用场景为搜索引擎、语音助手、智能问答等。

 举一个简单的例子,当我们在Google上搜索“欧拉”时,结果返回页的右边栏会出现一个卡片。如图3-6所示,里面除了有对数学家欧拉的成就介绍外,还分门别类地列出来一些基本情况:生卒年、家庭、教育等信息。搜索引擎能够以这么简单明了的形式列出任务的相关知识,背后离不开知识图谱技术的支持。图3-6的右图将卡片中的一些信息以知识图谱的形式展现了出来。


图3-6 Google搜索“欧拉”返回的结果 [1]

 知识图谱的构建所依赖的核心技术是信息抽取与知识构建,该项技术只在从大规模非结构化的自然语言文本中抽取出结构化信息,该技术决定了知识图谱可持续扩增的能力。而对于一个已有的知识图谱,有的时候还需要基于现存的实体间的关系,通过推理学习得到实体间新的关系并将其补充进知识图谱里面去。作为图数据的一种通用学习手段,将GNN应用到该任务上的最大的问题在于如何考量实体间的各种不同关系,而且往往这些关系会有上千种之多,发生过拟合的风险非常高。

[1] 图片来源:https://zh.wikipedia.org/wiki/莱昂哈德·欧拉。



3.3.2 R-GCN

 R-GCN [7] 基于GCN的聚合邻居的操作,又增加了一个聚合关系的维度,,使得节点的聚合操作变成一个双重聚合的过程,其核心公式如下:
h i ( l + 1 ) = σ ( ∑ r ∈ R ∑ v j ∈ N v i ( r ) 1 c i , r W r ( l ) h j ( l ) + W o ( l ) h i ( l ) ) \boldsymbol{h}_i^{(l+1)}=σ\Bigg(∑_{r∈R}∑_{v_j∈N_{v_i}^{(r)}}\frac{1}{c_{i,r}} W_r^{(l)} \boldsymbol{h}_j^{(l)}+W_o^{(l)} \boldsymbol{h}_i^{(l)}\Bigg) hi(l+1)=σ(rRvjNvi(r)ci,r1Wr(l)hj(l)+Wo(l)hi(l))
R R R 表示图例所有的关系集合, N v i ( r ) N_{v_i}^{(r)} Nvi(r) 表示与节点 v i v_i vi 具有 r r r 关系的邻居集合。 c i , r c_{i,r} ci,r 用来做归一化,比如取 c i , r = ∣ N v i ( r ) ∣ c_{i,r}=|N_{v_i}^{(r)}| ci,r=Nvi(r) W r W_r Wr 是具有 r r r 关系的邻居对应的权重参数, W o W_o Wo 是节点自身对应的权重参数。

 由于GCN考虑的是同构图建模,节点之间只存在一种关系,因此GCN只需要一组权重参数来对节点的特征进行变换。R-GCN考虑的是异构图建模,在处理邻居的时候,考量关系的因素对邻居进行分类操作:对于每一种关系的邻居引入不同的权重参数,分别对属于同一关系类型的邻居聚合之后,在进行一次总的聚合,如图3-7所示。


图3-7 R-GCN聚合邻居操作 [1]

 图3-7所示为R-GCN聚合邻居操作的示意图,我们可以清晰地看到这是一个两层的聚合操作:先对同种关系的邻居进行单独聚合,这里对于每一种关系,也同时考虑了关系的正反方向,同时对于自身加入了自连接的关系,在将上述所有不同关系的邻居进行聚合之后,在进行一次总的聚合。

 之前我们提到,一个典型的多关系图数据——知识图谱往往包含着大量的关系。如果我们为每一种关系都设计一组权重,那么单层R-GCN需要学习的参数量僵尸粉庞大,同时,由于不同关系的节点数量是不一样的,对于一些不常见的关系而言,其权重参数对应的学习数据非常少,这大大增加了过拟合的风险。为了避免上述情况发生,R-GCN提出了对 W r W_r Wr 进行基分解(basic decomposition)的方案,即:
W r = ∑ b = 1 B a r b V b W_r=∑_{b=1}^Ba_{rb} V_b Wr=b=1BarbVb
 我们称 V b ∈ R d ( l + 1 ) × d ( l ) V_b∈R^{d^{(l+1)}×d^{(l)}} VbRd(l+1)×d(l) 为基, a r b a_{rb} arb W r W_r Wr V b V_b Vb 上的分解系数, B B B 是超参数,控制着 V b V_b Vb 的个数, V b V_b Vb a r b a_{rb} arb 是取代 W r W_r Wr 需要学习的参数。通过上式的基分解,我们将 W r W_r Wr 变成了一组基的线性加和,且对于 ∣ R ∣ |R| R W r W_r Wr ,可以反复利用 ∣ B ∣ |B| B 组基进行线性加和表示。这样做的好处在于,首先,将需要学习的参数减至原来的 B × d ( l + 1 ) × d ( l ) + ∣ R ∣ × B ∣ R ∣ × d ( l + 1 ) × d ( l ) \frac{B×d^{(l+1)}×d^{(l)}+|R|×B}{|R|×d^{(l+1)}×d^{(l)}} R×d(l+1)×d(l)B×d(l+1)×d(l)+R×B,在实际训练的时候,我们可以设置一个较小的 B B B 值,使得 B ≪ min ⁡ ( ∣ R ∣ × d ( l + 1 ) × d ( l ) ) B\ll\text{min}⁡(|R|×d^{(l+1)}×d^{(l)}) Bmin(R×d(l+1)×d(l));其次,基 V b V_b Vb 的优化是所有的常见或者不常见关系所共享的,这种共享的优化参数可以有效防止非常见关系上过拟合现象的出现。基分解是一种非常长喊的数据变换的表示方式(图信号的傅里叶变换中也体现了这种思想),在机器学习中,其作为一种重要的数据处理技巧得到了广泛的应用。

参考文献

[0] 刘忠雨, 李彦霖, 周洋.《深入浅出图神经网络: GNN原理解析》.机械工业出版社.

[1] Schlichtkrull M , Kipf T N , Bloem P , et al.Modeling relational data with graph convolutional networks[C]//European Semantic Web Conference.Springer , Cham,2018:593-607.

[7] Schlichtkrull M,Kipf T N,Bloem P,et al.Modeling relational data with graph convolutional networks[C]//European Semantic Web Conference.Springer,Cham,2018:593-607.

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
时空卷积神经网络(Space-Time Graph Convolutional Network,简称ST-GCN)是一种用于处理时空数据的神经网络模型。它主要应用于视频动作识别、姿态估计等任务,能够有效地从连续视频序列中学习时空特征。 ST-GCN的核心思想是将视频序列抽象为时空结构。在时空中,每个节点代表一个视频帧,节点之间的边表示它们之间的时序关联关系。通过构建时空,ST-GCN能够捕捉到视频中相邻帧之间的时序信息。 ST-GCN通过两个关键的操作来处理时空。首先是卷积操作,它通过聚合相邻帧的时序信息来更新每个节点的特征表示。这种卷积操作可以有效地传播并整合时序信息,从而将时空关系编码到节点的特征中。 其次是1D卷积操作,它在每个节点上进行,用于进一步提取节点的时序特征。通过多个1D卷积层的叠加,ST-GCN可以逐渐抽象出更高级别的时序特征。 最后,ST-GCN会将最终的表示传递给分类器进行动作识别或其他任务。分类器可以是全连接层、支持向量机等,用于从抽取的时空特征中预测视频的标签。 总结来说,ST-GCN是一种专门用于处理时空数据的神经网络模型。它通过构建时空,并通过卷积和1D卷积操作来抽取视频序列中的时序特征。ST-GCN在视频动作识别等任务中取得了较好的性能,对于时空关联关系的建模具有较强的能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值