2022年深度學習在時間序列預測和分類中的研究進展綜述
時間序列預測的transformers的衰落和時間序列嵌入方法的興起,還有異常檢測、分類也取得了進步
2022年整個領域在幾個不同的方面取得了進展,本文將嘗試介紹一些在過去一年左右的時間里出現的更有前景和關鍵的論文,以及Flow Forecast [FF]預測框架。
時間序列預測
1、Are Transformers Really Effective for Time Series Forecasting?
??https://arxiv.org/pdf/2205.13504.pdf??
Transformer相關研究對比Autoformer、Pyraformer、Fedformer等,它們的效果和問題
隨著 Autoformer (Neurips 2021)、Pyraformer (ICLR 2022)、Fedformer (ICML 2022)、EarthFormer (Neurips 2022) 和 Non-Stationary Transformer (Neurips) 等模型的出現,時間序列預測架構的 Transformer 系列不斷發(fā)展壯)。但是這些模型準確預測數據并優(yōu)于現有方法的能力仍然存在疑問,特別是根據新研究(我們將在稍后討論)。
Autoformer :擴展并改進了 Informer 模型的性能。Autoformer 具有自動關聯機制,使模型能夠比標準注意力更好地學習時間依賴性。它旨在準確分解時態(tài)數據的趨勢和季節(jié)成分。
Pyraformer:作者介紹了“金字塔注意模塊 (PAM),其中尺度間樹結構總結了不同分辨率下的特征,尺度內相鄰連接對不同范圍的時間依賴性進行建模?!?/p>
Fedformer:該模型側重于在時間序列數據中捕捉全球趨勢。作者提出了一個季節(jié)性趨勢分解模塊,旨在捕捉時間序列的全局特征。
Earthformer: 可能是這些論文中最獨特的一個,它特別專注于預測地球系統(tǒng),如天氣、氣候和農業(yè)等。介紹了一種新的cuboid 注意力架構。這篇論文應該是潛力巨大的望,因為在河流和暴洪預測方面的研究,許多經典的Transformer都失敗了。
Non-Stationary Transformer:這是使用transformer 用于預測的最新論文。作者旨在更好地調整 Transformer 以處理非平穩(wěn)時間序列。他們采用兩種機制:去平穩(wěn)注意里和一系列平穩(wěn)化機制。這些機制可以插入到任何現有的Transformer模型中,作者測試將它們插入 Informer、Autoformer 和傳統(tǒng)的Transformer 中,都可以提高性能(在附錄中,還表明它可以提高 Fedformer 的性能)。
論文的評估方法:與 Informer 類似,所有這些模型(Earthformer 除外)都在電力、交通、金融和天氣數據集上進行了評估。主要根據均方誤差 (MSE) 和平均絕對誤差 (MAE) 指標進行評估:
這篇論文很好,但是它只對比了Transformer相關的論文,其實應該與更簡單的方法進行比較,比如簡單的線性回歸、LSTM/GRU、甚至是XGB等樹形模型。另外就是它們應該不僅僅局限在一些標準數據集,因為我在其他時間序列相關數據集上沒有看到很好的表現。比如說informer準確預測河流流量方面遇到了巨大的問題,與LSTM或甚至是普通的Transformer相比,它的表現通常很差。
另外就是由于與計算機視覺不同,圖像維度至少保持不變,時間序列數據在長度、周期性、趨勢和季節(jié)性方面可能存在巨大差異,因此需要更大范圍的數據集。
在OpenReview的Non-Stationary Transformer的評論中,一位評論者也表達了這些問題,但它在最終的元評論中被否決了:
“由于該模型屬于Transformer領域,而且Transformer之前已經在許多任務中表現出了最先進的水平,我認為沒有必要與其他‘家族’方法進行比較。”
這是一個非常有問題的論點,并導致研究在現實世界中缺乏適用性。就像我們所認知的:XGB在表格數據的壓倒性優(yōu)勢還沒有改變,Transformer的閉門造車又有什么意義?每次都超越,每次都被吊打。
作為一個在實踐中重視最先進的方法和創(chuàng)新模型的人,當我花了幾個月的時間試圖讓一個所謂的“好”模型工作時,但是最后卻發(fā)現,他的表現還不如簡單的線性回歸,那這幾個月有什么意思?這個所謂的好”模型又有什么意義。
所有的 transformer 論文都同樣存在有限評估的問題。我們應該從一開始就要求更嚴格的比較和對缺點的明確說明。一個復雜的模型最初可能并不總是優(yōu)于簡單模型,但需要在論文中明確指出這一點,而不是掩蓋或簡單地假設沒有這種情況。
但是這篇論文還是很好的,比如Earthformer 在MovingMNIST 數據集和N-body MNIST數據集上進行了評估,作者用它來驗證cuboid 注意力的有效性,評估了它的降水量即時預報和厄爾尼諾周期預報。我認為這是一個很好的例子,將物理知識整合到具有注意力的模型架構中,然后設計出好的測試。
2、Are Transformers Effective for Time Series Forecasting (2022)?
??https://arxiv.org/pdf/2205.13504.pdf??
這篇論文探討了 Transformer 預測數據與基線方法的能力。結果在某種程度上再次證實了Transformers 的性能通常比更簡單的模型差,而且難以調整。這篇論文中的幾個有趣的觀點:
- 用基本的線性層替換自注意力并發(fā)現:“Informer 的性能隨著逐漸簡化而增長,表明至少對于現有的 LTSF 基準來說,自注意力方案和其他復雜模塊是不必要的”
- 調查了增加回溯窗口( look-back window )是否會提高 Transformer 的性能并發(fā)現:“SOTA Transformers 的性能略有下降,表明這些模型僅從相鄰的時間序列序列中捕獲相似的時間信息。”
- 探討了位置嵌入是否真的能很好地捕捉時間序列的時間順序。通過將輸入序列隨機混洗到Transformer中來做到這一點。他們在幾個數據集上發(fā)現這種改組并沒有影響結果(這個編碼很麻煩)。
在過去的幾年里,Transformer模型的無數次時間序列實驗在絕大多數情況下結果都不太理想。在很長一段時間里,我們都認為一定是做錯了什么,或者遺漏了一些小的實現細節(jié)。所有這些都被認為是下一個SOTA模型的思路。但是這個論文卻有一致的思路就是?如果一個簡單的模型勝過Transformer,我們應該繼續(xù)使用它們嗎?是所有的Transformer都有固有的缺陷,還是只是當前的機制?我們是否應該回到lstm、gru或簡單的前饋模型這樣的架構?這些問題我都不知道答案,但是這篇論文的整體影響還有待觀察。到目前為止,我認為答案可能是退一步,專注于學習有效的時間序列表示。畢竟最初BERT在NLP環(huán)境中成功地形成了良好的表示。
也就是說,我不認為我們應該把時間序列的Transformer視為完全死亡。Fedformer的表現非常接近簡單模型,并且在各種消融打亂任務中表現更好。雖然的基準在很多情況下都難以進行預測,但他們對數據的內部表示卻相當不錯。我認為還需要進一步了解內部表示和實際預測輸出之間的脫節(jié)。另外就是正如作者所建議的那樣,改進位置嵌入可以在提高整體性能方面發(fā)揮關鍵作用。最后有一個Transformer的模型,在各種異常檢測數據集上表現非常好,下面就會介紹。
3、Anomaly Transformer (ICLR Spolight 2022)
??https://arxiv.org/abs/2110.02642??
相當多的研究都集中在將 transformers 應用于預測,但是異常檢測的研究相對較少。這篇介紹了一種(無監(jiān)督)Transformer 來檢測異常。該模型結合使用特別構建的異常注意機制和 minmax 策略。
本文在五個真實世界的數據集上評估了模型的性能,包括Server Machine Dataset, Pooled Server Metrics, Soil Moisture Active Passive和NeurIPS-TS(它本身由五個不同的數據集組成)。雖然有人可能會對這個模型持懷疑態(tài)度,特別是關于第二篇論文的觀點,但這個評估是相當嚴格的。Neurips-TS是一個最近創(chuàng)建的,專門用于提供更嚴格的異常檢測模型評估的數據集。與更簡單的異常檢測模型相比,該模型似乎確實提高了性能。
作者提出了一種獨特的無監(jiān)督Transformer,它在過多的異常檢測數據集上表現良好。這是過去幾年時間序列Transformer領域最有前途的論文之一。因為預測比分類甚至異常檢測更具挑戰(zhàn)性,因為你試圖預測未來多個時間步驟的巨大可能值范圍。這么多的研究都集中在預測上,而忽略了分類或異常檢測,對于Transformer我們是不是應該從簡單的開始呢?
4、WaveBound: Dynamic Error Bounds for Stable Time Series Forecasting (Neurips 2022):
??https://openreview.net/forum?id=vsNQkquutZk??
論文介紹了一種新的正則化形式,可以改進深度時間序列預測模型(特別是上述transformers )的訓練。
作者通過將其插入現有的 transformer + LSTNet模型來評估。他們發(fā)現它在大多數情況下顯著提高了性能。盡管他們只測試了Autoformer 模型,而沒有測試 Fedformer 這樣的更新模型。
新形式的正則化或損失函數總是有用的,因為它們通??梢圆迦肴魏维F有的時間序列模型中。如果你 Fedformer + 非平穩(wěn)機制 + Wavebound 結合起來,你可能會在性能上擊敗簡單的線性回歸 :)。
時間序列表示
雖然Transformer 再預測方向上的效果并不好,但在創(chuàng)建有用的時間序列表示方面Transformer還是取得了許多進展。我認為這是時間序列深度學習領域中一個令人印象深刻的新領域,應該進行更深入的探索。
5、TS2Vec: Towards Universal Representation of Time Series (AAAI 2022)
??https://arxiv.org/abs/2106.10466??
TS2Vec是一個學習時間序列表示/嵌入的通用框架。這篇論文本身已經有些過時了,但它確實開始了時間序列表示學習論文的趨勢。
對使用表示進行預測和異常檢測進行評估,該模型優(yōu)于許多模型,例如 Informer 和 Log Transformer。
6、Learning Latent Seasonal-Trend Representations for Time Series Forecasting(Neurips 2022)
??https://openreview.net/forum?id=C9yUwd72yy??
作者創(chuàng)建了一個模型(LAST),使用變分推理創(chuàng)建季節(jié)性和趨勢的分離表示。
作者對他們的模型進行了下游預測任務的評價,他們通過在表示上添加一個預測器(見上圖中的B)來做到這一點。它們還提供了有趣的圖來顯示表示的可視化。該模型在幾個預測任務以及TS2Vec和成本方面都優(yōu)于Autoformer。在一些預測任務上,它看起來也可能比上面提到的簡單線性回歸表現更好。
盡管我仍然對那些只評估標準預測任務的模型持懷疑態(tài)度,但這個模型的確很亮眼,因為它關注的是表征而不是預測任務本身。如果我們看一下論文中展示的一些圖表,可以看到模型似乎確實學會了區(qū)分季節(jié)性和趨勢。不同數據集的可視化表示也嵌入到相同的空間中,如果它們顯示出實質性的差異,那將是很有趣的。
7、CoST: Contrastive Learning of Disentangled Seasonal-Trend Representations for Time Series Forecasting (ICLR 2022)
??https://openreview.net/forum?id=PilZY3omXV2??
這是2022年早些時候在ICLR上發(fā)表的一篇論文,在學習季節(jié)和趨勢表示方面與LaST非常相似。由于LaST在很大程度上已經取代了它的性能,這里就不做過多的描述了。但鏈接在上面供那些想要閱讀的人閱讀。
其他有趣的論文
8、Domain Adaptation for Time Series Forecasting via Attention Sharing(ICML 2022)
??https://arxiv.org/abs/2102.06828??
當缺乏訓練數據時,預測對 DNN 來說是一項挑戰(zhàn)。這篇論文對具有豐富數據的領域使用共享注意力層,然后對目標領域使用單獨的模塊。
它所提出的模型使用合成數據集和真實數據集進行評估。在合成環(huán)境中,測試了冷啟動學習和少樣本學習,發(fā)現他們的模型優(yōu)于普通 Transformer 和 DeepAR。對于真實數據集采用了 Kaggle 零售數據集,該模型在這些實驗中大大優(yōu)于基線。
冷啟動、少樣本和有限學習是極其重要的主題,但很少有論文涉及時間序列。該模型為解決其中一些問題提供了重要的一步。也就是說他們可以在更多不同的有限現實世界數據集上進行評估,并與更多基準模型進行比較, 微調或正則化的好處在于可以對任何架構進行調整。
9、When to Intervene: Learning Optimal Intervention Policies for Critical Events (Neurips 2022)
??https://openreview.net/pdf?id=rP9xfRSF4F??
雖然這不是一篇“典型的”時間序列論文,但我選擇將其列入這個列表,因為本文的重點是在機器發(fā)生故障之前找到進行干預的最佳時間。這被稱為OTI或最佳時間干預
評估OTI的問題之一是潛在生存分析的準確性(如果不正確,評估也會不正確)。作者根據兩個靜態(tài)閾值評估了他們的模型,發(fā)現它表現得很好,并且繪制了不同政策的預期表現和命中與失敗的比率。
這是一個有趣的問題,作者提出了一個新穎的解決方案,Openreview的一位評論者指出:“如果有一個圖表顯示失敗概率和預期干預時間之間的權衡,那么實驗可能會更有說服力,這樣人們就可以直觀地看到這個權衡曲線的形狀。”
最近的數據集/基準
最后就是數據集的測試的基準
Monash Time Series Forecasting Archive (Neurips 2021):該存檔旨在形成不同時間序列數據集的“主列表”,并提供更權威的基準。該存儲庫包含 20 多個不同的數據集,涵蓋多個行業(yè),包括健康、零售、拼車、人口統(tǒng)計等等。
??https://forecastingdata.org/??
Subseasonal Forecasting Microsoft (2021):這是 Microsoft 公開發(fā)布的數據集,旨在促進使用機器學習來改進次季節(jié)預測(例如未來兩到六周)。次季節(jié)預報有助于政府機構更好地為天氣事件和農民的決定做準備。微軟為該任務包含了幾個基準模型,與其他方法相比,一般來說深度學習模型的表現相當差。最好的 DL 模型是一個簡單的前饋模型,而 Informer 的表現非常糟糕。
??https://www.microsoft.com/en-us/research/project/subseasonal-climate-forecasting/??
Revisiting Time Series Outlier Detection:本文評述了許多現有的異常/異常值檢測數據集,并提出了35個新的合成數據集和4個真實世界數據集用于基準測試。
??https://openreview.net/forum?id=r8IvOsnHchr??
開源的時序預測框架FF
Flow Forecast是一個開源的時序預測框架,它包含了以下模型:
Vanilla LSTM (LSTM)、SimpleTransformer、Multi-Head Attention、Transformer with a linear decoder、DARNN、Transformer XL、Informer、DeepAR、DSANet 、SimpleLinearModel等等
這是一個學習使用深度學習進行時間預測的很好的模型代碼來源,有興趣的可以看看。
??https://github.com/AIStream-Peelout/flow-forecast??
總結
在過去的兩年里,我們已經看到了Transformer在時間序列預測中的興起和可能的衰落和時間序列嵌入方法的興起,以及異常檢測和分類方面的額外突破。
但是對于深度學習的時間序列來說:可解釋性、可視化和基準測試方法還是有所欠缺,因為模型在哪里執(zhí)行,在哪里出現性能故障是非常重要的。此外,更多形式的正則化、預處理和遷移學習來提高性能可能會在未來中出現。
也許Transformer對時間序列預測有好處(也許不是),就像VIT那樣如果沒有Patch的出現Transformer可能還會被認為不行,我們也將繼續(xù)關注Transformer在時間序列的發(fā)展或者替代。