TGN:Temporal Graph Networks论文解读

公众号 异度侵入

图神经网络(GNNs)的研究已经成为今年机器学习领域的热门话题之一。GNNs最近在生物、化学、社会科学、物理等领域取得了一系列成功。但GNN模型目前以静态图上偏多,然而现实世界许多关系是动态的,比如社交网络、金融交易和推荐系统,动态的变化包含了许多重要信息,只考虑静态图,很难捕捉到其中信息。

本篇文章发表在ICLR2020上,对动态图的节点进行连接预测。TGN中,作者除利用传统的图神经网络捕捉非欧式结构生成embedding外,还利用动态图所中时序信息。在本篇公众号里主要介绍TGN中embedding以及memory的更新机制,包含一小部分源码。

TGN:Temporal Graph Networks论文解读_第1张图片

时序图示例

 

01

TGN模型结构

下图为TGN 的一个例子,包含了编码部分和解码部分,在文章中主要是介绍了如何使用TGN进行编码,生成embedding,文章中选择MLP层作为解码器。上面的图片可以理解为,对于节点2和节点4连接的可能性的预测,首先通过TGN生成t8时刻节点2和节点4的embedding,然后通过解码器生成节点2和节点4在t8时刻的连接的可能性。

TGN:Temporal Graph Networks论文解读_第2张图片

 

02

Embedding

 

Embedding,已经为人熟知许久,只不过embedding的事物越来越复杂。如下图所示为TGN中embedding的方式。以layer=3所在节点为例子,通过采样得到layer=2的邻居节点,同样layer=2的节点通过采样得到layer=1节点,采样结束后。通过聚合layer=2的全部信息,包括layer=2层节点信息,以及时间信息得到layer=3节点的embedding,其中非欧式信息通过聚合邻居信息得到,时序信息通过对当前时间戳进行编码得到,参与聚合。这样同时得到时序信息和非欧结构信息。

TGN:Temporal Graph Networks论文解读_第3张图片

 

03

Memory更新机制

Message Function:通过msg函数将节点之间的信息(节点自身feature,embedding,time编码)整合到一起,这类似于消息传递机制,msg源代码只是两层全连接。

TGN:Temporal Graph Networks论文解读_第4张图片

TGN:Temporal Graph Networks论文解读_第5张图片

msg源代码

Memory Updater :用于将过去的状态与新的message聚合,聚合方式如rnn等。

TGN:Temporal Graph Networks论文解读_第6张图片

 

04

Overall

如下图所示为计算的整个流程图

TGN:Temporal Graph Networks论文解读_第7张图片
关注该公众号

TGN:Temporal Graph Networks论文解读_第8张图片

你可能感兴趣的:(图神经网络,神经网络,数据挖掘,机器学习,深度学习)