1維卷積實現高效變量間關系建模,解決多對一時間序列預測問題
今天給大家介紹一篇針對多變量預測單變量場景的時間序列預測優化工作。本文的核心是構建了一種基于卷積的輕量級變量間關系學習模塊,提升變量間關系學習效率和緩解過擬合問題,提升多變量預測單變量的效果。
論文標題:CrossLinear: Plug-and-Play Cross-Correlation Embedding for Time Series Forecasting with Exogenous Variables
下載地址:??https://arxiv.org/pdf/2505.23116v1??
1.研究背景
時間序列預測有多種問題類型。單變量時間序列預測指的是輸入一個序列歷史值,預測這個序列的未來值;多變量時間序列預測指的是輸入多個序列的歷史值,預測這些序列的未來值。而還有一種類型的任務是多對一的,即輸入多個序列,預測其中某個序列的值。這種情況下,待預測序列叫做內部變量,其他序列稱為外部變量。
這篇文章則是針對多對一的情況提出的優化方法。多對一的預測,核心是建模內部變量和外部變量之間的關系。現有的多變量關系建模方法,例如CrossFormer等基于Transformer的多變量關系建模方法,由于其模型結構復雜,會造成計算復雜度高,過擬合等問題。
為了解決上述問題,本文提出了一種簡單的多變量關系建模方法,引入一個一維卷積學習變量間關系,取得了多對一預測場景下的效果提升。
2.建模方法
本文提出的方法模型結構比較簡單,核心包括變量關系表征提取、patch和位置表征輸入、預測head、歸一化等模塊。整體結構如下圖所示。
對于輸入的多變量序列,分別使用ReVIN進行歸一化。在關系表征提取模塊,將內部變量和多個外部變量拼接成一個N*T的矩陣,N是變量數量,T是時間步數量。在這個矩陣上使用一維卷積,在時間維度上滑動,通過這個簡單的模塊實現相同時間窗、不同變量之間的關系建模。一維卷積輸出維度為1,對應融合多變量關系后生成了一個新序列。
為了緩解過擬合問題,文中將經過多變量關系表征提取模塊生成的序列,與原始的內部變量序列進行加權求和,權重是一個可學習的參數,讓模型可以控制使用多變量關系建模模塊輸出的程度。
這個模塊過后,使用patch編碼和位置編碼對輸入進行表征。上面的加權求和生成的新序列,使用PatchTST中的patch embedding構建方法生成表征,同時使用position embedding和patch embedding進行加權求和,權重和上面類似也使用一個可學習的參數:
上述建模方法,也可以很容易擴展到多對多的多元時間序列問題中,通過將1維卷積的輸出從1調整到多個channel,即可實現針對每個內部變量的多變量關系提取序列。
3.實驗效果
下表是整體的實驗效果,可以看到本文提出的方法在多個數據集不同時間窗口的預測上都取得了效果提升。
同時,本文的模型參數量和計算復雜度低,擬合精度超過其他SOTA模型。
本文轉載自????圓圓的算法筆記????,作者:Fareise
