©PaperWeekly 原创 · 作者|马敏博
学校|西南交通大学硕士生
研究方向|命名实体识别
本次分享的论文是 KDD 2020 的一篇工作,出发点是为了更好地建模多变量时间序列数据中成对变量之间的潜在空间依赖。作者提出了一种通用的图神经网络框架 MTGNN,通过图学习模块融合外部知识和变量之间的单向关系,再使用 mix-hop 传播层和膨胀 inception 捕获空间和时序依赖。
此外,为更好地训练模型,结合课程学习提出了一种学习算法。在四个常规多变量时序数据集以及两个图数据集上的实验表明,对比现有取得 SOTA 的模型 MTGNN 具有较强的竞争力,在多个数据集上取得最优表现。
论文标题:
Connecting the Dots: Multivariate Time Series Forecasting with Graph Neural Networks
论文来源:
KDD 2020
论文链接:
https://arxiv.org/abs/2005.11650
代码链接:
https://github.com/nnzhan/MTGNN
本文将从以下方面对这篇工作进行介绍:
背景
挑战
MTGNN框架
实验解读
个人总结
背景
多变量时序预测在经济、金融、生物信息和交通等领域有广泛应用。相较于单变量时序预测,需要建模的问题更复杂,因为每个变量不仅与其历史值有关,还要考虑变量之间的依赖关系。
然而,现有的多变量时序预测方法并没有有效地探索变量之间的潜在空间依赖关系。统计方法如 VAR 和 GP 假设变量之间存在线性依赖关系,随着变量的增加,模型复杂度二次方增长,容易导致过拟合。深度学习方法如 LSTNet [1] 和 TPA-LSTM [2],虽然能够捕获非线性关系,但是无法明确地建模成对变量之间的依赖关系。
图是一种数据结构,可以描述节点之间的关系。目前,图神经网络由于排列不变性、局部连接以及组合性的特点,在处理图数据上取得较大的成功。多变量时序预测从图视角来看,变量可以当作节点,它们通过隐层依赖关系相互连接。所以,图神经网络可以建模多变量时序预测,这也是这篇论文的主要出发点。
挑战
时空图神经网络是最适合多变量时序预测任务的图神经网络类型,因为多变量时序预测问题需要考虑时间维和空间维的信息表达。通常时空图神经网络以多变量时序数据和外部图结构作为输入,预测时序数据的未来值或标签。相较于未利用结构信息的方法,能够取得较大提升。但是,该方法仍然存在两个方面的挑战:
未知的图结构 :使用图神经网络建模时序预测任务时,大多依赖于预定义的图结构。但是,大多数情况下,多变量时序预测是没有明确的图结构,需要从数据中去学习变量之间的关系(图)。
图结构与图神经网络共同学习:现有方法大多专注于如何设计合适的图神经网络结构,却忽略了有时图结构(通常为邻接矩阵)有可能不是最优的,也需要在训练中优化。因此,对于时序问题,如何在一个 end2end 的框架下同时学习图结构和图神经网络是一个问题。
MTGNN
MTGNN 各部分之间的联系如下图所示,主要有三个模块组成图学习模块、图卷积模块、时序卷积模块。
下面根据上述两个挑战,介绍下本文的解决方案。
针对挑战1,作者提出了一个图学习层,能够自适应地从数据中抽取稀疏图邻接矩阵。此外,基于学习得到的图邻接矩阵,作者使用图卷积模块进行变量之间空间依赖学习。同时,作者对图卷积模块进行了改进,学习变量之间的单向依赖以及缓解图神经网络中的过度平滑问题。
针对挑战2,图学习层和图卷积模块都是参数化的,两者通过后向传播(梯度下降)方法共同优化。
除上述改进之外,作者还在时序卷积以及训练优化方面进行了研究。在时序卷积方面,作者提出了膨胀 inception 层,以便处理更长序列时序数据;针对大规模图学习中的非凸优化问题以及内存占用问题,作者提出了基于课程学习寻找局部最优以及切分多变量时序数据为多个子片段的学习算法。
▲ MTGNN概念图
3.1 总体框架
在介绍完大概的解决方法后,下面将系统地介绍 MTGNN 整体框架。必不可少的,先来看总体框架图(如下图所示)。主要包括了图学习层、m 个图卷积模块、m 个时序卷积模块、输出模块。除主要模块外,还包括了残差连接和跳跃连接。接下来的章节,将详细介绍每一模块。
▲ MTGNN总体框架图
3.2 图学习层
图学习层是为了学习一个邻接矩阵,从时序数据中自适应地捕获变量之间的空间关系。作者认为时序书中变量之间的关系是单向的,一个节点状态的变化会引起其他节点的变化,如交通流问题。所以需要注意的是,所提图学习层学习的邻接矩阵具有非对称的属性。通过以下计算,可以实现该方法。
▲ 计算公式
其中, 为初始化节点嵌入, 为模型参数, 为激活函数的饱和率,