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