提升Transformer在不平稳时间序列预测上效果的方法
今天為大家介紹一篇NIPS 2022清華大學的工作:Non-stationary Transformer。這篇文章主要針對不平穩時間序列預測問題,提出了一種新的Transformer結構,既能保留原始序列的重要信息,又能消除原始數據的不平穩性,顯著提升了不平穩時間序列的預測效果。
論文標題:Non-stationary Transformers: Rethinking the Stationarity in Time Series Forecasting
下載地址:https://arxiv.org/pdf/2205.14415.pdf
1
時間序列中的不平穩性
時間序列的不平穩性(non-stationarity)是一個比較難處理,且真實世界中很常見的問題。時間序列的不平穩性指的是隨著時間的變化,觀測值的均值、方差等統計量發生變化。不平穩性會導致在訓練集訓練的模型,在測試集上效果較差,因為訓練集和測試集屬于不同時間,而不同時間的數據分布差異較大。
業內解決這種統計量隨時間變化的不平穩問題主要方法是,對時間序列數據做一些諸如歸一化等平穩化處理。例如對每個序列樣本使用z-normalization處理成0均值1方差的,這樣就可以解決不同時間步的樣本統計量不一致的問題。但是這種解決方法會對Transformer模型帶來一個負面影響:平穩化后的序列雖然統計量一致了,但是這個過程中也讓數據損失了一些個性化的信息,導致不同序列的Transformer中的attention矩陣趨同。文中將這個現象叫作over-stationarization。
如下圖所示,對于一個序列的3個時間窗口的子序列,不進行歸一化處理的attention分布差別很大,而使用了歸一化處理后,3個序列的attention分布趨同了。這也是導致Transformer模型在一些non-stationary數據上效果不好的原因之一。
為了解決這個問題,這篇文章提出了一種新的Transformer結構Non-stationary Transformers,核心包括兩個部分:一個是對輸入序列的歸平穩化處理的預測結果反平穩化處理方法;另一個是讓Transformer能夠處理平穩化序列的同時,學習不平穩化數據中的attention規律。
2
平穩化處理
文中對原始輸入序列采用了簡單有效的平穩化方法,對于每個輸入序列,利用輸入序列的均值和方差將其轉換為0均值1方差的高斯分布,以此消除不同時間窗口時間序列統計量的差異:
對于模型的輸出結果,使用均值和方差做反向處理,得到最終預測結果:
3
De-stationary Attention
為了讓Transformer能夠直接從平穩化前的時間序列中學習attention pattern,本文提出了De-stationary Attention。對于每個Attention層,由于輸入的是平穩化后的序列,其和平穩化前序列的關系可以表達成如下公式:
并可以進一步轉換為如下表達式:
因此,想要使用平穩化前的序列計算attention,核心就是去計算3項:平穩化的方差、Q在時間維度上的均值、平穩化前序列經過Transformer得到的K。文中采用一個MLP網絡來學習這兩個部分,MLP的輸入是原始平滑前的時間序列,公式如下:
通過這種方式,既能讓模型在平穩化后的序列上學習,又能讓模型根據非平穩化前完整的序列信息學習Transforomer的attention pattern。模型的整體結構如下圖所示。
4
實驗結果
在實驗部分主要對比了文中提出的模型和各類Transformer模型的效果,對比了96、192、336、720等不同時間窗口的效果,Non-stationarity Transformer遙遙領先。
將Non-stationarity Transformer的主要模塊加入到各類Transformer模型中,可以顯著提升它們的效果,這也進一步驗證了文中提出的de-stationary attention模塊的有效性。
最后,通過一些case的可視化分析可以發現,Non-stationarity Transformer可以更準確的刻畫序列未來的趨勢性和波動性。
5
總結
本文從一個Transformer在非平穩時間序列預測上的問題出發,提出了簡單有效的改進,讓Transformer在處理平穩化序列的同時,能夠從原始非平穩化序列中提取有用的信息,提升attention的學習能力。模型整體的實現比較簡單,但是背后發現問題和解決問題的思路很值得學習。
推薦閱讀:我的2022屆互聯網校招分享我的2021總結淺談算法崗和開發崗的區別互聯網校招研發薪資匯總 2022屆互聯網求職現狀,金9銀10快變成銅9鐵10!!公眾號:AI蝸牛車保持謙遜、保持自律、保持進步發送【蝸牛】獲取一份《手把手AI項目》(AI蝸牛車著) 發送【1222】獲取一份不錯的leetcode刷題筆記發送【AI四大名著】獲取四本經典AI電子書總結
以上是生活随笔為你收集整理的提升Transformer在不平稳时间序列预测上效果的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 测试方法——正交表法
- 下一篇: LDA算法推导