近期研究趨勢:多變量當輔助序列提升多元時序預測效果
在多元時間序列預測中,如何建模多變量之間的關系一直是研究熱點。過去一年最火的研究方向之一就是多元時間序列應該采用channel dependent(多變量聯合建模)還是channel independent(多變量獨立建模),以及channel dependent的各種改進方法。
近期,一種新的探索多變量建模的方法正在興起。這類方法不再執著于用復雜的網絡建模變量間關系,而是更直接一些,在預測每個變量的時間序列時,將其他所有變量都當成外部特征或者輔助序列,研究的重點也就變成如何充分利用這些輔助序列提升目標序列的預測效果。
今天這篇文章就給大家帶來2篇近期清華、亞馬遜發表的相關工作。
1.清華-TimeXer
論文標題:TimeXer: Empowering Transformers for Time Series Forecasting with Exogenous Variables
下載地址:https://arxiv.org/pdf/2402.19072v1.pdf
TimeXer是清華大學近期發表了一篇工作,以Transformer為基礎,通過更細致的建模外部變量建模實現目標變量擬合效果的提升。
之前的建模中,更關心的是多變量和單變量的建模,即輸入一個變量預測該變量,或者輸入多個變量同時預測這多個變量,而對于輸入多個變量預測一個目標變量的研究較少。輸入變量中,和目標變量一致的為內源變量,其他變量為外源變量。如何利用外源變量輔助提升內源變量的預測效果,是本文的核心優化目標。而之前的Transformer、PatchTST等方法,其實都是多預測多或一對一,并不適合多對一的預測。因此本文對Transformer進行了升級,適配這種一對多的預測場景。
文中對于內院變量和外源變量兩類變量的處理采用了兩種不同的形式。首先對于內源變量,也就是待預測的變量,使用了patchTST的方式,將時間序列分成不同的片段,每個片段作為一個patch映射成embedding。另一方面,對于外部變量,則采用了類似iTransformer中的方法,將每個外部變量完整的映射成一個patch,生成對應的embedding。文中認為這種粗粒度的外部變量embedding生成方式,可以更好的將模型的重點放在刻畫外部變量對內部變量的空間影響上。
在得到兩部分embedding后,對目標變量的patch內做self-attention,和PatchTST中的區別在于,會給每個目標變量的patch表征拼接成外部變量生成的embedding,以此實現外部變量信息的引入。在cross attention階段,主要進行了目標變量表征和外部變量表征之間的cross attention,實現目標變量和外部變量之間的關系提取。
2.亞馬遜-CATS
論文標題:CATS: Enhancing Multivariate Time Series Forecasting by Constructing Auxiliary Time Series as Exogenous Variables
下載地址:https://arxiv.org/pdf/2403.01673v1.pdf
本文是亞馬遜發表的工作,核心思路是將其他變量作為輔助序列來提升目標變量的預測效果。
對于每個變量,都選擇一部分其他變量作為輔助序列,這些輔助序列通過一個ATS Constructor進行變換,得到有助于目標變量預測的變換后結果。這些輔助序列變換后的結果,會和原始單變量的預測結果相加,得到最終的預測結果。
一個簡單的例子如下圖,AB兩個序列,A是B的后移幾個step的變換結果。在AB兩個序列的多元預測中,單獨預測無法借助兩個序列之間的這種關系。如果采用本文提出的這種方法,在預測A的時候,將B看成輔助序列,經過一個identity mapping得到shift后的結果,就可以直接用這個B的映射后結果用于預測A。
模型的整體結構如下圖所示,遵循了Continuty、Sparsity、Variablity三個原則。
Continuty指的是連續性原則,通過在輔助序列的映射結果加上相鄰兩個點距離不能太遠的平滑性約束實現。
Sparsity指的是稀疏性,對于多變量時間序列,可能只有一小部分適用于作為目標序列的輔助序列,這里使用一個門控網絡,篩選少量的其他變量作為輔助序列,以免建模過于復雜導致過擬合。同時在時間維度上也應用了Sparsity,只截取部分窗口的序列用于預測。
Variablity指的是要讓輔助序列部分能提取多樣性的序列間關系信息。文中通過對ATS Constructor結構的設計實現,提出了基于卷積、不重疊卷積、獨立卷積等多種方式從不同角度提取輔助序列可用于目標序列預測的信息。
本文轉載自 ??圓圓的算法筆記??,作者: Fareise
