【时序】LSTNet:结合 CNN、RNN 以及 AR 的时间序列预测模型
論文名稱:Modeling Long- and Short-Term Temporal Patterns with Deep Neural Networks
論文下載:https://dl.acm.org/doi/abs/10.1145/3209978.3210006
論文年份:SIGIR 2018
論文被引:594(2022/04/21)
論文代碼:https://github.com/laiguokun/LSTNet
論文數(shù)據(jù):https://github.com/laiguokun/multivariate-time-series-data
ABSTRACT
Multivariate time series forecasting is an important machine learning problem across many domains, including predictions of solar plant energy output, electricity consumption, and traffic jam situation. Temporal data arise in these real-world applications often involves a mixture of long-term and short-term patterns, for which traditional approaches such as Autoregressive models and Gaussian Process may fail. In this paper, we proposed a novel deep learning framework, namely Long- and Short-term Time-series network (LSTNet), to address this open challenge. LSTNet uses the Convolution Neural Network (CNN) and the Recurrent Neural Network (RNN) to extract short-term local dependency patterns among variables and to discover long-term patterns for time series trends. Furthermore, we leverage traditional autoregressive model to tackle the scale insensitive problem of the neural network model. In our evaluation on real-world data with complex mixtures of repetitive patterns, LSTNet achieved significant performance improvements over that of several state-of-the-art baseline methods. All the data and experiment codes are available online.
【現(xiàn)實(shí)意義】
多變量時(shí)間序列預(yù)測是跨多個(gè)領(lǐng)域的重要機(jī)器學(xué)習(xí)問題,包括太陽能發(fā)電廠能量輸出、電力消耗和交通擁堵情況的預(yù)測。
【存在問題】
在這些實(shí)際應(yīng)用中出現(xiàn)的時(shí)間數(shù)據(jù)通常涉及長期和短期模式的混合,對于這些模式,自回歸模型和高斯過程等傳統(tǒng)方法可能會失敗。
【解決方案】
在本文中,我們提出了一種新穎的深度學(xué)習(xí)框架,即長期和短期時(shí)間序列網(wǎng)絡(luò) (Long- and Short-term Time-series network, LSTNet),以應(yīng)對這一開放挑戰(zhàn)。 LSTNet 使用卷積神經(jīng)網(wǎng)絡(luò) (CNN) 和循環(huán)神經(jīng)網(wǎng)絡(luò) (RNN) 來提取變量之間的短期局部依賴模式,并發(fā)現(xiàn)時(shí)間序列趨勢的長期模式。此外,我們利用傳統(tǒng)的自回歸模型來解決神經(jīng)網(wǎng)絡(luò)模型的尺度不敏感問題。
【實(shí)驗(yàn)結(jié)果】
在我們對具有重復(fù)模式的復(fù)雜混合的現(xiàn)實(shí)世界數(shù)據(jù)的評估中,LSTNet 比幾種最先進(jìn)的基線方法實(shí)現(xiàn)了顯著的性能改進(jìn)。所有數(shù)據(jù)和實(shí)驗(yàn)代碼均可在線獲取。
1 INTRODUCTION
【現(xiàn)實(shí)意義】
多元時(shí)間序列數(shù)據(jù)在我們的日常生活中無處不在,從股票市場的價(jià)格、高速公路上的交通流量、太陽能發(fā)電廠的輸出、不同城市的溫度等等,不一而足。在此類應(yīng)用中,用戶通常對基于對時(shí)間序列信號的歷史觀察預(yù)測新趨勢或潛在危險(xiǎn)事件感興趣。例如,可以根據(jù)提前幾個(gè)小時(shí)預(yù)測的交通擁堵模式制定更好的路線計(jì)劃,通過對近期股市的預(yù)測獲得更大的利潤。
【存在問題】
多元時(shí)間序列預(yù)測經(jīng)常面臨一個(gè)重大的研究挑戰(zhàn),即如何捕捉和利用多個(gè)變量之間的動態(tài)依賴關(guān)系。具體來說,現(xiàn)實(shí)世界的應(yīng)用程序通常需要混合使用短期和長期重復(fù)模式。
【舉例說明】
- 如圖 1 所示,該圖繪制了高速公路的每小時(shí)占用率。顯然,有兩種重復(fù)模式,每天和每周。前者描繪了早高峰與晚高峰,而后者則反映了工作日和周末的模式。一個(gè)成功的時(shí)間序列預(yù)測模型應(yīng)該捕獲這兩種重復(fù)模式以進(jìn)行準(zhǔn)確的預(yù)測。
- 另一個(gè)例子,基于不同位置的大型傳感器測量的太陽輻射來預(yù)測太陽能發(fā)電廠的輸出的任務(wù)。長期模式反映白天與黑夜、夏季與冬季等之間的差異,短期模式反映云運(yùn)動、風(fēng)向變化等的影響。同樣,沒有考慮這兩種循環(huán)模式,準(zhǔn)確的時(shí)間序列預(yù)測是不可能的。
【已有研究的局限性】
然而,傳統(tǒng)方法,如自回歸方法 [2, 12, 22, 32, 35] 中的大量工作在這方面存在不足,因?yàn)樗鼈冎械拇蠖鄶?shù)沒有區(qū)分這兩種模式,也沒有明確和動態(tài)地模擬它們的交互。解決現(xiàn)有方法在時(shí)間序列預(yù)測中的這些局限性是本文的主要重點(diǎn),為此我們提出了一個(gè)新的框架,該框架利用了深度學(xué)習(xí)研究的最新發(fā)展。
【從粗粒度上闡述與本文相關(guān)的工作,本文是RNN和CNN】
深度神經(jīng)網(wǎng)絡(luò)已在相關(guān)領(lǐng)域得到深入研究,并對廣泛問題的解決產(chǎn)生了非凡的影響。例如,遞歸神經(jīng)網(wǎng)絡(luò) (RNN) 模型 [9] 在最近的自然語言處理 (NLP) 研究中變得最流行。特別是 RNN 的兩個(gè)變體,即長短期記憶 (LSTM) [15] 和門控循環(huán)單元 (GRU) [6],顯著提高了機(jī)器翻譯、語音識別和其他 NLP 任務(wù),因?yàn)樗鼈?strong>可以根據(jù)輸入文檔中單詞之間的長期和短期依賴關(guān)系有效地捕捉單詞的含義 [1, 14, 19]。在計(jì)算機(jī)視覺領(lǐng)域,再舉一個(gè)例子,卷積神經(jīng)網(wǎng)絡(luò)(CNN) 模型 [19, 21] 通過從輸入圖像中成功提取各種粒度級別的局部和移位不變特征(有時(shí)稱為“shapelets”),顯示出出色的性能。
【進(jìn)一步闡述RNN和CNN應(yīng)用于時(shí)間序列領(lǐng)域(分類,回歸)的研究】
深度神經(jīng)網(wǎng)絡(luò)在時(shí)間序列分析中也受到越來越多的關(guān)注。先前工作的很大一部分都集中在時(shí)間序列分類上,即自動將類標(biāo)簽分配給時(shí)間序列輸入的任務(wù)。例如,RNN 架構(gòu)已被研究用于從醫(yī)療保健序列數(shù)據(jù)中提取信息模式 [5, 23],并根據(jù)診斷類別對數(shù)據(jù)進(jìn)行分類。 RNN 也被應(yīng)用于移動數(shù)據(jù),用于根據(jù)動作或活動對輸入序列進(jìn)行分類 [13]。 CNN 模型也被用于動作/活動識別 [13, 20, 31],用于從輸入序列中提取移位不變的局部模式作為分類模型的特征。
深度神經(jīng)網(wǎng)絡(luò)也被研究用于時(shí)間序列預(yù)測 [8, 33],即使用過去觀察到的時(shí)間序列來預(yù)測前瞻視野中的未知時(shí)間序列的任務(wù)——視野越大,越難預(yù)測。在這個(gè)方向上的努力范圍從早期使用樸素 RNN 模型 [7] 和結(jié)合使用 ARIMA [3] 和多層感知器 (MLP) 的混合模型 [16, 34, 35] 到最近將 vanilla RNN 和時(shí)間序列預(yù)測中的動態(tài)玻爾茲曼機(jī)[8]。
【最后引出本文的解決方案及實(shí)驗(yàn)結(jié)果】
在本文中,我們提出了一個(gè)為多元時(shí)間序列預(yù)測設(shè)計(jì)的深度學(xué)習(xí)框架,即長期和短期時(shí)間序列網(wǎng)絡(luò) (LSTNet),如圖 2 所示。
- 利用兩個(gè)卷積層的優(yōu)勢來發(fā)現(xiàn)局部多維輸入變量和循環(huán)層之間的依賴模式,以捕獲復(fù)雜的長期依賴關(guān)系。
- 一種新穎的循環(huán)結(jié)構(gòu) Recurrent-skip,旨在捕獲非常長期的依賴模式,并使優(yōu)化更容易,因?yàn)樗昧溯斎霑r(shí)間序列信號的周期性屬性。
- 最后,LSTNet 將傳統(tǒng)的自回歸線性模型與非線性神經(jīng)網(wǎng)絡(luò)部分并行合并,使得非線性深度學(xué)習(xí)模型對于違反尺度變化的時(shí)間序列更加魯棒。
在真實(shí)世界季節(jié)性時(shí)間序列數(shù)據(jù)集的實(shí)驗(yàn)中,我們的模型始終優(yōu)于傳統(tǒng)的線性模型和 GRU 遞歸神經(jīng)網(wǎng)絡(luò)。
【本文剩余部分內(nèi)容的組織】
本文的其余部分安排如下。第 2 節(jié)概述了相關(guān)背景,包括具有代表性的自回歸方法和高斯過程模型。第 3 節(jié)描述了我們提出的 LSTNet。第 4 節(jié)報(bào)告了我們模型的評估結(jié)果,并與真實(shí)數(shù)據(jù)集上的強(qiáng)基線進(jìn)行了比較。最后,我們在第 5 節(jié)總結(jié)我們的發(fā)現(xiàn)。
2 RELATED BACKGROUND
【ARIMA模型家族的優(yōu)缺點(diǎn)】
自回歸綜合移動平均 (autoregressive integrated moving average , ARIMA) 模型:最突出的單變量時(shí)間序列模型之一。
優(yōu)點(diǎn):其統(tǒng)計(jì)特性以及模型選擇過程中著名的 Box-Jenkins 方法 [2]。 ARIMA 模型不僅適用于各種指數(shù)平滑技術(shù) [25],而且足夠靈活,可以包含其他類型的時(shí)間序列模型,包括:
- 自回歸 (autoregression, AR)
- 移動平均 (moving average, MA)
- 自回歸移動平均 (Autoregressive Moving Average, ARMA)
缺點(diǎn):ARIMA 模型,包括它們用于建模長期時(shí)間依賴關(guān)系的變體 [2],由于其高計(jì)算成本而很少用于高維多元時(shí)間序列預(yù)測。
【VAR模型家族的優(yōu)缺點(diǎn)】
向量自回歸 (vector autoregression, VAR):由于其簡單性,是多元時(shí)間序列 [2, 12, 24] 中使用最廣泛的模型。 VAR 模型自然地將 AR 模型擴(kuò)展到多變量設(shè)置,它忽略了輸出變量之間的依賴關(guān)系。
近年來,各種 VAR 模型取得了重大進(jìn)展,包括:
- elliptical VAR model [27]:用于長尾時(shí)間序列
- structured VAR model [26]:用于更好地解釋高維變量之間依賴關(guān)系
然而,VAR 的模型容量在時(shí)間窗口大小上呈線性增長,在變量數(shù)量上呈二次方增長。這意味著,在處理長期時(shí)間模式時(shí),繼承的大模型容易過擬合。為了緩解這個(gè)問題,[32] 提出將原始高維信號減少為低維隱藏表示,然后應(yīng)用 VAR 進(jìn)行預(yù)測,并選擇多種正則化。
【線性回歸+正則化的模型的優(yōu)缺點(diǎn)】
時(shí)間序列預(yù)測問題也可以被視為具有時(shí)變參數(shù)的標(biāo)準(zhǔn)回歸問題。因此,可以很自然地將具有不同損失函數(shù)和正則化項(xiàng)的各種回歸模型應(yīng)用于時(shí)間序列預(yù)測任務(wù)。例如:
- 線性支持向量回歸 (SVR) [4, 17] 基于回歸損失學(xué)習(xí)最大邊距超平面,其中超參數(shù) ? 控制預(yù)測誤差的閾值。
- 嶺回歸(Ridge regression)可以通過將 ? 設(shè)置為零來從 SVR 模型中恢復(fù)。
- [22] 應(yīng)用 LASSO 模型來鼓勵(lì)模型參數(shù)的稀疏性,以便可以顯示不同輸入信號之間的有趣模式。
由于機(jī)器學(xué)習(xí)社區(qū)中有高質(zhì)量的現(xiàn)成求解器,這些線性方法實(shí)際上對于多變量時(shí)間序列預(yù)測更有效。盡管如此,與 VAR 一樣,這些線性模型可能無法捕捉多元信號的復(fù)雜非線性關(guān)系,從而以犧牲效率為代價(jià)導(dǎo)致性能下降。
【高斯過程的優(yōu)缺點(diǎn)】
高斯過程 (GP) 是一種用于對函數(shù)連續(xù)域上的分布進(jìn)行建模的非參數(shù)方法。這與由諸如 VAR 和 SVR 等參數(shù)化函數(shù)類定義的模型形成對比。
- [28] 中GP 可以應(yīng)用于多元時(shí)間序列預(yù)測任務(wù),并且可以用作貝葉斯推理中函數(shù)空間的先驗(yàn)。
- [10] 提出了一種具有 GP 先驗(yàn)的完全貝葉斯方法,用于非線性狀態(tài)空間模型,能夠捕捉復(fù)雜的動態(tài)現(xiàn)象。
然而,高斯過程的性能以高計(jì)算復(fù)雜度為代價(jià)。由于核矩陣的矩陣求逆,多變量時(shí)間序列預(yù)測的高斯過程的直接實(shí)現(xiàn)在觀測數(shù)上具有三次復(fù)雜度。
3 FRAMEWORK
在本節(jié)中,我們首先制定時(shí)間序列預(yù)測問題,然后在下一部分討論所提出的 LSTNet 架構(gòu)(圖 2)的細(xì)節(jié)。最后,我們介紹了目標(biāo)函數(shù)和優(yōu)化策略。
3.1 Problem Formulation
在本文中,我們對多元時(shí)間序列預(yù)測的任務(wù)感興趣。更正式地說,給定一系列完全觀察到的時(shí)間序列信號 Y=y1,y2,...,yTY = {y_1,y_2, ...,y_T }Y=y1?,y2?,...,yT? 其中 yt∈Rny_t ∈ \R^nyt?∈Rn,nnn 是變量維度,我們旨在以滾動預(yù)測方式預(yù)測一系列未來信號。話雖如此,為了預(yù)測 yT+hy_{T +h}yT+h?,其中 hhh 是當(dāng)前時(shí)間戳之前的理想范圍,我們假設(shè) {y1,y2,...,yT}\{y_1,y_2, . . . ,y_T\}{y1?,y2?,...,yT?} 可用。同樣,為了預(yù)測下一個(gè)時(shí)間戳 yT+h+1y_{T+h+1}yT+h+1? 的值,我們假設(shè) {y1,y2,...,yT,yT+1}\{y_1,y_2, . . . ,y_T ,y_{T +1}\}{y1?,y2?,...,yT?,yT+1?} 可用。因此,我們將時(shí)間戳 TTT 處的輸入矩陣表示為 XT={y1,y2,...,yT}∈Rn×TX_T = \{y_1,y_2, . . . ,y_T \} ∈ \R^{n×T}XT?={y1?,y2?,...,yT?}∈Rn×T。
在大多數(shù)情況下,預(yù)測任務(wù)的范圍是根據(jù)環(huán)境設(shè)置的要求來選擇的,例如對于流量使用,感興趣的范圍從幾小時(shí)到一天不等;對于股市數(shù)據(jù),即使是提前幾秒/分鐘的預(yù)測對于產(chǎn)生回報(bào)也很有意義。
圖 2 概述了建議的 LSTnet 架構(gòu)。 LSTNet 是一個(gè)深度學(xué)習(xí)框架,專為混合長期和短期模式的多變量時(shí)間序列預(yù)測任務(wù)而設(shè)計(jì)。在接下來的部分中,我們將詳細(xì)介紹 LSTNet 的構(gòu)建塊。
3.2 Convolutional Component
LSTNet 第一層是一個(gè)沒有池化的卷積網(wǎng)絡(luò),旨在提取時(shí)間維度上的短期模式以及變量之間的局部依賴關(guān)系。卷積層由多個(gè)寬度為 ω 和高度為 n 的濾波器組成(高度設(shè)置為與變量個(gè)數(shù)相同)。第 k 個(gè)濾波器掃描輸入矩陣 X 并產(chǎn)生
其中 * 表示卷積運(yùn)算,輸出 hk 將是一個(gè)向量,RELU 函數(shù)為 RELU (x) = max(0, x)。我們通過在輸入矩陣 X 的左側(cè)進(jìn)行零填充來使每個(gè)向量 hk 的長度為 T 。卷積層的輸出矩陣大小為 dc × T,其中 dc 表示濾波器的數(shù)量。
3.3 Recurrent Component
卷積層的輸出同時(shí)被饋送到 Recurrent 組件和 Recurrent-skip 組件(將在 3.4 小節(jié)中描述)。循環(huán)組件是一個(gè)帶有門控循環(huán)單元 (GRU) [6] 的循環(huán)層,并使用 RELU 函數(shù)作為隱藏更新激活函數(shù)。在時(shí)間 t 的循環(huán)單元的隱藏狀態(tài)計(jì)算為:
其中 ⊙ 是元素乘積(element-wise product),σ 是 sigmoid 函數(shù),xt 是該層在時(shí)間 t 的輸入。該層的輸出是每個(gè)時(shí)間戳的隱藏狀態(tài)。雖然研究人員習(xí)慣于使用 tanh 函數(shù)作為隱藏更新激活函數(shù),但我們憑經(jīng)驗(yàn)發(fā)現(xiàn) RELU 導(dǎo)致更可靠的性能,通過它梯度更容易反向傳播。
3.4 Recurrent-skip Component
帶有 GRU [6] 和 LSTM [15] 單元的循環(huán)層經(jīng)過精心設(shè)計(jì),可以記住歷史信息,從而了解相對長期的依賴關(guān)系。然而,由于梯度消失,GRU 和 LSTM 在實(shí)踐中通常無法捕捉到非常長期的相關(guān)性。我們建議通過一種新穎的循環(huán)跳過組件來緩解這個(gè)問題,該組件利用現(xiàn)實(shí)世界集中的周期性模式。例如,每天的用電量和交通使用量都呈現(xiàn)出明顯的規(guī)律。如果我們想預(yù)測今天 2 點(diǎn)的用電量,季節(jié)性預(yù)測模型中的一個(gè)經(jīng)典技巧是利用歷史日期中的 2 點(diǎn)記錄,以及最近的記錄。由于一個(gè)周期(24 小時(shí))的長度極長以及隨后的優(yōu)化問題,這種類型的依賴關(guān)系很難被現(xiàn)成的循環(huán)單元捕獲。受此技巧有效性的啟發(fā),我們開發(fā)了一種具有時(shí)間跳躍連接的循環(huán)結(jié)構(gòu),以擴(kuò)展信息流的時(shí)間跨度,從而簡化優(yōu)化過程。具體來說,在當(dāng)前隱藏單元和相鄰周期中相同階段的隱藏單元之間添加跳躍鏈接。更新過程可以表述為:
其中該層的輸入是卷積層的輸出,p 是跳過的隱藏單元的數(shù)量。對于具有明確周期性模式的數(shù)據(jù)集(例如,對于每小時(shí)用電量和交通使用數(shù)據(jù)集,p = 24),p 的值可以很容易地確定,并且必須進(jìn)行調(diào)整。在我們的實(shí)驗(yàn)中,我們憑經(jīng)驗(yàn)發(fā)現(xiàn),即使在后一種情況下,經(jīng)過良好調(diào)整的 p 也可以顯著提高模型性能。此外,LSTNet 可以很容易地?cái)U(kuò)展為包含跳躍長度 p 的變體。
我們使用全連接層來組合 Recurrent 和 Recurrent-skip 組件的輸出。全連接層的輸入包括:
-
Recurrent 組件在時(shí)間戳 t 的隱藏狀態(tài),用 htRh^R_thtR? 表示,
-
從時(shí)間戳 t?p+1t - p + 1t?p+1 到 ttt 的 Recurrent-skip 組件的 p 個(gè)隱藏狀態(tài),用 ht?p+1S,ht?p+2S,...,htSh^S_{t-p+1},h^S_{t-p+2},. . . ,h^S_tht?p+1S?,ht?p+2S?,...,htS? 表示 。
全連接層的輸出計(jì)算為:
其中 htDh^D_thtD? 是圖 2 中神經(jīng)網(wǎng)絡(luò)(上)部分在時(shí)間戳 ttt 處的預(yù)測結(jié)果。
3.5 Temporal Attention Layer
然而,Recurrent-skip 層需要一個(gè)預(yù)定義的超參數(shù) p,這在非季節(jié)性時(shí)間序列預(yù)測中是不利的,或者其周期長度隨時(shí)間變化。為了緩解這個(gè)問題,我們考慮了另一種方法,注意力機(jī)制[1],它在輸入矩陣的每個(gè)窗口位置學(xué)習(xí)隱藏表示的加權(quán)組合。具體來說,當(dāng)前時(shí)間戳 t 處的注意力權(quán)重 αt∈Rqα_t ∈ \R^qαt?∈Rq 計(jì)算為
αt=AttnScore(HtR,ht?1R)α_t = AttnScore(H^R_t ,h^R_{t?1})αt?=AttnScore(HtR?,ht?1R?)
其中 HtR=[ht?qR,...,ht?1R]H^R_t = [h^R_{t?q}, . . . ,h^R_{t?1}]HtR?=[ht?qR?,...,ht?1R?] 是按列堆疊 RNN 的隱藏表示的矩陣,AttnScore 是一些相似函數(shù),例如點(diǎn)積、余弦或由簡單的多層感知器參數(shù)化。
時(shí)間注意層的最終輸出是加權(quán)上下文向量 ct=Htαtc_t = H_t α_tct?=Ht?αt? 和最后一個(gè)窗口隱藏表示 ht?1Rh^R_{t-1}ht?1R? 的連接,以及線性投影操作
htD=W[ct;ht?1R]+b.h^D_t = W [c_t ;h^R_{t?1}] + b.htD?=W[ct?;ht?1R?]+b.
3.6 Autoregressive Component
由于卷積和循環(huán)組件的非線性特性,神經(jīng)網(wǎng)絡(luò)模型的一個(gè)主要缺點(diǎn)是輸出的規(guī)模對輸入的規(guī)模不敏感。不幸的是,在特定的真實(shí)數(shù)據(jù)集中,輸入信號的規(guī)模以非周期性的方式不斷變化,這大大降低了神經(jīng)網(wǎng)絡(luò)模型的預(yù)測精度。 4.6 節(jié)給出了這種失敗的具體例子。為了解決這個(gè)缺陷,在類似于 highway network [29],我們將 LSTNet 的最終預(yù)測分解為線性部分,主要關(guān)注局部縮放問題,加上包含重復(fù)模式的非線性部分。在 LSTNet 架構(gòu)中,我們采用經(jīng)典的自回歸 (AR) 模型作為線性組件。將 AR 分量的預(yù)測結(jié)果記為 htL∈Rnh^L_t ∈ \R^nhtL?∈Rn,將 AR 模型的系數(shù)記為 War∈RqarW^{ar} ∈ \R^{q^{ar}}War∈Rqar 和 bar∈Rb^{ar}∈ \Rbar∈R,其中 qarq^{ar}qar 是輸入矩陣上輸入窗口的大小。請注意,在我們的模型中,所有維度共享同一組線性參數(shù)。 AR 模型公式如下,
然后通過整合神經(jīng)網(wǎng)絡(luò)部分和 AR 組件的輸出來獲得 LSTNet 的最終預(yù)測:
其中 Y^t\hat{Y}_tY^t? 表示模型在時(shí)間戳 ttt 處的最終預(yù)測。
3.7 Objective function
平方誤差是許多預(yù)測任務(wù)的默認(rèn)損失函數(shù),相應(yīng)的優(yōu)化目標(biāo)表示為,
其中 Θ 表示模型的參數(shù)集,ΩTrain 是用于訓(xùn)練的時(shí)間戳集,|| · ||F 是 Frobenius 范數(shù),h 是 3.1 節(jié)中提到的范圍。傳統(tǒng)的帶有平方損失函數(shù)的線性回歸模型被命名為 Linear Ridge,相當(dāng)于帶有嶺正則化的向量自回歸模型。然而,實(shí)驗(yàn)表明,線性支持向量回歸(線性 SVR)[30] 在某些數(shù)據(jù)集中優(yōu)于線性嶺模型。線性 SVR 和線性嶺之間的唯一區(qū)別是目標(biāo)函數(shù)。線性 SVR 的目標(biāo)函數(shù)是,
其中 C 和 ? 是超參數(shù)。受線性 SVR 模型卓越性能的啟發(fā),我們將其目標(biāo)函數(shù)納入 LSTNet 模型作為平方損失的替代方案。為簡單起見,我們假設(shè) ? = 01,上面的目標(biāo)函數(shù)簡化為絕對損失(L1-loss)函數(shù)如下:
絕對損失函數(shù)的優(yōu)點(diǎn)是它對實(shí)時(shí)序列數(shù)據(jù)中的異常具有更強(qiáng)的魯棒性。在實(shí)驗(yàn)部分,我們使用驗(yàn)證集來決定使用哪個(gè)目標(biāo)函數(shù),平方損失 Eq.7 或絕對損失 Eq.9。
3.8 Optimization Strategy
在本文中,我們的優(yōu)化策略與傳統(tǒng)時(shí)間序列預(yù)測模型中的優(yōu)化策略相同。假設(shè)輸入時(shí)間序列為 Yt = {y1,y2, . . . ,yt },我們定義了一個(gè)可調(diào)窗口大小 q,并將時(shí)間戳 t 處的輸入重新表述為 Xt = {yt?q+1,yt?q+2, . . . ,yt }。然后,該問題成為具有一組特征值對 {Xt ,Yt+h } 的回歸任務(wù),并且可以通過隨機(jī)梯度體下降 (SGD) 或其變體(例如 Adam [18])來解決。
4 EVALUATION
我們在 4 個(gè)基準(zhǔn)數(shù)據(jù)集上使用 9 種方法(包括我們的新方法)進(jìn)行了廣泛的實(shí)驗(yàn),用于時(shí)間序列預(yù)測任務(wù)。所有數(shù)據(jù)和實(shí)驗(yàn)代碼均可在線獲取。
4.1 Methods for Comparison
我們比較評估的方法如下。
- AR 代表自回歸模型,相當(dāng)于一維VAR模型。
- LRidge 是具有L2 正則化的向量自回歸 (VAR) 模型,它在多元時(shí)間序列預(yù)測中最為流行。
- LSVR 是具有支持向量回歸目標(biāo)函數(shù)的向量自回歸 (VAR) 模型 [30]。
- TRMF 是使用[32] 的時(shí)間正則化矩陣分解的自回歸模型。
- GP 是用于時(shí)間序列建模的高斯過程。 [11, 28]
- VAR-MLP 是[35] 中提出的模型,它結(jié)合了多層感知(MLP)和自回歸模型。
- RNN-GRU 是使用 GRU 單元的循環(huán)神經(jīng)網(wǎng)絡(luò)模型。
- LSTNet-skip 是我們提出的帶有skip-RNN 層的LSTNet 模型。
- LSTNet-Attn 是我們提出的具有時(shí)間注意層的 LSTNet 模型。
對于上面的 AR、LRidge、LSVR 和 GP 等單輸出方法,我們只是獨(dú)立訓(xùn)練了 n 個(gè)模型,即 n 個(gè)輸出變量中的每一個(gè)都訓(xùn)練一個(gè)模型。
4.2 Metrics
我們使用了三個(gè)傳統(tǒng)的評估指標(biāo),定義為:
其中 Y,Y^∈Rn×TY , \hat{Y} ∈ \R^{n×T}Y,Y^∈Rn×T 分別是真實(shí)信號和系統(tǒng)預(yù)測信號。RSE 是廣泛使用的均方根誤差 (RMSE) 的縮放版本,旨在使評估更具可讀性,無論數(shù)據(jù)規(guī)模如何。 RSE 值越低越好,而 CORR 值越高越好。
4.3 Data
我們使用了四個(gè)公開可用的基準(zhǔn)數(shù)據(jù)集。表 1 總結(jié)了語料庫的統(tǒng)計(jì)數(shù)據(jù)。
Traffic:加州交通部 48 個(gè)月(2015-2016)每小時(shí)數(shù)據(jù)的集合。該數(shù)據(jù)描述了舊金山灣區(qū)高速公路上不同傳感器測量的道路占用率(介于 0 和 1 之間)。
Solar-Energy:2006 年的太陽能發(fā)電記錄,每10 分鐘從阿拉巴馬州的137 個(gè)光伏電站采樣一次。
Electricity:從2012 年到2014 年,每15 分鐘記錄一次電力消耗,單位為千瓦時(shí),n = 321 個(gè)客戶。我們轉(zhuǎn)換數(shù)據(jù)以反映每小時(shí)消耗量;
Exchange-Rate:澳大利亞、英國、加拿大、瑞士、中國、日本、新西蘭、新加坡等8個(gè)國家在1990年至2016年的每日匯率匯總。
所有數(shù)據(jù)集按時(shí)間順序分為訓(xùn)練集(60%)、驗(yàn)證集(20%)和測試集(20%)。為了促進(jìn)多元時(shí)間序列預(yù)測的未來研究,我們在網(wǎng)站上公開了所有原始數(shù)據(jù)集和預(yù)處理后的數(shù)據(jù)集。
為了檢查時(shí)間序列數(shù)據(jù)中長期和/或短期重復(fù)模式的存在,在圖 3 中,從四個(gè)數(shù)據(jù)集中隨機(jī)選擇一些變量繪制了自相關(guān)圖。自相關(guān),也稱為序列相關(guān),是一個(gè)信號,其自身的延遲副本是下面定義的延遲函數(shù)
其中 Xt 是時(shí)間序列信號,μ 是均值,σ2 是方差。在實(shí)踐中,我們考慮經(jīng)驗(yàn)無偏估計(jì)量來計(jì)算自相關(guān)。
我們可以在圖 3 的圖表 (a)、(b) 、? 和 (d) 中看到:
- 在交通、太陽能和電力數(shù)據(jù)集中存在具有高自相關(guān)性的重復(fù)模式,但在匯率數(shù)據(jù)集中沒有。
- 在 Traffic 和 Electricity 數(shù)據(jù)集的圖中,觀察到短期每日模式(每 24 小時(shí))和長期每周模式(每 7 天),這完美反映了高速公路交通情況的預(yù)期規(guī)律性和電力消耗。
- 在匯率數(shù)據(jù)集的圖 (d) 中,幾乎看不到任何重復(fù)的長期模式,預(yù)計(jì)會有一些短期的局部連續(xù)性。
這些觀察對于我們以后分析不同方法的實(shí)證結(jié)果很重要。也就是說,對于能夠正確建模并成功利用數(shù)據(jù)中短期和長期重復(fù)模式的方法,當(dāng)數(shù)據(jù)包含此類重復(fù)模式(如電力、交通和太陽能)時(shí),它們應(yīng)該表現(xiàn)出色。另一方面,如果數(shù)據(jù)集不包含此類模式(如匯率),則這些方法的優(yōu)勢可能不會比其他功能較弱的方法帶來更好的性能。我們將在第 4.7 節(jié)中用經(jīng)驗(yàn)論證重新討論這一點(diǎn)。
4.4 Experimental Details
我們對每個(gè)方法和數(shù)據(jù)集的保留驗(yàn)證集上的所有可調(diào)超參數(shù)進(jìn)行網(wǎng)格搜索。具體來說,所有方法共享相同的窗口大小 q 的網(wǎng)格搜索范圍,范圍從 {20, 21, . . . , 29} 如果適用。對于 LRidge 和 LSVR,正則化系數(shù) λ 選自 {2?10, 2?8, . . . , 28, 210}。對于 GP,RBF 內(nèi)核帶寬 σ 和噪聲水平 α 選自 {2?10, 2?8, . . . , 28, 210}。對于 TRMF,隱藏維度選自 {22, . . . , 26} 和正則化系數(shù) λ 從 {0.1, 1, 10} 中選擇。對于 LST-Skip 和 LST-Attn,我們采用了第 3.8 節(jié)中描述的訓(xùn)練策略。循環(huán)和卷積層的隱藏維度從 {50, 100, 200} 和 {20, 50, 100} 中選擇用于循環(huán)跳過層。對于交通和電力數(shù)據(jù)集,循環(huán)跳躍層的跳躍長度 p 設(shè)置為 24,對于太陽能和匯率數(shù)據(jù)集,調(diào)整范圍從 21 到 26。 AR 分量的正則化系數(shù)從 {0.1, 1, 10} 中選擇以達(dá)到最佳性能。我們在每一層之后執(zhí)行 dropout,除了輸入和輸出層,并且速率通常設(shè)置為 0.1 或 0.2。 Adam[18] 算法用于優(yōu)化模型的參數(shù)。
4.5 Main Results
表 2 總結(jié)了所有方法(8)在所有指標(biāo)(3)中對所有測試集(4)的評估結(jié)果。我們分別設(shè)置horizon = {3, 6, 12, 24},這意味著對于電力和交通數(shù)據(jù)的預(yù)測,范圍設(shè)置為3到24小時(shí),對于太陽能數(shù)據(jù)的預(yù)測設(shè)置為30到240分鐘,對于匯率數(shù)據(jù)從 3 到 24 天。視野越大,預(yù)測任務(wù)就越難。每個(gè)(數(shù)據(jù)、指標(biāo))對的最佳結(jié)果在此表中以粗體突出顯示。 LSTNet-Skip(提出的 LSTNet 的一個(gè)版本)的粗體結(jié)果總數(shù)為 17,LSTNet-Attn(我們的 LSTNet 的另一個(gè)版本)為 7,其余方法的總數(shù)為 0 到 3。
- 顯然,LSTNet-skip 和 LSTNet-Attn 這兩個(gè)提出的模型在具有周期性模式的數(shù)據(jù)集上持續(xù)增強(qiáng)了現(xiàn)有技術(shù),尤其是在大視野的設(shè)置中。
- 此外,當(dāng)預(yù)測范圍為 24 時(shí),LSTNet 在太陽能、交通和電力數(shù)據(jù)集的 RSE 指標(biāo)上分別優(yōu)于基線 RNN-GRU 9.2%、11.7%、22.2%,證明了框架設(shè)計(jì)對復(fù)雜重復(fù)模式的有效性。
- 更重要的是,當(dāng)周期性模式 q 從應(yīng)用程序中不清楚時(shí),用戶可以考慮 LSTNet-attn 作為 LSTNet-skip 的替代方案,因?yàn)榍罢呷匀槐然€產(chǎn)生了相當(dāng)大的改進(jìn)。但提議的 LSTNet 在 Exchange-Rate 數(shù)據(jù)集上比 AR 和 LRidge 稍差。為什么?回想一下,在第 4.3 節(jié)和圖 3 中,我們使用這些數(shù)據(jù)集的自相關(guān)曲線來顯示 SolarEnergy、Traffic 和 Electricity 數(shù)據(jù)集中存在重復(fù)模式,但 Exchange-Rate 中沒有。
- 當(dāng)前的結(jié)果為 LSTNet 模型在數(shù)據(jù)中確實(shí)出現(xiàn)長期和短期依賴模式時(shí)成功建模提供了經(jīng)驗(yàn)證據(jù)。否則,LSTNet 的表現(xiàn)與代表性基線中較好的(AR 和 LRidge)相當(dāng)。
將單變量 AR 的結(jié)果與多變量基線方法(LRidge、LSVR 和 RNN)的結(jié)果進(jìn)行比較,我們看到在某些數(shù)據(jù)集中,即 Solar-Energy 和 Traffic,多變量方法更強(qiáng),但在其他方面更弱,這意味著更豐富輸入信息會導(dǎo)致傳統(tǒng)多變量方法的過度擬合。相比之下,LSTNet 在不同情況下具有強(qiáng)大的性能,部分原因在于它的自回歸組件,我們將在 4.6 節(jié)進(jìn)一步討論。
4.6 Ablation Study
為了證明我們的框架設(shè)計(jì)的效率,我們進(jìn)行了仔細(xì)的消融研究。具體來說,我們在 LSTNet 框架中一次刪除每個(gè)組件。首先,我們將沒有不同組件的 LSTNet 命名如下。
- LSTw/oskip:沒有 Recurrent-skip 組件和注意力組件的 LSTNet 模型。
- LSTw/oCNN:沒有卷積組件的 LSTNet-skip 模型。
- LSTw/oAR:沒有AR 組件的 LSTNet-skip 模型。
對于不同的基線,我們調(diào)整模型的隱藏維度,使它們具有與完整的 LSTNet 模型相似數(shù)量的模型參數(shù),消除了由模型復(fù)雜性引起的性能增益。
使用 RSE 和 CORR 測量的測試結(jié)果如圖 5 6 所示。這些結(jié)果的幾個(gè)觀察結(jié)果值得強(qiáng)調(diào):
- 每個(gè)數(shù)據(jù)集的最佳結(jié)果是使用 LSTSkip 或 LST-Attn 獲得的。
- 從完整模型中刪除 AR 組件(在 LSTw/oAR 中)導(dǎo)致大多數(shù)數(shù)據(jù)集的性能下降最為顯著,總體上顯示了 AR 組件的關(guān)鍵作用。
- 刪除(LSTw/oCNN 或 LSTw/oskip)中的 Skip 和 CNN 組件會導(dǎo)致某些數(shù)據(jù)集的性能大幅下降,但并非全部。LSTNet 的所有組件共同導(dǎo)致我們的方法在所有數(shù)據(jù)集上的穩(wěn)健性能。
結(jié)論是,我們的架構(gòu)設(shè)計(jì)在所有實(shí)驗(yàn)設(shè)置中都是最穩(wěn)健的,尤其是在大的預(yù)測范圍時(shí)。至于為什么 AR 組件會發(fā)揮如此重要的作用,我們的解釋是 AR 通常對數(shù)據(jù)的規(guī)模變化具有魯棒性。
為了從經(jīng)驗(yàn)上驗(yàn)證這種直覺,我們在圖 6 中繪制了電力消耗數(shù)據(jù)集中 1 到 5000 小時(shí)持續(xù)時(shí)間的一維(一個(gè)變量)時(shí)間序列信號,其中藍(lán)色曲線是真實(shí)數(shù)據(jù),紅色曲線是系統(tǒng)- 預(yù)測信號。我們可以看到,真正的消耗在第 1000 小時(shí)左右突然增加,LSTNet-Skip 成功捕捉到了這種突然的變化,但 LSTw/oAR 未能正確反應(yīng)。
為了更好地驗(yàn)證這個(gè)假設(shè),我們進(jìn)行了模擬實(shí)驗(yàn)。首先,我們通過以下步驟隨機(jī)生成一個(gè)尺度變化的自回歸過程。首先,我們隨機(jī)采樣一個(gè)向量 w ~ N (0, I),w ∈ Rp,其中 p 是給定的窗口大小。那么生成的自回歸過程 xt 可以描述為
其中 ? ~ N (μ, 1)。為了注入尺度變化,我們將高斯噪聲的平均值每 T 個(gè)時(shí)間戳增加 μ0。則時(shí)間序列 xt 的高斯噪聲可寫為
其中?·?表示底函數(shù)。
我們將時(shí)間序列拆分為訓(xùn)練集并按時(shí)間順序進(jìn)行測試,并測試 RNN-GRU 和 LSTNet 模型。結(jié)果如圖 4 所示。RNN-GRU 和 LSTNet 都可以記住訓(xùn)練集中的模式(左側(cè))。但是,RNN-GRU 模型無法遵循測試集中的尺度變化模式(右側(cè))。相反,LSTNet 模型更適合測試集。換句話說,普通的 RNN 模塊,或者說 LSTNet 中的神經(jīng)網(wǎng)絡(luò)組件,可能對數(shù)據(jù)中違反的尺度波動不夠敏感(這在電力數(shù)據(jù)中很典型,可能是由于公共假期的隨機(jī)事件或溫度波動等),而簡單的線性AR模型可以在預(yù)測中做出適當(dāng)?shù)恼{(diào)整。
總之,這項(xiàng)消融研究清楚地證明了我們架構(gòu)設(shè)計(jì)的效率。所有組件都為 LSTNet 的出色而強(qiáng)大的性能做出了貢獻(xiàn)。
4.7 Mixture of long- and short-term patterns
為了說明 LSTNet 在對時(shí)間序列數(shù)據(jù)中短期和長期重復(fù)模式混合建模方面的成功,圖 7 比較了數(shù)據(jù)集 LSTNet 和 VAR 在 Traffic 中特定時(shí)間序列(輸出變量之一)上的性能。如第 4.3 節(jié)所述,流量數(shù)據(jù)表現(xiàn)出兩種重復(fù)模式,即每日和每周。我們可以在圖 7 中看到,
- 周五和周六的真實(shí)交通占用模式(藍(lán)色)非常不同,而周日和周一則不同。
- 圖 7 是交通流量監(jiān)控傳感器的 VAR 模型((a)部分)和 LSTNet((b)部分)的預(yù)測結(jié)果,其中它們的超參數(shù)是根據(jù)驗(yàn)證集上的 RMSE 結(jié)果選擇的。該圖表明,VAR 模型只能處理短期模式。 VAR 模型的預(yù)測結(jié)果模式只取決于預(yù)測的前一天。我們可以清楚地看到它在星期六(第 2 和第 9 個(gè)峰值)和星期一(第 4 和第 11 個(gè)峰值)的結(jié)果與 ground truth 不同,其中星期一(工作日)的 ground truth 有兩個(gè)峰值,一個(gè)峰值為星期六(周末)。
- 相反,我們提出的 LSTNet 模型分別在工作日和周末執(zhí)行兩種模式。這個(gè)例子證明了 LSTNet 模型能夠同時(shí)記憶短期和長期重復(fù)模式的能力,這是傳統(tǒng)預(yù)測模型所不具備的,在現(xiàn)實(shí)世界時(shí)間序列信號的預(yù)測任務(wù)中至關(guān)重要。
5 CONCLUSION
在本文中,我們提出了一種用于多變量時(shí)間序列預(yù)測任務(wù)的新型深度學(xué)習(xí)框架 (LSTNet)。通過結(jié)合卷積和遞歸神經(jīng)網(wǎng)絡(luò)的優(yōu)勢以及自回歸組件,所提出的方法顯著改善了在多個(gè)基準(zhǔn)數(shù)據(jù)集上進(jìn)行時(shí)間序列預(yù)測的最新結(jié)果。通過深入的分析和經(jīng)驗(yàn)證據(jù),我們展示了 LSTNet 模型架構(gòu)的效率,它確實(shí)成功地捕獲了數(shù)據(jù)中的短期和長期重復(fù)模式,并結(jié)合了線性和非線性模型來進(jìn)行穩(wěn)健的預(yù)測。
對于未來的研究,擴(kuò)展工作有幾個(gè)有希望的方向。首先,跳躍循環(huán)層的跳躍長度 p 是一個(gè)關(guān)鍵的超參數(shù)。目前,我們根據(jù)驗(yàn)證數(shù)據(jù)集手動調(diào)整它。如何根據(jù)數(shù)據(jù)自動選擇p是一個(gè)有趣的問題。其次,在卷積層中我們平等對待每個(gè)可變維度,但在現(xiàn)實(shí)世界的數(shù)據(jù)集中,我們通常擁有豐富的屬性信息。將它們集成到 LSTNet 模型中是另一個(gè)具有挑戰(zhàn)性的問題。
總結(jié)
以上是生活随笔為你收集整理的【时序】LSTNet:结合 CNN、RNN 以及 AR 的时间序列预测模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓设计模式のAdapter模式
- 下一篇: 打开方式更改为计算机程序,Lnk打开方式