前提—SeriesNet
SeriesNet是包含LSTM和DC-CNN两个子网络的混合神经网络,能有效解决非线性、非稳态、以及未知依赖的时间序列的预测问题。但是,其有以下缺点:
- 每一层需要训练的参数量非常大,导致计算效率低
- 没有考虑学习时间特征的attention机制
- CNN和RNN的conditioning方法并不具体
由此,提出了Attention-Based Seriesnet模型。
Attention-Based SeriesNet
Attention-Based SeriesNet 在SeriesNet的基础上主要有以下改变:
- 分别使用GRU, DDSTCNS(dilated depthwise separable temporal convolution)替代 LSTM, DC-CNN,降低神经网络层的参数
- 利用SeriesNet的注意力机制,在 lightweight RNN-based hidden state attention module(HASM) 和 CNN-based conolutional block module(CBAM)
- 在残差连接块中使用SELU**函数替代RELU**函数
优点:
- 减少了参数量,减小计算复杂度,增加模型训练效率
- 提升了模型预测准确率
模型结构
RNN子网络Condition输入数据(y∈Ri∗T)维度的转换过程:
使用GRU网络:
Condition->Fltten:y∈Ri∗T -> y∈R1∗v
Flatten->FC:y∈R1∗v -> y∈R1∗m
使用LSTM网络:
Condition->Fltten:y∈Ri∗T -> y∈R1∗v
Flatten->FC:y∈R1∗v -> y∈R1∗2m -> y∈R2∗m
每一行被认为是初始隐藏状态和初始单元状态
v=i∗T, m为第一层RNN的神经元的数量
DDSTCNs介绍
主要原理
DDSTCNs基于深度可分离卷积,深度可分离卷积将一个卷积核分割成两个独立的卷积核,做两次卷积:深度卷积(depthwise convolution)和点卷积(pointwise convolution)
深度卷积:通过对每个输入通道应用不同的卷积核来分离通道
点卷积:对深度卷积的每个输出通道采用一个1*1的卷积核,并将它们合并在一起
结构图如下:
CBAM
结构如如下:
计算过程:
Mn(F)=σ(MLP(AvgPool(F)))+MLP(MaxPool(F))=σ(W1(W0(Favgn))+W1(W0(Fmaxn))) F′=MN(f)⊗F MT(F′)=σ(f1∗7([AvgPool(F′);MaxPool(F′)]))=σ(f1∗7(Favg′T;Fmax′T)) F′′=MT(F)⊗F
HSAM
计算过程图:
计算过程
HT(h)=σ(f1∗7[MLP(Avg(Pool(h)));MLP(MaxPool(h)]))=σ(f1∗7([W1(W0(havgn));W1(W0(hmaxn))])) h′=HT(h)⊗H