這是一篇ICLR2023 top 5%論文
論文鏈接:https://openreview.net/pdf?id=vSVLM2j9eie
代碼:https://github.com/Thinklab-SJTU/Crossformer
1. Multivariate Time Series Forecasting
MTS,多變量時序數(shù)據(jù)預(yù)測。利用MTS的歷史值可以預(yù)測其未來的趨勢,例如心電圖(ECG),腦電圖(EEG)腦磁圖(MEG)的診斷以及系統(tǒng)監(jiān)測等等都是固有的多變量問題。該任務(wù)數(shù)據(jù)每個實例序列擁有多個維度,是一個d維向量和m個觀測值(時間序列)的列表,如下所示數(shù)據(jù)(借鑒自綜述論文:《The great multivariate time series classification bake off: a review and experimental evaluation of recent algorithmic advances》)
2. 動機
MTS的核心額外復(fù)雜性在于,區(qū)別性特征可能存在于維度之間的相互作用中,而不僅僅存在于單個序列中的自相關(guān)性中。標(biāo)準(zhǔn)的Transformer中核心self-attention可能僅僅建模了單個序列的自相關(guān)性,忽略了跨維度的依賴關(guān)系。
此外,如下圖所示,當(dāng)數(shù)據(jù)序列很長時,計算復(fù)雜性高,但是可以觀察到,接近的數(shù)據(jù)點具有相似的注意權(quán)重!
基于此,作者提出一個分層encoder-decoder框架Crossformer.
3. Crossformer
目標(biāo):輸入一段歷史序列 x 1 : T ∈ R T × D x_{1:T} \in \mathbb{R}^{T\times D} x1:T?∈RT×D,預(yù)測未來的一段序列 x T + 1 : T + τ ∈ R τ × D x_{T+1:T+\tau} \in \mathbb{R}^{\tau \times D} xT+1:T+τ?∈Rτ×D.
3.1 Hierarchical Encoder-Decoder
作者提出一個新的層次Encoder-Decoder的架構(gòu),如下所示,由左邊encoder(灰色)和右邊decoder(淺橘色)組成。其主要包含Dimension-Segment-Wise (DSW) embedding,Two-Stage Attention (TSA)層和Linear Projection。
- Dimension-Segment-Wise (DSW) embedding:為了將輸入 x 1 : T ∈ R T × D x_{1:T} \in \mathbb{R}^{T\times D} x1:T?∈RT×D進(jìn)行分segment,從而減少計算復(fù)雜性。如果最后每個序列要分成 L L L個segment,每個序列 d m o d e l d_{model} dmodel?的通道數(shù),則最后的輸入記為: Z ∈ R L × D × d m o d e l Z \in \mathbb{R}^{L \times D \times d_{model}} Z∈RL×D×dmodel?.
- Two-Stage Attention (TSA)層:捕獲cross-time和cross-dimension依賴關(guān)系。替待原來的self-attention在encoder和decoder中的位置。
- Linear Projection:應(yīng)用于每一個decoder層的輸出,以產(chǎn)生該層的預(yù)測。對各層預(yù)測結(jié)果進(jìn)行求和,得到最終預(yù)測結(jié)果
x
T
+
1
:
T
+
τ
p
r
e
d
x^{pred}_{T+1:T+\tau}
xT+1:T+τpred?.
下面主要講解DSW和TSA如何實現(xiàn)的!
3.2 Dimension-Segment-Wise embedding (DSW)
輸入
x
1
:
T
∈
R
T
×
D
x_{1:T} \in \mathbb{R}^{T\times D}
x1:T?∈RT×D,表明輸入包含
T
T
T個序列,每個序列有
D
D
D個維度。如下所示,如果我們分的每個segment的長度為
L
s
e
g
L_{seg}
Lseg?,則每個序列中可以劃分出
T
L
s
e
g
\frac{T}{L_{seg}}
Lseg?T?個segment,每個序列有
D
D
D個維度,則整個輸入共包含
T
L
s
e
g
×
D
\frac{T}{L_{seg}} \times D
Lseg?T?×D個segment,故
x
1
:
T
x_{1:T}
x1:T?可以記為:
x
1
:
T
=
{
x
i
,
d
(
s
)
∣
1
≤
i
≤
T
L
s
e
g
,
1
≤
d
≤
D
}
x_{1:T}=\{x^{(s)}_{i,d}|1\le i \le \frac{T}{L_{seg}}, 1 \le d \le D \}
x1:T?={xi,d(s)?∣1≤i≤Lseg?T?,1≤d≤D}。在
d
d
d維度中的第
i
i
i個segment的size記為
x
i
,
d
(
s
)
∈
R
1
×
L
s
e
g
x^{(s)}_{i,d} \in \mathbb{R}^{1 \times L_{seg}}
xi,d(s)?∈R1×Lseg?,然后使用線性投影和位置嵌入將每個段嵌入到一個向量中:
其中
h
i
,
d
∈
R
d
m
o
d
e
l
h_{i,d} \in \mathbb{R}^{d_{model}}
hi,d?∈Rdmodel?,
E
∈
R
d
m
o
d
e
l
×
L
s
e
g
E \in \mathbb{R}^{d_{model} \times L_{seg}}
E∈Rdmodel?×Lseg?表示可學(xué)習(xí)的映射矩陣。
E
i
,
d
(
p
o
s
)
∈
R
d
m
o
d
e
l
E^{(pos)}_{i,d} \in \mathbb{R}^{d_{model}}
Ei,d(pos)?∈Rdmodel?表示在
(
i
,
d
)
(i,d)
(i,d)位置的可學(xué)習(xí)位置嵌入。
最后,可以獲得一個2D的向量數(shù)組
H
=
{
h
i
,
d
∣
1
≤
i
≤
T
L
s
e
g
,
1
≤
d
≤
D
}
∈
R
T
L
s
e
g
×
D
×
d
m
o
d
e
l
H=\{ h_{i,d}|1 \le i \le \frac{T}{L_{seg}},1 \le d \le D \} \in \mathbb{R}^{\frac{T}{L_{seg}} \times D \times d_{model}}
H={hi,d?∣1≤i≤Lseg?T?,1≤d≤D}∈RLseg?T?×D×dmodel?.
3.3 Two-Stage Attention (TSA)
由上可得輸入現(xiàn)在為:
H
∈
R
T
L
s
e
g
×
D
×
d
m
o
d
e
l
H \in \mathbb{R}^{\frac{T}{L_{seg}} \times D \times d_{model}}
H∈RLseg?T?×D×dmodel?,為了方便,記
L
=
T
L
s
e
g
L=\frac{T}{L_{seg}}
L=Lseg?T?,則輸入為
H
∈
R
L
×
D
×
d
m
o
d
e
l
H \in \mathbb{R}^{L \times D \times d_{model}}
H∈RL×D×dmodel?。TSA主要由cross-time stage和
cross-dimension stage組成,如下圖所示。
- Cross-Time Stage
對于每個維度,包含所有時間序列。因此,對于 d d d維度 Z : , d ∈ R L × d m o d e l Z_{:,d} \in \mathbb{R}^{L \times d_{model}} Z:,d?∈RL×dmodel?上,cross-time依賴關(guān)系可記為:
其中 1 ≤ d ≤ D 1 \le d \le D 1≤d≤D,所有維度共享MSA(multi-head self-attention). - Cross-Dimension Stage
對于每個時間點,包含所有維度。因此,對于第 i i i時間點 Z i , : t i m e ∈ R D × d m o d e l Z^{time}_{i,:} \in \mathbb{R}^{D \times d_{model}} Zi,:time?∈RD×dmodel?
1)如果使用標(biāo)準(zhǔn)Transformer進(jìn)行,如下圖所示,可以很容易得到復(fù)雜性為 O ( D 2 ) \mathcal{O}(D^2) O(D2)!總共有 L L L個時間segment,因此總復(fù)雜性為 O ( D 2 L ) \mathcal{O}(D^2L) O(D2L).
2)作者引入router機制,每個時間點共享。如下圖所示, R i , : ∈ R c × d m o d e l R_{i,:} \in \mathbb{R}^{c×d_{model}} Ri,:?∈Rc×dmodel? ( c c c是常數(shù))是作為路由器的可學(xué)習(xí)向量,作為第一個MSA的query.
B i , : ∈ R c × d m o d e l B_{i,:} \in \mathbb{R}^{c×d_{model}} Bi,:?∈Rc×dmodel?,作為第二個MSA的key和value.
由上可知,第一個MSA復(fù)雜性為 O ( c D L ) \mathcal{O}(cDL) O(cDL),第二個MSA也是如此,因此,最終復(fù)雜性為 O ( 2 c D L ) \mathcal{O}(2cDL) O(2cDL),其中 2 c 2c 2c為常量,記復(fù)雜性變?yōu)?span id="n5n3t3z" class="katex--inline"> O ( D L ) \mathcal{O}(DL) O(DL)!!
4 實驗
-
SOTA方法對比
更多對比方法: -
消融實驗
-
參數(shù)分析
-
復(fù)雜性分析
-
可視化
-
運行速度對比
5. 結(jié)論
- 提出了Crossformer,一種基于transformer的模型,利用跨維度依賴進(jìn)行多元時間序列(MTS)預(yù)測。
- DSW (dimension - segment - wise)嵌入:將輸入數(shù)據(jù)嵌入到二維矢量數(shù)組中,以保留時間和維度信息。
- 為了捕獲嵌入式陣列的跨時間和跨維度依賴關(guān)系,設(shè)計兩階段注意(TSA)層。
- 利用DSW嵌入和TSA層,設(shè)計了一種分層編碼器(HED)來利用不同尺度的信息。
在6個數(shù)據(jù)集上的實驗結(jié)果展示了該方法優(yōu)于之前的先進(jìn)技術(shù)。文章來源:http://www.zghlxwxcb.cn/news/detail-435637.html
以上僅為本人小記,有問題歡迎指出(●ˇ?ˇ●)文章來源地址http://www.zghlxwxcb.cn/news/detail-435637.html
到了這里,關(guān)于ICLR2023《Crossformer: Transformer Utilizing Cross-Dimension Dependency for Multivariate Time Series》的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!