清華提出時間序列大模型:面向通用時序分析的生成式Transformer | ICML 2024

新智元報道

編輯:LRST 好睏

【新智元導讀】大模型在語言、圖像領域取得了巨大成功,時間序列作爲多個行業的重要數據類型,時序領域的大模型構建尚處於起步階段。近期,清華大學的研究團隊基於Transformer在大規模時間序列上進行生成式預訓練,獲得了任務通用的時序分析模型,展現出大模型特有的泛化性與可擴展性

時間序列提供了數據隨時間變化的視角,對於理解複雜系統、預測未來變化和制定決策規劃至關重要,在金融、氣象、醫療、供應鏈等多個行業中發揮着至關重要的作用。

近年來,基於深度學習開發的模型在時序分析領域取得了突破性進展。然而,相較於語言、視覺大模型的蓬勃發展,現有模型依然面臨若干瓶頸:

(1)泛化性:模型能處理訓練時未遇到的新數據;或在數據稀缺時,根據有限的訓練數據快速適配。然而,即便是目前領域前沿的時序模型,在少樣本場景下依然會產生明顯的性能劣化。

時序預測模型PatchTST在不同數據稀缺條件下的效果

(2)通用性:小型深度模型訓練後僅適合單一任務和場景,具有固定輸入輸出長度,適配的變量數等難以泛化的性質,難以像大語言模型一樣,適用於各類下游任務,例如T5,LLaMA和BLOOM等。

(3)可擴展性:大模型關鍵特徵之一在於Scaling Law:擴大參數量或預訓練規模可以取得效果提升。然而,時序領域的大模型骨架尚無定論,即使是Transformer,在以往時序大模型研究中尚未展現出明顯的可擴展性。

最近,清華大學軟件學院機器學習實驗室和大數據系統軟件國家工程研究中心提出了名爲Timer(Time Series Transformer)的面向時間序列的大模型(Large Time Series Model, LTSM)。

模型採用僅編碼器(Decoder-only)結構,基於多領域時間序列進行大規模預訓練,通過微調突破了少樣本場景下的性能瓶頸,適配不同輸入輸出長度的時間序列,以及預測,填補,異常檢測等任務,展現出模型可擴展性。

目前,該工作已被ICML 2024接收。

論文鏈接:https://arxiv.org/abs/2402.02368

代碼倉庫:https://github.com/thuml/Large-Time-Series-Model

數據構建:基於時序特性構建層次化數據集

儘管時間序列在現實世界中無處不在,大規模時間序列數據集的發展卻滯後於語言,圖像,視頻等領域。

並且,基於低質量,弱語義,以及難預測數據訓練的模型無法展現對時間序列的通用理解能力。

爲此,作者團隊基於可預測性、平穩性等指標重重篩選,文章構建了包含10億數據點的統一時間序列數據集(Unified Time Series Dataset, UTSD)。

UTSD覆蓋七個領域的高質量時間序列,蘊含時間序列模態的通用“常識”,以此訓練模型獲得跨領域時序建模的基本能力,例如捕捉主要週期,生成重要模式,以及關注自相關部分等。

文章尤其重視數據質量的重要性,對數據集進行難度分級和配比,隨着數據規模的擴大,變化規律複雜的數據比例也在不斷增加,以便逐步進行模型的容量擴展和課程學習。

作者團隊目前還在持續擴大數據集,並將UTSD公開至HuggingFace,以促進時序領域的預訓練以及大模型研究。

訓練方法:統一格式 + 自迴歸生成

不同於語言、圖像有着相對固定的格式,時序領域的數據存在異構性,例如變量數目,採樣頻率和時間跨度等,因此,進行大規模時序預訓練的首要難題在於如何統一異構的時間序列。

爲將異構時間序列轉換爲統一格式,作者團隊提出了一種單序列(Single Series Sequence, S3)格式。

如下圖所示,通過變量拆分,歸一化合並,分窗和採樣等流程,文章將時序數據轉換成了與語言類似的固定長度的一維序列,在數值範圍內保證分佈穩定的同時,讓模型更加關注序列本身的變化模式。

在預訓練方法上,文章將單序列切分爲序列片段,每個片段作爲一個“詞”,採用與LLM類似的下一詞預測(Next Token Prediction, NTP)進行預訓練。推理時,模型可通過自迴歸生成任意長度的序列。

模型結構:劍走偏鋒的僅解碼器結構

不同於當下時序領域流行的僅編碼器結構,Timer採用GPT風格的僅解碼器Transformer。

作者團隊發現,Encoder-only結構接受了預測區間的所有監督信號,在端到端的訓練場景中能取得較好效果,但在一定程度上限制Transformer作爲時序大模型的潛力。

一方面,在Encoder-only Transformer中,輸入序列中的“詞”互相可見,可能降低了模型建模序列變化的難度;模型引入的平整化(Flattening)會影響詞之間的獨立性,導致難以學到序列片段的語義。

另一方面,LLM廣泛採用以詞爲單位的自迴歸式監督信號,每個“詞”都是預測的目標,產生了細粒度且互相獨立的監督信號。

文章認爲基於大規模時序數據,學習序列片段的獨立語義,能夠賦予模型在數據集之間泛化的能力。並且獲得的模型和LLM一樣,模型只限制了最大輸入長度,從而能夠適用於下游任務中各種長度的序列。

任務統一:生成式模型應對多種任務

Timer與GPT類似進行生成式自迴歸,爲進一步擴展模型的通用性,文章將典型時序分析場景統一爲生成式任務。

(1)時序預測(Forecasting):Timer一次推理輸出一個序列片段,通過多步自迴歸給出任意長的預測結果。作者團隊發現,在預測上下文長度不超過預訓練序列長度的情況下,模型不會出現明顯的多步誤差累積現象。

(2)時序填補(Imputation):類似語言模型T5,作者引入Mask Token表示一段連續的缺失序列。通過微調,模型根據Mask之前的序列來填補連續的缺失值。

(3)異常檢測(Detection):文章提出了一種預測式異常檢測方法,模型首先在正常序列上進行微調,隨後根據輸入給出偏移一段時期的序列作爲正常值,將其與實際採集的值對比,基於對比誤差給出異常區間的置信度。

多種時序分析任務與基於Timer的生成式分析方案

實驗效果

文章從多個角度評估了Timer作爲時序大模型的能力,包括少樣本微調,零樣本預測,任務通用性,可擴展性等,並分析了模型骨架選擇,以及對於可變序列長度的適配性。

少樣本預測

文章測試了Timer在不同數據稀缺性下的預測誤差(MSE),並與此前的領域最優效果(SOTA)進行了比較。

可以發現:Timer使用極少的訓練樣本,例如1%的ETTh1或者3%的PEMS03,就能超過領域前沿的PatchTST,iTransformer等模型在100%數據上的訓練效果。

實線:預訓練Timer;虛線:端到端訓練的Timer;深色基準:SOTA模型在全量數據上的訓練效果

另外,預訓練Timer的預測誤差(實線)一致小於未經過預訓練的模型(虛線),證明了大規模預訓練的有效性。

任務通用性

文章評估了Timer在填補任務和異常檢測上的效果,驗證了預訓練能夠給模型在各個數據集上帶來穩定的收益。

左:填補任務中相對端到端模型的效果提升;右:在UCR Anomaly Archive中成功檢測出的異常數

文章還將Timer與此前的領域專用模型進行了對比:Timer在全部的44個填補場景中取得了領先,併成功檢測出了172個序列異常,相較之下,Anomaly Transformer爲129個,TimesNet爲109個。

可擴展性

作者團隊研究了Timer的可擴展性,發現隨着參數量和數據規模的增加,模型在PEMS數據集上的多變量預測誤差降低了36.6%(0.194 -> 0.123),低於此前最優的多變量預測模型iTransformer(0.139)。

從左到右:擴展Timer層數,特徵維度和預訓練數據規模都能提升預測效果

零樣本預測

作者團隊對同期涌現的時序大模型進行了全面測評,在零樣本預測任務中,大模型不更新任何參數,直接輸入數據集中時間序列進行預測。在7個真實數據集中,Timer取得了綜合最優的水平。

模型分析

爲確認時序領域的大模型骨架,作者團隊對不同模型進行了同樣規模的預訓練,包括基於MLP的TiDE、TCN、LSTM以及Transformer的兩種結構,結果顯示Transformer在大規模時序數據預訓練中具備足夠的模型容量。

訓練/驗證時的損失函數,橫軸以模型訓練過的數據點數代表訓練進程

文章探討了Timer對可變序列長度處理能力:如左圖所示,隨着輸入序列的變長,Timer的預測誤差逐步降低。如左圖所示,爲支持任意長度的序列輸出,文章對兩種結構的Transformer進行了滾動預測。相較於Encoder-only Transformer,Timer顯著緩解了多步誤差累積。

作者進一步分析了兩種Transformer結構在下游任務上的泛化性,發現時下流行的僅編碼器結果在小規模訓練場景中可以取得較好的效果。然而,在預訓練-微調範式下,Timer表現出更強的泛化性,即使在多步滾動預測的場景中也能取得領域最優效果,打破了此前針對不同輸入-輸出長度分別訓練的現狀。

分析示例

文章提供了Timer在各個任務上的分析示例和具體指標,詳情可參考論文附錄。

未來方向

文章最後,作者對現有時序大模型進行了能力測評和對比,總結了時序領域大模型的潛在發展方向,主要包含更強的泛化能力(例如零樣本預測),支持更長的上下文長度,支持多變量建模,以及提供置信度的概率預測等。

總結

該工作關注大模型的預訓練-微調範式,驗證了構建時序領域大模型的可行性,對多領域時間序列的生成式預訓練進行了深入探究,證明了生成式模型在處理多種時序分析任務的有效性,相關數據集與代碼已經開源,歡迎感興趣的朋友閱讀論文或訪問GitHub頁面。

參考資料:

https://arxiv.org/abs/2402.02368