MENU

Heterogeneous Graph Neural Network

February 26, 2022 • Read: 649 • GNN阅读设置

论文链接:https://doi.org/10.1145/3292500.3330961

代码链接:https://github.com/chuxuzhang/KDD2019_HetGNN

ABSTRACT

针对异构图的表示学习问题,提出HetGNN。

  1. 采用基于重启的RW算法,为每个节点采样固定size的强相关异构邻居
  2. 设计含两个模块的神经网络

    • 对异构内容的特征进行编码,为每个节点生成embedding
    • 聚合不同类型的邻居节点,并对不同类型赋予不同权重,组合它们得到最后的embedding
  3. 构建损失函数,通过mini-batch梯度下降端到端训练model

HetGNN用于下游任务性能优于baseline,link prediction, recommendation, node classification & clustering and inductive node classification & clustering

INTRODUCTION

目前的SOTA GNN也难以解决异构图的以下Challenges

  • 在异构图中,对每个节点如何采样对embedding生成强相关的异构邻居?每个节点的邻居数、邻居类型都不同
  • 如何对不同节点的内容异构性进行编码?节点承载的内容不同,如文字或图片。此外不同节点关联的内容也不同。
  • 如何考虑不同类型节点的影响来聚合邻居节点的信息?不同类型的节点影响不同。

为此,提出HetGNN。

HetGNN

HetGNN分为三部分分别应对三个Challenges

1) sampling heterogeneous neighbors
2) encoding node hetero-geneous contents
3) aggregating heterogeneous neighbors

Sampling Heterogeneous Neighbors (C1)

多数GNN是直接从一阶邻居采样,但是放在异构图上会有这么几个问题

  • 难以捕捉不同类型邻居的信息。如作者-论文-会议图中,作者之间不相连,会议和作者也不相连,但不能忽视它们的关系。
  • 邻居节点数目不同。中心节点可能会受到弱相关邻居节点的影响,冷启动节点的embedding无法很好表示。
  • 不适合聚合不同类型的邻居节点。需要对不同的特征类型和维度进行不同的转换。

为此采用random walk with restart(RWR),包含两步

  1. 从节点v开始随机游走,有p概率访问邻居节点或回到初始节点。一直运行直到采样到固定数量。为确保每种类型的节点都被采样到,每种类型节点采样数固定。
  2. 对不同类型的邻居节点分组,对于每个节点v,每个类型t都根据采样频率返回顶部的$k_t$个节点,并将它们作为节点v的t-type邻居集

这样每种类型节点都采样到了;每种类型节点数相同,并且选择了高频节点;相同类型的邻居节点分组,便于type-based aggregation

Encoding Heterogeneous Contents (C2)

对于节点的多个特征,先对其进行预训练,如利用par2vec训练文本,用cnn训练图片,得到各个特征的向量表示,然后通过Bi-LSTM聚合所有特征表示得到节点v的向量表示

其中LSTM如下

模型该部分架构为

Aggregating Heterogeneous Neighbors (C3)

为了解决C3,设计了type-based neural network,包含两部分

  • same type neighbors aggregation
  • types combination

Same Type Neighbors Aggregation

在采样时已经按照节点类型进行固定采样,上一步得到了每个节点的特征。现在需要对类型相同的节点信息进行聚合,采用Bi-LSTM

image-20220226140518851

模型结构为

image-20220226140620401

Types Combination

上一步得到了每种类型节点的向量表示,现在需要对其进行聚合,但是由于不同类型的邻居节点贡献不同,因此采用注意力机制来学习不同类型的邻居节点的权重

image-20220226140843137

模型结构为

image-20220226140902437

Objective and Model Training

设置目标函数

image-20220226141036173