大語言模型對時間序列預測真的有用嗎?
我們已經看到了語言模型的巨大進步,但時間序列任務,如預測呢?今天我們推薦一篇論文,對現有的語言模型和時間序列做了深入的研究。將探討了是否可以從大型語言模型(LLMs)中獲益于時間序列(TS)預測。
時間序列
時間序列是機器學習中最具挑戰性的工作領域之一,解決時間序列任務,如異常檢測、時間序列預測等,在多個行業中至關重要,能夠節省大量資金。
由OpenAI發起的規模化法則顯示,模型能在更多原始數據上更好地泛化結果就得到了ChatGPT。自那以后,大型語言模型(LLMs)吸引了所有人的注意。
自那以后,研究者們一直在嘗試將LLMs用于時間序列!這在某種程度上是有道理的,因為無論是語言數據還是時間序列都是序列數據,研究者認為如果LLMs能在語言數據上表現出良好的泛化能力,那么它可能也適用于時間序列。
關于這方面有很多酷炫的研究成果,但問題是“有多少LLMs真正適用于時間序列任務?”
我認為一些工作展示了時間序列的光明未來,例如使用LLMs實現的時間序列推理和理解(代理)等。
時間序列推理:
使用大型語言模型(LLMs)進行時間序列推理可以通過整合三種主要的分析任務來增強時間序列推理:因果推理、問答和輔助上下文預測。
因果推理涉及假設觀察到的時間序列模式背后的潛在原因,使模型能夠識別最有可能產生給定時間序列數據的場景。
問答使模型能夠解釋和回應關于時間序列的事實性查詢,如識別趨勢或對數據變化進行反事實推斷。
輔助上下文預測允許模型利用額外的文本信息來增強對未來數據點的預測,整合相關上下文以提高預測準確性。
但當前的LLMs在這些任務中表現出有限的熟練程度,比如在因果和問答任務中的表現僅略高于隨機水平,并在輔助上下文預測中顯示出適度的改進。
社會理解:
使用大型語言模型(LLMs)進行時間序列分析可以顯著提高社會理解,使代理能夠系統地分析和預測社會趨勢和行為?;贚LM的代理使用來自財經、經濟、民調和搜索趨勢等多個領域的真實世界時間序列數據來近似社會的隱藏狀態。這種近似有助于通過將時間序列數據與新聞和社交媒體等其他信息源相關聯,對社會行為進行假設和驗證。
通過整合這些多樣化的數據流,LLMs能夠深入洞察多面且動態的社會問題,促進包含邏輯和數字分析的復雜和混合推理。
這種方法確保代理不僅僅是執行歷史數據擬合,而是積極與不斷流動的真實世界數據互動并適應,使其分析和預測在真實場景中保持相關和適用。
但是當涉及到時間序列時,這些新模型并沒有使用預訓練的LMs的自然推理能力。
LLMs對時間序列任務真的有幫助嗎?
一項新研究顯示,如果我們用注意力層替換語言模型,性能不會有顯著變化。即使完全移除它們,性能會變得更好。這甚至可以將訓練和推理速度提高多達三個數量級。
研究者選擇了三種改造方法:刪除或替換LLM組件。這三種修改如下:
不使用LLM(圖1(b))。完全移除語言模型,將輸入令牌直接傳遞給參考方法的最后一層。
LLM2Attn(圖1(c))。用一個單獨的隨機初始化的多頭注意力層替換語言模型。
LLM2Trsf(圖1(d))。用一個單獨的隨機初始化的Transformer塊替換語言模型。
測試結果
使用的數據集主要是所有其他時間序列研究中的基準數據集:ETT、疾病、天氣、交通、電力、匯率、Covid死亡人數、出租車(30分鐘)、NN5(每日)和FRED-MD。
在所有情況下,這些改造方法都優于Time-LLM,在22個中的26個案例中優于LLaTA,在19個中的26個案例中優于OneFitsAll。這里使用的指標是MAE和MSE,分別代表平均絕對誤差和均方誤差。
可以得出的結論是,LLMs在時間序列預測任務上并沒有以有意義的方式提高性能。
現在讓我們看一下參數和時間消耗:
在時間序列任務中,LLM(如LLaMA和GPT-2)顯著增加了訓練時間。表格顯示了在ETTh1和Weather數據上,對長度為96的預測,三種方法的模型參數數量(以百萬計)和總訓練時間(以分鐘計)。與原始方法“帶LLM”的比較是“不帶LLM”,“LLM2Attn”和“LLM2Trsf”。
Time-LLM、OneFitsAll和LLaTA的平均訓練時間分別是修改后模型的28.2倍、2.3倍和1.2倍。這表明,LLMs在時間序列計算上的權衡并不值得。
那么使用語言數據集進行預訓練是否能夠改善時間序列預測的結果?
該研究采用了四種不同的組合:預訓練 + 微調、隨機初始化 + 微調、預訓練 + 不微調以及隨機初始化 + 不微調。
隨機初始化LLM參數并從頭開始訓練(無預訓練,woPre)比使用預訓練(Pre)模型取得了更好的結果?!盁o微調”(woFT)和“微調”(FT)分別指的是LLM參數是凍結的還是可訓練的。
語言知識對預測的改進非常有限。然而,“預訓練 + 不微調”和基線“隨機初始化 + 不微調”分別在少樣本(5次)和零樣本的比較中表現最好,這暗示在微調過程中語言知識并沒有幫助。
在ETTh1(預測長度為96)和Illness(預測長度為24)的輸入打亂/遮蔽實驗中,模型修改前后,輸入打亂對時間序列預測性能的影響并沒有顯著變化。
在這個實驗中,使用了三種類型的打亂方式:隨機洗牌整個序列(“sf-all”),只洗牌序列的前半部分(“sf-half”),以及交換序列的前半部和后半部(“ex-half”)。
結果表明,基于LLM的模型對輸入打亂的脆弱性并不比其改造版本更高。
總結
這項研究表明,最好還是讓傳統的時間序列預測方法繼續使用它們習慣的方式,而不是嘗試使用大型語言模型來處理時間序列任務。
但是這并不意味著不做任何事情;在時間序列和大型語言模型的交叉領域,還有一些新的、可能值得探索的有趣方向。