【時間序列預測】ForecastNet論文閱讀筆記

ForecastNet: A Time-Variant Deep Feed-Forward Neural Network Architecture for Multi-Step-Ahead Time-Series Forecasting

一種用於多步超前時間序列預測的時變深度前饋神經網絡結構

International Conference on Machine Learning (ICML) 2020

摘要

遞歸和卷積神經網絡是深度學習文獻中最常用的時間序列預測結構。這些網絡通過在時間或空間上使用固定的參數重複一組固定的架構來使用參數共享。結果是,整個體系結構是時不變的(在空間域上是移位不變的)或固定不變的狀態。我們認爲,時不變性會降低進行多步提前預測的能力,因爲需要在一定範圍內建立尺度和分辨率的動力學模型。提出了一種基於深度前饋結構的時變預測模型(ForecastNet)。ForecastNet的另一個新奇之處是交錯輸出,我們用它來幫助減輕逐漸消失的梯度。在多個數據集上,ForecastNet被證明優於統計和深度學習基準模型。

介紹

多步超前預測是指在給定過去和現在的數據的情況下,對未來幾個時間步的一些變量進行預測。在一組時間步中,可以在一系列尺度或分辨率上觀察到各種時間序列成分,如複雜趨勢、季節性和噪聲。增加預測步驟的數量會增加需要建模的比例範圍。需要一種精確的預測方法,在整個尺度範圍內對所有這些組成部分進行建模。
人們對遞歸神經網絡(RNN)和序列到序列預測模型(Kuznetsov&Mariet,2018)非常感興趣。一些研究表明,這些模型的變體取得了成功(Zhu&Laptev,2017;Laptev et al.,2017;Wen et al.,2017;Maddix et al.,Salinas等人,2019年;Xing等人,2019年;Hewamalage等人,2019年;Nguyen等人,2019年;Du等人,2020年。在RNN中的復位產生了一組細胞,每個細胞都有完善的結構,該結構在時間上被複制。此複製結果在一個時間不變模型中。相似,參數共享和卷積在卷積神經網絡(“CNN”)中的結果在空間域中的一個移不變模型;在時間域中,它等於時間不變。我們的推測是,時間-不變性會減少模型在多個時間步驟中學習各種動力學尺度的能力;特別是在多步提前的預測中。
爲了解決這個問題,我們提出了ForecastNet,它是一個具有交錯輸出的深度前向架構。交織輸出之間是網絡結構,隨着時間的推移,結構和參數有所不同。結果是一個隨時間變化的模型。我們展示了前饋網的四種變體,以突出其靈活性。將這四種變體與最先進的基準模型進行比較。結果表明,在性能變化方面,ForecastNet是準確可靠的。

模型

在這裏插入圖片描述
輸入x包含tttnI+1t-n_{I}+1

輸出就是t+1到t+4

隱藏單元包含某種形式的前饋神經網絡

陰影表示這些單元的時變性

在這裏插入圖片描述

一個簡單的ForecastNet形式的例子,在隱藏的單元中有一個緊密連接的隱藏層(可以爲隱藏的單元選擇更復雜的結構)。輸出採用正態或高斯分佈形式。注意,儘管每個序列步驟的架構是相同的,但權重會有所不同(即它們不是重複的)。

ForecastNet不是時不變的,因爲它的參數(和可選的體系結構)隨時間(輸入和輸出序列)而變化。將其與具有固定參數的RNN進行比較,這些參數在每個時間步重複使用,從而得到一個時不變模型

在這裏插入圖片描述

注意,RNN中對時間不變性的要求是在收到第一個輸入之前,將hth_{t}初始化爲h0h_{0}。如果在第一次輸入之前初始化了hth_{t},如果收到,則必須有一組零(填充)作爲輸入提供,直到收到第一個文本。這個可能導致hthtt0h^{'}_{t} \neq h_{t-t_{0}}

在這裏插入圖片描述

時不變

當輸入延遲時間t0t_{0}時,輸出也相應延遲時間t0t_{0}

例題

判定系統y(t)=T[x(t)]=x(2t)y(t) = T[x(t)]= x(2t)的時不變性

解:

T[x(tt0)]=x(2tt0)T[x(t-t_{0})] = x(2t-t_{0})

y(tt0)=x(2t2t0)y(t-t_{0}) = x(2t-2t_{0})

T[x(tt0)]y(tt0)T[x(t-t_{0})] \neq y(t-t_{0})

​ 所以時變

  • Inputs

    • x = xtnI+1x_{t-n_{I}+1}是因變量的一組滯後值。因變量可以是單變量或多變量
  • Hidden Cells

    • 一個隱藏的細胞代表某種形式的前饋神經網絡,如多層感知器(MLP),CNN,或者self-attention
    • 每個隱藏的單元在體系結構方面都是異構的
    • 作爲一個前饋網絡,即使每個隱藏單元的結構都是相同的,每個細胞都有自己獨特的參數
    • ForecastNet是順序的,但它不是遞歸的
    • 隱藏的單元旨在對時間序列動力學建模。隱藏細胞模型局部動力學和細胞之間的聯繫共同對長期動力學。
  • Outputs

    • ForecastNet中的每個輸出都提供了一個進入未來的預測步驟。網絡越深,輸出就越多。因此,隨着預測範圍的增加,ForecastNet的複雜性自然會增加

    • 利用混合密度網絡的思想(Salinas等人,2019年;Bishop,1994年),每個輸出都建立了一個概率分佈模型。在本研究中,正態分佈如圖2所示。輸出層 ll 的正態分佈的平均值和標準差由下式給出:
      μ[l]=Wμ[l]Ta[l1]+bμ[l] \mu ^{[l]} = W_{\mu}^{[l]T}a^{[l-1]} + b_{\mu}^{[l]}

      σ[l]=log(1+exp(Wσ[l]Ta[l1]+bσ[l])) \sigma ^{[l]} = log(1 + exp(W_{ \sigma }^{[l]T}a^{[l-1]}+b_{ \sigma }^{[l]}))

      • a[l1]a^{[l-1]}是前一個隱藏單元的輸出
      • Wμ[l]TW_{\mu}^{[l]T}bμ[l]b_{\mu}^{[l]}是平均層的權重和偏差
      • Wσ[l]TW_{ \sigma }^{[l]T}是標準差層的權重和偏差
    • ll 層相關的預測是通過從N(μ[l],σ[l])N(\mu^{[l]},\sigma^{[l]})採樣得到的

    • 在預測過程中,將採樣的預測反饋到下一層。在訓練過程中,通過訓練數據可以完全觀察到預測結果。該網絡通過梯度下降進行訓練,以優化正態分佈對數似然函數(Salinas等人,2019)

    • 混合密度輸出可以用線性輸出和平方誤差損失函數來代替。此表中不存在不確定性,但需要對兩個參數進行優化。這種形式在本研究中被證明是ForecastNet的變體之一。

  • ForecastNet屬性

    • 時變

    • 交錯輸出

      • 深度學習容易產生梯度爆炸、梯度消失
      • 通過在ForecastNet中的隱藏層之間交錯輸出,鏈被分解成一個項和。這個項的總和比因子的乘積更穩定。
      • 在訓練過程中,交錯輸出向網絡的內部隱藏層提供局部信息,會降低網絡的有效深度
      • 在這裏插入圖片描述
      • 在這裏插入圖片描述

      在這裏插入圖片描述

      • 在前向傳播時,第 ll 層的輸出不僅給了 l+1l+1 層,而且給了 l+2l+2 層,
      • 在反向傳播時,第 l+2l+2 層直接更新第 ll
      • 交錯輸出可以緩解,但不能消除梯度消失問題。項Ψk是由微積分鏈規則形成的導數的乘積。這個乘積中的因子數量與k成正比。對於k較大的較遠的層,Ψk將有許多因子。其結果是,從遙遠的層向後傳播的梯度仍然容易受到消失梯度問題的影響。然而,對於k很小的附近輸出,Ψk的因子很少,因此附近輸出的梯度不太可能經歷消失梯度問題。因此,在訓練過程中,附近的輸出可以爲局部參數提供指導,從而隨着網絡有效深度的減小而提高收斂性。

實驗

  • 數據集

    • 一個合成數據集和九個來自不同領域的真實數據集
    • 包括天氣、環境、能源、水產養殖和氣象領域
  • 在這裏插入圖片描述

    • 在這裏插入圖片描述
    • 在這裏插入圖片描述
  • 模型

    • deepAR
    • TCN
    • sequence-to-sequence (encoder-decoder) model
    • attention model
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章