论文笔记|Deep Transformer Models for Time Series Forecasting: The Influenza Prevalence Case

0 摘要

本文提出的新方法:使用基于Transformer的机器学习模型来预测时间序列数据。该方法通过利用自注意力机制从时间序列数据中学习复杂的模式和动态。

该方法具有通用性:它是一个通用的框架,可以应用于单变量和多变量时间序列数据,以及时间序列嵌入。

预测数据集:以流感样病例( influenza like illness,ILI )预测为例,我们证明了我们的方法产生的预测结果具有良好的可比性。

1. Introduction

疾病数据通常至少有一周的ILI报告延迟。因此,预测ILI活动对于实时疾病监测至关重要,对于公共卫生机构分配资源以规划和准备潜在的大流行也至关重要。

(1)常用方法:

①机理建模是基于对基础疾病感染动力学的理解。例如,SIR等区室方法是模拟疾病传播动力学的常用方法。

②统计和机器学习方法利用地面真值数据来学习趋势和模式。比较流行的方法有自回归( AR )、自回归移动平均( ARMA )、自回归移动平均( ARIMA )等。此外,基于卷积和循环神经网络的深度学习方法已被开发用于ILI数据建模。这些序列对齐模型是时间序列数据建模的自然选择。

然而,由于循环神经网络的"梯度消失和爆炸"问题以及卷积滤波器的限制,这些方法在建模序列数据中的长期复杂关系时存在局限性。

(2)本文贡献:我们开发了一个通用的基于Transformer的时间序列预测模型。

①对状态空间模型的补充。它可以对观测数据进行建模。使用嵌入作为代理,我们的方法也可以对系统的状态变量和相空间进行建模。

②使用ILI预测作为案例研究,我们证明了我们基于Transformer的模型能够使用多种特征准确地预测ILI流行率。

③我们表明在ILI案例中,我们基于Transformer的模型实现了最先进的预测结果。

本文提出了一种基于Transformer架构( Vaswani等, 2017)的时间序列预测方法。与序列对齐模型不同,Transformer不以有序序列的方式处理数据。相反,它处理整个序列数据并使用自注意力机制学习序列中的依赖关系。因此,基于Transformer的模型有潜力对序列模型具有挑战性的时间序列数据的复杂动态进行建模。在这项工作中,我们使用ILI预测作为案例研究,表明基于Transformer的模型可以成功地应用于时间序列预测任务,并且它优于许多现有的预测技术。

基于Transformer的预测模型架构

Figure 1. Architecture of Transformer-based forecasting model.

2. Related Work

(1)一个经典方法:谷歌流感趋势( Google Flu Trends,GFT )使用一个线性模型,使用预定义项的谷歌搜索量来估计当前的ILI比率( "现在预测")。GFT最初被认为是一个巨大的成功,但在随后的年份( Olson等, 2013 ; Lazer等, 2014)中出现了ILI峰值的高估。

(2)深度学习方法:

①Liu等( 2018 )使用谷歌趋势、气候、空气污染和病毒学生存数据训练了一个基于LSTM的模型来预测流感流行率。

②Venna等( 2019 )开发了基于LSTM的多阶段模型,将气候和时空调整因素纳入流感预测。

基于注意力机制的技术也被应用于ILI预测。

③Zhu等( 2019 )开发了多通道LSTM神经网络,从不同类型的输入中学习。他们的模型使用注意力层将模型输出与输入序列相关联,以进一步提高预测精度。

④Kondo等人( 2019 )采用了具有类似注意力机制的序列到序列的( ' Seq2Seq ')模型来预测流感流行率,并表明他们的方法优于ARIMA和基于LSTM的模型。

3. Background
3.1. Influenza and ILI

ILI比率计算为ILI患者人数与当周总就诊人数的比值。CDC公布了美国和除一个州外的所有州(佛罗里达州)的ILI比值。此外,州级ILI比率通过州总体进行标准化。

3.2. State Space Models 状态空间模型

状态空间建模( SSM )被广泛应用于动态系统。动力系统的演化由不可观测的状态变量控制。系统表现出由状态变量决定的可观测变量。SSM已被应用于生物学和金融学中复杂系统的研究。状态空间模型同时对状态变量和可观测变量进行建模。例如,一个广义线性状态空间模型可以表示为如下形式:

其中xt和αt分别为时间索引观测向量和状态向量。

方程1称为观测方程,是一个类回归方程。它建模了可观测xt与底层状态变量αt的关系。

方程2为状态方程,具有自回归性质。εt和ηt是新息成分innovation components,通常被建模为高斯过程。

简要介绍一下ILI预测中几种常用的SSM模型:

(1)Compartmental Models

区室模型是随机结构模型的一种具体形式,已被广泛用于研究传染病。虽然最初是为了模拟传染病而发展起来的,但隔室模型已经被应用于其他学科,如生态学和经济学。在隔室模型中,一个种群被分为不同的组( "隔间")。每一组由一个随时间变化的状态变量建模。隔室模型的一个突出例子是"易感-感染-恢复" ( Suscepted-Infected-Recovered,SIR )模型,其中系统由三个状态变量( S ( t ),I ( t ),R ( t ) )通过以下常微分方程控制:

其中,ILI时间序列是系统的可观测变量:ILI ( t ) = I ( t ) / ( I ( t ) + S ( t ) + R ( t ) )。

缺点:虽然分室模型是有用的,但它们需要微分方程参数的先验知识,并且缺乏根据新的观测更新参数的灵活性。

(2)ARIMA

Box-Jenkins ARIMA (自回归积分滑动平均)是另一种流行的动力系统建模方法。ARIMA对观测变量xt进行建模,假设xt可以分解为趋势、季节和不规则成分。Box和Jenkins没有对这些成分分别建模,而是提出了对时间序列xt进行差分以消除趋势性和季节性的思想。所得序列被视为平稳时间序列数据,并使用其滞后时间序列值( ' AR ')和滞后预测误差的移动平均值( ' MA ')的组合进行建模。ARIMA模型通常由( p , d , q)元组指定,其中p和q定义AR和MA的阶数,d指定差分运算的阶数。

ARIMA可以写成SSM形式,滤波、平滑等常用的SSM技术也可以应用到ARIMA中。然而,ARIMA是一种"黑箱"方法,模型纯粹依赖于观测数据,没有对底层系统( Durbin &库普曼, 2012)的状态进行分析。

(3)Time Delay Embedding

时间延迟嵌入对于一个标量时间序列数据xt,其时间延迟嵌入( TDE )是将每个标量值xt嵌入到一个d维的时间延迟空间中形成的:

对于任意非线性动力系统,时滞嵌入定理( Takens定理) ( Takens , 1981)指出,存在某个( d , τ) -时滞嵌入,使得原状态变量( '相空间')的演化可以在观测变量的时滞坐标中恢复。在ILI预测的情况下,Takens定理表明ILI比率( "观测变量")的TDEd,τ可以近似由生物和物理机制支配的潜在动力系统。

TDEs最早在Sugihara和May ( 1990 )的开创性工作中被探索用于时间序列预测。他们表明,TDEs可以在不了解潜在机制的情况下,基于对系统动力学的定性评估进行短期预测。他们开发了两个基于TDE的模型来预测水痘和麻疹的流行,并与基于AR的方法进行了比较。他们的分析表明,基于TDE的模型在水痘病例预测中同样表现良好,在麻疹病例预测中优于AR。

在SSM框架中,时间延迟嵌入是一个强有力的工具,它可以在不了解系统的状态变量和相空间的情况下,通过学习底层动力系统的几何和拓扑信息来桥接状态变量和观测数据。尽管TDEs具有惊人的性质,但据我们所知,TDEs在机器学习模型中还没有得到广泛的研究。

3.3. Sequence Models 序列模型

(1)RNN

(2)LSTM

(3)Seq2Seq

针对输入和输出均为序列的机器学习任务,开发了Seq2Seq序列- to - sequence ( Seq2Seq )架构。Seq2Seq模型由编码器、中间向量和解码器3部分组成。编码器是LSTM或其他循环单元的堆栈。每个单元接受输入序列中的单个元素。编码器的最终隐藏状态称为编码器向量或上下文向量,它编码了来自输入数据的所有信息。解码器同样由一堆递归单元组成,并将编码器向量作为其第1个隐藏状态。每个循环单元计算自己的隐藏状态,并产生一个输出元素。图3.3展示了Seq2Seq架构。

Seq2Seq在语言翻译任务中得到了广泛的应用。然而,由于其不能将长序列充分编码到中间向量(即使是LSTM细胞)中,其性能随着长句子的增加而下降。因此,长期依赖倾向于在编码器向量中被删除。

4. Model
4.1. Problem Description

我们将ILI预测作为一个有监督的机器学习任务。给定一个包含N个周数据点xt - N + 1,..,xt-1,xt的时间序列,对于M步预测,有监督ML模型的输入X为xt - N + 1,..,xt-M,输出Y为xt - M + 1,xt-M + 2,..,xt。每个数据点xt可以是一个标量或者包含多个特征的向量。

4.2. Data

我们利用美国疾病预防控制中心( CDC ) 2010 - 2018年国家和州级ILI历史数据。为了产生有标签的数据集,我们使用固定长度的滑动时间窗口方法(图5 )构建X,Y对进行模型训练和评估。

在应用滑动窗口获取特征和标签之前,我们对所有具有训练数据集最大值和最小值的数据进行min - max缩放。然后在缩放后的训练集上运行滑动窗口,得到带有特征和标签的训练样本,分别为前N个和后M个观测值。同样构建测试样本用于模型评估。训练集与测试集分流比为2:1。将来自不同状态的训练数据进行拼接,形成全局模型的训练集。

4.3. Transformer Model
4.3.1. MODEL ARCHITECTURE

(1)编码器Encoder:编码器由输入层、位置编码层和4个完全相同的编码器层堆栈组成。输入层通过全连接网络将输入的时间序列数据映射为维度为dmodel的向量。该步骤对于模型采用多传感头注意力机制至关重要。位置编码采用正余弦函数,通过输入向量与位置编码向量的逐元素相加,对时间序列数据中的序列信息进行编码。将得到的向量送入四个编码器层。每个编码器层由两个子层组成:自注意力子层和全连接前馈子层。每个子层后面都有一个归一化层。编码器产生一个dmodel - dimensional向量反馈给解码器。

(2)解码器Decoder:我们采用了类似于原始Transformer架构( Vaswani et al , 2017)的解码器设计。解码器也由输入层、4个相同的解码器层和一个输出层组成。解码器的输入开始于编码器输入的最后一个数据点。输入层将解码器输入映射为dmodel维向量。除了每个编码器层的两个子层之外,解码器还插入了第三个子层,用于在编码器输出上应用自注意力机制。最后,存在一个输出层,将最后一个解码器层的输出映射到目标时间序列。我们在解码器中的解码器输入和目标输出之间使用前瞻掩码和一个位置偏移,以确保时间序列数据点的预测只依赖于以前的数据点。

4.3.2. TRAINING

(1)训练数据和批处理Training Data and Batching:在一个典型的训练设置中,我们训练模型从10个滞后的周数据点预测未来的4个周ILI比率。即给定编码器输入( x1 , x2 , ... , x10)和解码器输入( x10 , ... , x13),解码器输出( x11 , ... , x14)。应用了前瞻掩码以确保注意力只会被模型应用到目标数据之前的数据点。即在预测目标( x11 , x12)时,掩码保证了注意力权重只在( x10、x11)上,因此解码器不会从解码器输入中泄露关于x12和x13的信息。使用大小为64的小批量数据进行训练。

(2)Optimizer:采用Adam优化器( Kingma & Ba , 2015),β1 = 0.9,β2 = 0.98和ε= 10^ - 9。采用了具有跟随进度的自定义学习速率:

(3)Regularization正则化:我们对编码器和解码器中的三类子层分别应用dropout技术:自注意力子层、前馈子层和归一化子层。每个子层使用0.2的dropout rate。

4.3.3. EVALUATION

在评估时,同样使用定长滑动窗口构造有标签的测试数据。通过训练好的Transformer模型进行一步超前预测。计算实际数据yi与预测值之间的Pearson相关系数和均方根误差( RMSE )。

4.4  ARIMA,LSTM和Seq2Seq模型

本部分介绍了我们开发的其他模型,以基准测试基于Transformer的模型。

(1)ARIMA采用单变量ARIMA模型作为基准。它将与时间相关的ILI比率视为遵循固定动态的单变量时间序列。每周的ILI比率依赖于前p周的观测值和前q周的估计误差。利用AIC和BIC对ARIMA模型的阶数进行选择,以平衡模型复杂度和泛化性。我们使用ARIMA( 3、0、3)和一个恒定的趋势来保持模型的简洁性。该模型在状态空间建模框架中制定,并使用前三分之二的数据集进行训练。然后在全时间序列上使用拟合的参数来过滤隐藏状态,并进行四步超前预测。

(2)LSTM LSTM模型有两个LSTM层的堆叠和一个最终的密集层来直接预测多步ILI比率。LSTM层通过循环网络编码来自输入的序列信息。密集连接层从第二个LSTM层取最终输出,输出一个大小为4的向量,该向量等于提前预测的步数。两个LSTM层分别为32和16个单元。将dropout rate 0.2应用于LSTM层进行正则化。采用Huber损失、Adam优化器和0.02的学习率进行训练。

(3)Seq2Seq测试的Seq2Seq模型具有编码器-解码器结构,其中编码器由全连接的密集层和GRU层组成,用于从顺序输入中学习,并返回一系列编码输出和最终的隐藏状态。解码器与输入结构相同。致密层为16个单元,GRU层为32个单元。在该Seq2Seq模型中还采用了注意力机制。具体地,Bahdanau注意力( Bahdanau et al , 2015)被应用在每个解码步骤的编码器输出序列上,以进行下一步的预测。在解码器中使用教师强制( Williams & Zipser , 1989),以加快收敛并解决不稳定问题。

在训练过程中,使用当前时间步的真实ILI率作为下一时间步的输入,而不是使用从解码单元计算的输出。在所有循环层中应用0.2的丢弃率。我们使用Huber损失、Adam优化器和0.02的学习率进行训练。

5. Experiment
5.1. One-step-ahead Forecasting Using ILI Data Alone

在我们的第一个实验中,我们测试了我们的Transformer模型能否从10周的历史数据点提前一周预测ILI比率。为了评估,训练好的全局模型使用测试数据集对每个状态进行一步超前预测。计算每个状态的Pearson相关性和均方根误差( RMSE )值。

我们将Transformer的性能与ARIMA、LSTM、带注意力模型的Seq2Seq进行比较。表1总结了每种方法的相关系数和RMSE,以及相对于ARIMA方法的相对性能增益。比较表明,深度学习模型的相关性和RMSE总体上优于ARIMA模型。在三种深度学习方法中,相关系数非常接近,Transformer模型略高于LSTM和Seq2Seq注意力模型。在RMSE方面,Transformer模型优于LSTM和带注意力模型的Seq2Seq,相对RMSE分别降低了27 %和8.4 %。

这一分析表明注意力机制有助于预测性能,因为带注意力的Seq2Seq和Transformer模型优于普通的LSTM模型。此外,与注意力模型的Seq2Seq相比,Transformer表现出更好的预测性能,表明与Seq2Seq中使用的线性注意力机制相比,Transformer的自注意力机制能够更好地捕获数据中的复杂动态模式。有趣的是,值得注意的是,Transformer是美国ILI预测( Pearson相关性= 0.984 , RMSE = 0.3318)的最佳指标。由于单个模型是使用所有国家的数据进行训练的,这表明该模型确实可以概括各种国家层面的模式,用于国家层面的预测。

5.2. One-step-ahead Forecasting Using Feature Vectors

接下来,我们测试了基于Transformer的模型是否可以从ILI预测的多个特征(即多元时间序列数据)中学习。在美国,流感季节通常从10月初开始,在1月至2月之间达到高峰。我们假设周数是模型的信息信号。因此,我们将"星期数"作为时间索引特征引入模型。此外,我们还包括时间序列的一阶和二阶差分将作为两个显式的数值特征在模型中体现。

我们的结果表明,包含这些特征提高了模型性能(平均Pearson相关性: 0.931 ,平均RMSE = 0.585)。然而,与单独使用ILI数据的Transformer模型相比,改进并不显著。这表明额外的特征很可能对模型编码了很少的新信息。也就是说,如果基于Transformer的模型能够依靠自注意力机制从ILI时间序列中学习短期和长期依赖关系,那么引入的一阶和二阶差分特征很可能是冗余的。

我们将我们的结果与文献中最先进的ILI预测模型ARGONet (陆铭等, 2019)的ILI预测数据进行了比较。图6和图7显示了ARGONet和我们的Transformer结果的相关性和RMSE值。总体而言,基于Transformer的模型表现与ARGONet相当,平均相关性略微提高了( ARGONet : 0.912 , Transformer : 0.931),平均RMSE值略微降低了( ARGONet : 0.550 , Transformer : 0.593)。

5.3. Forecasting Using Time Delay Embedding

在本节中,我们测试了基于Transformer的模型是否可以直接对动力系统的相空间进行建模。为此,我们利用历史ILI数据构造了时滞嵌入( TDEs ),因为TDEs (具有足够的维数)在拓扑上等价于动力系统的未知相空间。也就是说,与ILI数据作为观测的标量变量相比,TDEs编码了控制流感感染和传播过程的系统额外的几何和拓扑信息。因此,与标量时间序列输入相比,使用TDEs应该提供更丰富的信息。

为了验证这一假设,我们从ILI数据中构造了2到32维的时间延迟嵌入,并将TDEs作为特征应用于基于Transformer的ILI预测。在所有的实验中,我们使用τ = 1来构造TDEs。改变TDE维度并不显著改变Pearson相关系数。RMSE值在维数为8时达到最小值。该值与预测水痘和麻疹( Sugihara & May , 1990)的最佳TDE维数5和5 - 7接近。

6. Conclusions

在这项工作中,我们提出了一种基于Transformer的时间序列数据预测方法。与其他序列对齐的深度学习方法相比,我们的方法利用自注意力机制对序列数据进行建模,因此可以从时间序列数据中学习各种长度的复杂依赖关系。此外,这种基于Transformer的方法是建模各种非线性动态系统的通用框架。在ILI案例中表明,该方法可以通过时间延迟嵌入对观测的时间序列数据以及状态变量的相空间进行建模。它也是可扩展的,可以是改编,对单变量和多变量时间序列数据进行建模,并对模型实现进行最小的修改。最后,虽然目前的案例研究主要集中在时间序列数据,但我们假设我们的方法可以进一步扩展到对时间和位置坐标索引的时空数据建模。自注意力机制可以推广到学习时空空间中任意两点之间的关系。这是我们未来计划探索的一个方向。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值