原始題目:Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting
中文翻譯:Informer:超越有效變換器進行長序列時間序列預測
發表時間:2021-05-18
平臺:Proceedings of the AAAI Conference on Artificial Intelligence
文章連結:https://ojs.aaai.org/index.php/AAAI/article/view/17325
開原始碼:https://github.com/zhouhaoyi/Informer2020
摘要
許多現實世界的應用都需要對長序列時間序列進行預測,例如電力消耗規劃。長序列時間序列預測(LSTF)對模型的預測能力提出了很高的要求,即能夠有效地捕捉輸出和輸入之間精確的長期依賴性耦合。最近的研究表明,變壓器有潛力提高預測能力。然而,Transformer存在一些嚴重問題,使其無法直接應用於LSTF,包括二次時間複雜性、高記憶體使用率和編碼器-解碼器架構的固有限制。為了解決這些問題,我們為LSTF設計了一個高效的基於轉換器的模型,名為Informer,它具有三個顯著的特徵:(i)ProbeSparse自注意機制,它在時間複雜性和記憶體使用方面實現了O(L log L),並且在序列的依賴性對齊方面具有可比的效能。(ii)自注意力提取透過將級聯層輸入減半來突出主導注意力,並有效地處理超長輸入序列。(iii)生成式解碼器雖然概念上簡單,但它以一次正向操作而不是一步一步的方式預測長時間序列,這大大提高了長序列預測的推理速度。在四個大規模資料集上的大量實驗表明,Informer顯著優於現有方法,併為LSTF問題提供了一種新的解決方案。
1. 引言
時間序列預測是許多領域的關鍵因素,如感測器網路監測(Papadimitriou和Yu 2006)、能源和智慧電網管理、經濟和金融(Zhu和Shasha 2002)以及疾病傳播分析(Matsubara等人,2014)。在這些場景中,我們可以利用大量關於過去行為的時間序列資料進行長期預測,即長序列時間序列預測(LSTF)。然而,現有的方法大多是在短期問題設定下設計的,比如預測48個點或更少(Hochrieter和Schmidhuber 1997;李等人2018;餘等人2017;劉等人2019;秦等人2017;溫等人2017)。越來越長的序列使模型的預測能力變得緊張,以至於這一趨勢阻礙了LSTF的研究。作為一個經驗示例,圖(1)顯示了真實資料集上的預測結果,其中LSTM網路預測了從短期(12點,0.5天)到長期(480點,20天)的變電站的小時溫度。當預測長度大於48點時,總體效能差距很大(圖中的實心星)(1b)),其中MSE上升到不令人滿意的效能,推理速度急劇下降,LSTM模型開始失敗。
圖1:(a)LSTF可以覆蓋比短序列預測更長的時間段,在政策規劃和投資保護方面具有重要區別。(b) 現有方法的預測能力限制了LSTF的效能。例如,從長度=48開始,MSE上升到不可接受的高,並且推理速度迅速下降。
LSTF的主要挑戰是提高預測能力,以滿足日益增長的長序列需求,這需要(a)非凡的長程比對能力和(b)對長序列輸入和輸出的有效操作。最近,Transformer模型在捕獲長期依賴性方面顯示出比RNN模型優越的效能。自注意機制可以將網路訊號傳播路徑的最大長度減少到理論上最短的O(1),並避免重複結構,從而Transformer在LSTF問題上顯示出巨大的潛力。然而,由於其L二次計算和L長度輸入/輸出上的記憶體消耗,自注意機制違反了要求(b)。一些大型Transformer模型在NLP任務上投入了大量資源並取得了令人印象深刻的結果(Brown等人,2020),但對數十個GPU的培訓和昂貴的部署成本使這些模型在現實世界的LSTF問題上無法負擔。自注意機制和Transformer架構的效率成為將它們應用於LSTF問題的瓶頸。因此,在本文中,我們試圖回答這樣一個問題:我們能否改進Transformer模型,使其具有計算、記憶體和架構效率,並保持更高的預測能力?
網路訊號傳播路徑是什麼?
Vanilla Transformer(Vaswani等人,2017)在解決LSTF問題時有三個顯著的侷限性:
- 自我注意的二次計算。自注意機制的原子操作,即規範點積,導致每層的時間複雜度和記憶體使用量為\(O(L^2)\)。
- 長輸入的堆疊層中的記憶體瓶頸。J個編碼器/解碼器層的堆疊使得總儲存器使用量為\(O(J*L^2)\),這限制了接收長序列輸入時的模型可伸縮性。
- 預測長期產出的速度驟降。vanilla Transformer的動態解碼使逐步推理與基於RNN的模型一樣慢(圖(1b))。
先前有一些關於提高自我注意效率的工作。稀疏變換器(Child等人2019)、LogSparse變換器(Li等人2019)和Longformer(Beltagy、Peters和Cohan 2020)都使用啟發式方法來解決限制1,並將自注意機制的複雜性降低到O(L log L),在那裡它們的效率增益是有限的(Qiu等人2019)。Reformer(Kitaev,Kaiser,and Levskaya 2019)也透過區域性敏感的雜湊自注意實現了O(L log L),但它只適用於超長序列。最近,Linformer(Wang et al.2020)聲稱線性複雜度為O(L),但對於真實世界的長序列輸入,專案矩陣不能固定,這可能具有降級為O(L2)的風險。Transformer XL(Dai et al.2019)和Compressive Transformer(Rae et al.1919)使用輔助隱藏狀態來捕獲長程依賴性,這可能會放大限制1,不利於打破效率瓶頸。所有這些工作主要集中在限制1上,而限制2和3在LSTF問題中仍未解決。為了增強預測能力,我們解決了所有這些限制,並在所提出的Informer中實現了超越效率的改進。
為此,我們的工作明確探討了這三個問題。我們研究了自注意機制中的稀疏性,對網路元件進行了改進,並進行了廣泛的實驗。本文的貢獻總結如下:
- 我們提出Informer成功地提高LSTF問題的預測能力,這驗證了類Transformer模型的潛在價值,以捕捉長序列時間序列輸出和輸入之間的個體長期依賴性。
- 我們提出了ProbeSparse自注意機制來有效地取代規範自注意。它在依賴性對齊上實現了O(L log L)時間複雜性和O(L logL)記憶體使用率。
- 我們提出了自注意力提取操作,以在J堆疊層中特權支配注意力得分,並將總空間複雜度大幅降低到\(O((2-\epsilon)L*log L)\),這有助於接收長序列輸入。
- 我們提出了生成式解碼器,只需一個前向步驟即可獲得長序列輸出,同時避免了推理階段的累積誤差擴充套件。
圖2:Informer模型概述。左:編碼器接收大量長序列輸入(綠色序列)。我們用所提出的ProbeSparse自注意來代替規範自注意。藍色梯形是自注意力提取操作,用於提取主導注意力,大幅縮小網路規模。層堆疊複製副本提高了健壯性。右圖:解碼器接收長序列輸入,將目標元素填充為零,測量特徵圖的加權注意力組成,並以生成風格立即預測輸出元素(橙色序列)。
2. 預備
我們首先提供LSTF問題的定義。在具有固定大小視窗的滾動預測設定下,我們有輸入\(\mathcal{X}^{t}=\{\mathbf{x}_{1}^{t},\ldots,\mathbf{x}_{L_{x}}^{t}|\mathbf{x}_{i}^{t}\in\mathbb{R}^{d_{x}}\}\)在時間t,並且輸出是預測對應的序列\(\mathcal{Y}^{t}=\{\mathbf{y}_{1}^{t},\ldots,\mathbf{y}_{L_{n}}^{t}\mid\mathbf{y}_{t}^{t}\in\mathbf{R}^{d_{y}}\}\)。LSTF問題鼓勵比以前的工作更長的輸出長度\(L_y\)(Cho等人,2014;Sutskever、Vinyals和Le 2014),並且特徵維度不限於單變數情況(\(d_y\)>= 1)。
編碼器-解碼器架構許多流行的模型被設計為將輸入表示Xt“編碼”為隱藏狀態表示Ht,並從\(\mathcal{H}^{t}=\{\mathbf{h}_{1}^{t},\ldots,\mathbf{h}_{I,_{h}}^{t}\}\)解碼輸出表示\(\mathcal{Y}^{t}\)。推理涉及一個名為“動態解碼”的逐步過程,其中解碼器根據先前的狀態\(\mathbf{h}_{k}^{t}\)計算新的隱藏狀態\(\mathbf{h}_{k+1}^{t}\),以及第k步的其他必要輸出,然後預測第(k+1)個序列\(\mathbf{y}_{k+1}^{t}\)。
輸入表示給出了統一的輸入表示,以增強時間序列輸入的全域性位置上下文和區域性時間上下文。為了避免描述過於瑣碎,我們將詳細資訊放在附錄B中。
3. 方法
現有的時間序列預測方法可以大致分為兩類1。經典的時間序列模型是時間序列預測的可靠工具(Box等人,2015;Ray 1990;Seeger等人2017;Seeger、Salinas和Flunkert 2016),深度學習技術主要透過使用RNN及其變體來開發編碼器-解碼器預測正規化(Hochrieter和Schmidhuber 1997;李等人2018;Yu等人2017)。我們提出的Informer在針對LSTF問題的同時保持編碼器-解碼器架構。請參閱圖(2)瞭解概述,並參閱以下章節瞭解詳細資訊。
1由於篇幅限制,相關工作見附錄A。
3.1 高效的自我注意機制
(Vaswani et al.2017)中的經典自注意是基於元組輸入定義的,即查詢、鍵和值,其執行縮放點積為A(Q,K,V)=Softmax(QK>/√d)V,其中\({\mathbf{Q}}\in\mathbb{R}^{L_{Q}\times d}\),\(\mathbf{K}\in\mathbb{R}^{L_{K}\times d}\),\(\mathbf{V}\in\mathbb{R}^{L_{V}\times d}\),d是輸入維度。為了進一步討論自注意機制,設qi、ki、vi分別代表Q、K、V中的第i行。根據(Tsai et al.2019)中的公式,第i個查詢的注意力被定義為機率形式的核平滑器:
其中\(p(\mathbf{k}_j|\mathbf{q}_i)=k(\mathbf{q}_i,\mathbf{k}_j)/\sum_lk(\mathbf{q}_i,\mathbf{k}_l)\)和\(k(\mathbf{q}_{i},\mathbf{k}_{j})\)選擇非對稱指數核\(\exp(\mathbf{q}_{i}\mathbf{k}_{j}^{\top}/\sqrt{d})\)。自我注意力基於計算機率\(p(\mathbf{k}_{j}|\mathbf{q}_{i})\)來組合這些值並獲取輸出。它需要二次型點積計算和\(\mathcal{O}(L_{Q}{L}_{K})\)記憶體佔用,這是增強預測能力時的主要缺點。
先前的一些嘗試揭示了自注意機率的分佈具有潛在的稀疏性,並且他們在不顯著影響效能的情況下對所有\(p(\mathbf{k}_{j}|\mathbf{q}_{i})\)設計了“選擇性”計數策略。稀疏變換器(Child等人,2019)結合了行輸出和列輸入,其中稀疏性源於分離的空間相關性。LogSparse Transformer(Li等人,2019)注意到自我注意的迴圈模式,並迫使每個細胞以指數步長關注其前一個細胞。Longformer(Beltagy、Peters和Cohan 2020)將前兩部作品擴充套件到更復雜的稀疏配置。然而,它們僅限於從以下啟發式方法進行理論分析,並用相同的策略處理每個多頭自我注意,這縮小了它們的進一步改進範圍。
為了激勵我們的方法,我們首先對典型自我注意的習得注意模式進行定性評估。“稀疏性”自我注意力得分形成長尾分佈(詳見附錄C),即少數點積對貢獻了主要注意力,而其他點積對則產生了瑣碎注意力。那麼,接下來的問題是如何區分它們?
查詢稀疏度測量 根據等式(1),第i個查詢在所有關鍵字上的注意力被定義為機率\(p(\mathbf{k}_{j}|\mathbf{q}_{i})\),並且輸出是其與值v的組合。優勢點積對鼓勵對應查詢的注意力機率分佈遠離均勻分佈。如果\(p(\mathbf{k}_{j}|\mathbf{q}_{i})\)接近均勻分佈\(q(\mathbf{k}_{i}|\mathbf{q}_{i})=1/L_{\boldsymbol{k}}\),則自關注變成值V的平凡和,並且對於住宅輸入是多餘的。自然,分佈p和q之間的“相似性”可以用來區分“重要”查詢。我們透過Kullback-Leibler散度\(KL(q||p)~=~\mathrm{ln}\sum_{l=1}^{L_{K}}e^{\mathbf{q_{i}k}_{l}^{\top}/\sqrt{d}}-\frac1{L_{\kappa}}\sum_{j=1}^{L_{K}}\mathbf{q_{i}k}_{j}^{\top}/\sqrt{d}-ln L_K\)來測量“相似性”。去掉常數,我們將第i個查詢的稀疏性測量定義為
其中第一項是qi在所有鍵上的對數和Exp(LSE),第二項是它們的算術平均值。如果第i個查詢獲得更大的\(M(\mathbf{q}_{i},\mathbf{K})\),則其注意力機率p更“多樣”,並且很有可能包含長尾自注意力分佈的頭部欄位中的主導點積對。
**ProbeSparse自注意 ** 基於所提出的測量,我們透過允許每個鍵只關注u個主要查詢來獲得ProbeSparse自我注意:
其中\(\bar{Q}\)是與Q大小相同的稀疏矩陣,並且它僅包含稀疏性測量M(Q,K)下的Top-u查詢。在恆定取樣因子c的控制下,我們設定\(u=c\cdot\ln L_{O}\),這使得ProbeSparse自關注只需要為每次查詢關鍵字查詢計算\(\mathcal{O}(\ln L_{Q})\)點積,並且層記憶體使用保持\({\mathcal{O}}({L_{K}}\operatorname{ln}L_{O})\)。在多頭視角下,這種關注為每個頭生成不同的稀疏查詢金鑰對,從而避免了嚴重的資訊損失。
然而,遍歷測量M(qi,K)的所有查詢需要計算每個點積對,即二次\({\mathcal{O}}(L_{Q}L_{K})\),此外LSE運算具有潛在的數值穩定性問題。受此啟發,我們提出了一種有效獲取查詢稀疏性測量的經驗近似方法。
引理1。對於每個查詢\(\mathbf{q}_i\in\mathbb{R}^d\)和金鑰集K中的\(\mathbf{k}_j\in\mathbb{R}^d\),我們有界為\(\ln L_{K}\leq M(\mathbf{q}_{i},\mathbf{K})\leq \operatorname*{max}_{j}\{\mathbf{q}_{i}\mathbf{k}_{j}^{\top}/\sqrt{d}\}-\frac{1}{L_{K}}\sum_{j=1}^{L_{K}}\{\mathbf{q}_{i}\mathbf{k}_{j}^{\top}/\sqrt{d}\}+\ln L_{K}\)。當qi∈K時,它也成立。
根據引理1(附錄D.1中給出了證明),我們提出最大平均測量為
Top-u的範圍大致適用於命題1的邊界鬆弛(參見附錄D.2)。在長尾分佈下,我們只需要隨機取樣\(U={L}_{K}\ln L_{Q}\)點積對來計算M(qi,K),即用零填充其他對。然後,我們從中選擇稀疏的Top-u作為Q。M(qi,K)中的最大運算元對零值不太敏感,並且是數值穩定的。在實踐中,查詢和金鑰的輸入長度在自注意計算中通常是相等的,即\(U={L}_{K}\ln L_{Q}\),使得ProbeSparse自注意時間複雜度和空間複雜度的總和為\(\mathcal{O}(L\operatorname{ln}L)\)。
圖3:Informer編碼器中的單個堆疊。(1) 水平堆疊代表圖(2)中編碼器複製品中的單個複製品。(2) 所提出的堆疊是接收整個輸入序列的主堆疊。然後,第二個堆疊獲取輸入的一半切片,隨後的堆疊重複。(3) 紅色層是點積矩陣,透過對每層進行自注意提取得到級聯遞減。(4) 將所有堆疊的特徵圖連線為編碼器的輸出。
3.2 編碼器:允許在記憶體使用限制下處理較長的順序輸入
編碼器被設計用於提取長序列輸入的魯棒長程依賴性。在輸入表示之後,第t個序列輸入Xt被成形為矩陣\(\mathbf{X}_{\mathbf{en}}^{t}\in\mathbb{R}^{L_{x}\times{d}_{model}}\)。為了清晰起見,我們在圖(3)中給出了編碼器的草圖。
自注意提取 作為ProbeSparse自注意機制的自然結果,編碼器的特徵圖具有值V的冗餘組合。它大幅修剪輸入的時間維度,如圖(3)中注意力塊的n頭權重矩陣(重疊的紅色方塊)所示。受擴張卷積的啟發(Yu,Koltun,and Funkhouser 2017;Gupta和Rush 2017),我們的“蒸餾”過程從第j層向前推進到第(j+1)層,如下所示:
其中[·]AB表示注意力塊。它包含多頭ProbeSparse自注意和基本運算,其中Conv1d(·)使用ELU(·)啟用函式在時間維度上執行一維卷積濾波器(核寬度=3)(Clevert,Unterthiner,and Hochrieter 2016)。我們新增了一個最大池化層,其步長為2,並在堆疊層後將Xt下采樣到其半切片中,這將整個記憶體使用量減少到\(\mathcal{O}((2-\epsilon)L\operatorname{log}L)\),其中\(\epsilon\)是一個小數字。為了增強提取操作的穩健性,我們構建了輸入減半的主堆疊的副本,並透過一次丟棄一層來逐步減少自注意提取層的數量,如圖(2)中的金字塔所示,從而使其輸出維度對齊。因此,我們將所有堆疊的輸出連線起來,並獲得編碼器的最終隱藏表示。
3.3 解碼器:透過一個正向過程生成長序列輸出
我們在圖(2)中使用了標準解碼器結構(Vaswani等人,2017),它由兩個相同的多頭注意力層的堆疊組成。然而,在長期預測中,使用生成推理來緩解速度驟降。我們向解碼器提供以下向量
其中,\(\mathbf{X}_{\mathrm{tokcn}}^{t}\in\mathbb{R}^{L_{\mathrm{token}}\times d_{\mathrm{model}}}\)是起始令牌,\(\mathbf{X}_{0}^{t}\in\mathbb{R}^{L_{y}\times d_{\mathrm{model}}}\)是目標序列的佔位符(將標量設定為0)。透過將掩蔽點積設定為-∞,將掩蔽多頭注意力應用於ProbeSparse自注意力計算。它防止每個職位都關注即將到來的職位,從而避免了自迴歸。一個完全連線的層獲得最終輸出,它的輸出大小\(d_y\)取決於我們是在進行單變數預測還是多變數預測。
生成推理 啟動令牌被有效地應用於NLP的“動態解碼”(Devlin等人,2018),我們將其擴充套件為生成方式。我們不選擇特定的標誌作為標記,而是在輸入序列中取樣\(L_{\mathrm{token}}\)長序列,例如輸出序列之前的較早切片。以預測168個點為例(實驗部分的7天溫度預測),我們將以目標序列之前已知的5天作為“start-token”,並向生成式推理解碼器提供\(\mathbf{X}_{\boldsymbol{d}\boldsymbol{e}}=\{\mathbf{X}_{5d},\mathbf{X_{0}}\}\)。X0包含目標序列的時間戳,即目標周的上下文。然後,我們提出的解碼器透過一個前向過程預測輸出,而不是傳統編碼器-解碼器架構中耗時的“動態解碼”。計算效率部分給出了詳細的效能比較。
損失函式 我們在預測目標序列時選擇MSE損失函式,並且損失從解碼器的輸出傳播回整個模型。
表1:四個資料集(五個案例)的單變數長序列時間序列預測結果。
4. 實驗
4.1 資料集
我們在四個資料集上進行了廣泛的實驗,包括兩個收集的LSTF真實世界資料集和兩個公共基準資料集。
ETT(變壓器溫度)2:ETT是電力長期部署的關鍵指標。我們從中國兩個不同的縣收集了兩年的資料。為了探索LSTF問題的粒度,我們建立了單獨的資料集,分別為1小時級別的{ETTh1,ETTh2}和15分鐘級別的ETTm1。每個資料點由目標值“油溫”和6個功率負載特徵組成。訓練/驗證/試驗為12/4/4個月
ECL(電力消耗負荷)3:它收集321個客戶的電力消耗(Kwh)。由於資料缺失(Li et al.2019),我們將資料集轉換為2年的小時消耗量,並將“MT 320”設定為目標值。訓練/驗證/試驗為15/3/4個月。
天氣4 :該資料集包含2010年至2013年4年內近1600個美國地點的當地氣候資料,每1小時收集一次資料點。每個資料點由目標值“溼球”和11個氣候特徵組成。列車/val/試驗時間為10個月28日。
2 我們收集了ETT資料集,並將其釋出在https://github.com/zhouhaoyi/ETDataset上。
**3 ** ECL資料集採集於https://archive.ics.uci.edu/ml/datasets/ElectricityLoadDiagrams20112014。
**4 ** 在獲取Weather資料集https://www.ncei.noaa.gov/資料/當地氣候資料/。
4.2 實驗細節
我們簡要總結了基礎知識,附錄E中提供了有關網路元件和設定的更多資訊。
基線:我們選擇了五種時間序列預測方法作為比較,包括ARIMA(Ariyo、Adewumi和Ayo,2014)、Prophet(Taylor和Letham,2018)、LSTMa(Bahdanau、Cho和Bengio,2015)、LSTnet(Lai等人,2018)和DeepAR(Flunkert、Salinas和Gasthaus,2017)。為了更好地探索ProbSparse自注意在我們提出的Informer中的效能,我們在實驗中引入了規範自注意變體(Informer†)、有效變體改革者(Kitaev、Kaiser和Levskaya 2019)和最相關的LogSparse自注意工作(Li等人,2019)。網路元件的詳細資訊見附錄E.1。
超引數調整:我們對超引數進行網格搜尋,詳細範圍見附錄E.3。Informer在編碼器中包含一個3層堆疊和一個1層堆疊(1/4輸入),以及一個2層解碼器。我們提出的方法使用Adam最佳化器進行了最佳化,其學習率從1e−4開始,每個曆元衰減兩倍。在適當提前停止的情況下,劃時代的總數為8個。我們按照建議設定了比較方法,批次大小為32。設定:每個資料集的輸入都是零均值歸一化的。在LSTF設定下,我們逐步延長預測視窗大小Ly,即{ETTh,ECL,Weather}中的{1d,2d,7d,14d,30d,40d},ETTm中的{6h,12h,24h,72h,168h}。度量:我們在每個預測視窗上使用兩個評估度量,包括MSE和MAE(多變數預測的平均值),並以步幅1滾動整個集合。平臺:所有模型都在一個Nvidia V100 32GB GPU上進行了訓練/測試。原始碼位於https://github.com/zhouhaoyi/Informer2020。
表2:四個資料集上的多變數長序列時間序列預測結果(五個案例)。
4.3 結果和分析
表1和表2總結了所有方法在4個資料集上的單變數/多變數評估結果。作為對預測能力的更高要求,我們逐漸延長了預測範圍,其中LSTF問題設定被精確控制為可以在每種方法的一個GPU上處理。最佳結果以粗體突出顯示。
單變數時間序列預測 在此設定下,每種方法都將預測作為時間序列上的單個變數。從表1中,我們可以觀察到:(1)所提出的模型Informer顯著提高了所有資料集的推理效能(最後一列的獲勝次數),並且它們的預測誤差在不斷增長的預測範圍內平穩緩慢地上升,這證明了Informer在提高LSTF問題中的預測能力方面的成功。(2) Informer主要在獲勝計數方面擊敗了其規範退化Informer†,即32>12,這支援了在提供可比注意力特徵圖時的查詢稀疏性假設。我們提出的方法也優於最相關的工作LogTrans和Reformer。我們注意到,Reformer保持動態解碼,在LSTF中表現不佳,而其他方法則受益於生成式解碼器作為非自適應預測器。(3) Informer模型顯示出明顯優於遞迴神經網路LSTMa的結果。我們的方法的MSE分別下降了26.8%(在168處)、52.4%(在336處)和60.1%(在720處)。這揭示了自注意機制中較短的網路路徑比基於RNN的模型獲得更好的預測能力。(4) 所提出的方法在MSE上優於DeepAR、ARIMA和Prophet,平均下降49.3%(在168處)、61.1%(在336處)和65.1%(在720處)。在ECL資料集上,DeepAR在較短的層位(≤336)上表現更好,我們的方法在較長的層位上表現更好。我們將此歸因於一個特定的例子,其中預測能力的有效性反映在問題的可擴充套件性上。
多變數時間序列預測 在這種情況下,一些單變數方法是不合適的,LSTnet是最先進的基線。相反,透過調整最終的FCN層,我們提出的Informer很容易從單變數預測變為多變數預測。從表2中,我們觀察到:(1)所提出的模型Informer大大優於其他方法,並且在單變數設定中的發現1和2仍然適用於多變數時間序列。(2) Informer模型顯示出比基於RNN的LSTMa和基於CNN的LSTnet更好的結果,MSE平均下降26.6%(在168處)、28.2%(在336處)和34.3%(在720處)。與單變數結果相比,壓倒性效能降低,而這種現象可能是由特徵維度預測能力的各向異性引起的。這超出了本文的範圍,我們將在未來的工作中對此進行探索。
考慮粒度的LSTF 我們進行了額外的比較,以探索不同粒度的效能。ETTm1(分鐘水平)的序列{96288672}與ETTh1(小時水平)的{2448168}對齊。即使序列處於不同的粒度級別,Informer也優於其他基線。
4.4 引數靈敏度
我們在單變數設定下對ETTh1進行了所提出的Informer模型的敏感性分析。輸入長度:在圖(4a)中,當預測短序列(如48)時,最初增加編碼器/解碼器的輸入長度會降低效能,但進一步增加會導致MSE下降,因為這會帶來重複的短期模式。然而,在預測長序列(如168)時,MSE隨著輸入的增加而降低。因為較長的編碼器輸入可能包含更多的依賴性,並且較長的解碼器令牌具有豐富的區域性資訊。取樣因子:取樣因子控制方程(3)中ProbeSparse自注意的資訊頻寬。我們從小因子(=3)開始到大因子,總體效能略有提高,最終穩定在圖(4b)中。它驗證了我們的查詢稀疏性假設,即在自注意機制中存在冗餘的點積對。我們在實踐中設定了樣本因子c=5(紅線)。層堆疊的組合:層的複製品對自我注意力提取是互補的,我們研究了圖(4c)中每個堆疊{L,L/2,L/4}的行為。堆疊越長,對輸入越敏感,部分原因是接收的資訊越長期。我們的方法的選擇(紅線),即連線L和L/4,是最穩健的策略。
4.5 消融研究:Informer的工作效果如何?
我們還在考慮消融的情況下對ETTh1進行了額外的實驗。
ProbeSparse自注意機制的效能 在總體結果表1和2中,我們限制了問題設定,以使規範自注意的記憶體使用可行。在這項研究中,我們將我們的方法與LogTrans和Reformer進行了比較,並深入探討了它們的極端效能。為了隔離記憶體效率問題,我們首先將設定減少為{batchsize=8,heads=8,dim=64},並在單變數情況下保持其他設定。在表3中,ProbeSparse自注意顯示出比對應的自注意更好的效能。LogTrans在極端情況下會出現OOM,因為它的公共實現是完全關注的掩碼,它仍然有O(L2)記憶體使用。我們提出的ProbeSparse自注意避免了等式中查詢稀疏性假設帶來的簡單性。(4),參考附錄E.2中的虛擬碼,並達到了較小的記憶體使用量。
表5:自我注意蒸餾的消融研究。
表6:生成型解碼器的消融研究。
圖5:培訓/測試階段的總執行時間。
自我注意提取的效能 在本研究中,我們使用Informer†作為基準來消除ProbeSparse自我注意的額外影響。另一個實驗設定與單變數時間序列的設定一致。從表5中可以看出,Informer†完成了所有實驗,並在利用長序列輸入後獲得了更好的效能。比較方法Informer去除了蒸餾操作,並透過較長的輸入(>720)達到OOM。關於長序列輸入在LSTF問題中的好處,我們得出結論,自注意提取是值得采用的,特別是當需要更長的預測時。
生成式解碼器的效能 在這項研究中,我們證明了我們的解碼器在獲得“生成”結果方面的潛在價值。與現有的方法不同,在訓練和推理中,標籤和輸出是被迫對齊的,我們提出的解碼器的預測僅依賴於時間戳,它可以用偏移量進行預測。從表6中可以看出,Informer的總體預測效能隨著偏移量的增加而抵抗,而對應的預測效能則無法進行動態解碼。它證明了解碼器能夠捕獲任意輸出之間的個體長程依賴性並避免誤差累積。
4.6 計算效率
使用多變數設定和所有方法當前最好的實現,我們在圖(5)中進行了嚴格的執行時比較。在訓練階段,Informer(紅線)在基於Transformer的方法中實現了最佳的訓練效率。在測試階段,我們的方法比其他具有生成式解碼的方法快得多。表4總結了理論時間複雜性和記憶使用情況的比較。Informer的效能與執行時實驗一致。請注意,LogTrans專注於改進自注意機制,我們在LogTrans中應用我們提出的解碼器進行公平比較(表4中的*)。
5. 結論
在本文中,我們研究了長序列時間序列預測問題,並提出了Informer來預測長序列。具體來說,我們設計了ProbeSparse自注意機制和提取操作,以應對香草變壓器中二次時間複雜性和二次記憶體使用的挑戰。此外,精心設計的生成解碼器緩解了傳統編碼器-解碼器架構的限制。在真實世界資料上的實驗證明了Informer在提高LSTF問題的預測能力方面的有效性。