用于多元时间序列预测的双自注意力网络 DSANet
1、摘要
- 文章主题思想:
- 为了捕捉负载的非线性依赖关系,虽然RNN和attention机制已经被用来对跨多个时间步长,对周期性时间模式建模。
但是这并不适用于动态周期模式和非周期模式 - DASNet完全抛弃循环网络,采用两个并行的卷积分量,
- 分为全局时间卷积和部分时间卷积
- 引入了自注意力模块来对多个时间序列间依赖进行建模
- 为了进一步提高鲁棒性,集成了AR 自回归线性模型,与非线性神经网络部分并行
- 为了捕捉负载的非线性依赖关系,虽然RNN和attention机制已经被用来对跨多个时间步长,对周期性时间模式建模。
2、介绍:背景、相关工作
- VAR、Gaussian process等常假设一个确定的分布,使得器无法预测复杂的非线性关系
- RNN等方法无法解决梯度消失,实现不了长时间的依赖关系
- 其变体LSTM、GRU克服了缺陷
- Attention等机制RNN能专注于输入部分和输出依赖关系的建模
- 但是这些新的虽然表现出了较好的性能,但是还是不能解决周期性和非周期性问题
3、模型架构:
T为采样时间Time stamp、D为单变量时间的数量即features
- 全局时间卷积
- 使用多个Tx1的滤波器,为单变量时间提取所有时间步的时不变模式
- 每一个滤波器都会扫过输入矩阵X,并产生大小为Dx1的向量
- 激活函数是ReLU
- 最终输出一个 矩阵,size为DxNg,Ng是全局时间卷积过滤器的数目
- 局部时间卷积
- 全局卷积捕捉时间步之间的 长期依赖,局部卷积专注于局部时间模式
- 过滤器的长度不一样l<T,是一个超参数
- 第k个局部卷积沿着时间维度产生矩阵Mkl
- 使用1xD最大池化层来捕捉最具大代表性的特征Mkl
- 最终输出一个DxNl的矩阵,Nl是局部卷积过滤器的数目
- 自注意力机制模块
- 使用注意力机制来捕捉序列之间的依赖关系
- 采用scaledd dot product计算自注意力模块
- 自注意力模块由N个相同的层组成,每层有两个子层:自注意力层和位置前馈层
- 位置前馈层: 由两个线性变换和ReLU激活函数构成
- 实际上注意力函数可以描述为一个查询和一组键值的映射,键值和结构都是向量
最终输出output是所有值的权重化后的总和
- 使用注意力机制来捕捉序列之间的依赖关系
- 自回归分量
- 神经网络输出的规模对输入的规模不敏感
- 所以引入AR使得最终输出是线性与非线性的组合
- 输出结果X_L_Th
- 最终输出
- 使用 dense layer 即全连接层来连接两个自注意力层模块,获得其基础预测结果X_D_Th
- 最终由X_L_Th与X_D_Th之和构成
4、实验--实验数据不公开
- 数据划分:6:2:2
- 对比算法: VAR、LRidge、LSVR、GP、GRU、LSTNet-S、LSTNet-A、TPA
- 优化器使用Adam, 批次随机梯度下降
- Loss计算为MSE
- 评价指标:RRSE、MAE、CORR
5、之后的研究点
6、与我相关、相关知识