基于GPT+Adaptor的時間序列多任務統一大模型
今天跟大家聊一聊大模型時間序列預測的最新工作,來自阿里巴巴達摩院,提出了一種基于adaptor的通用時間序列分析框架,在長周期預測、短周期預測、zero-shot、few-shot、異常檢測、時間序列分類、時間序列填充等7項時間序列任務上都取得了顯著的效果。
論文標題:One Fits All: Universal Time Series Analysis by Pretrained LM and Specially Designed Adaptors
下載地址:https://arxiv.org/pdf/2311.14782v1.pdf
1、背景
搭建時間序列預測領域的大模型的一個難點在于,比較難獲取到像NLP、CV領域中那樣海量充足的訓練數據。為了解決這個問題,這篇文章提出以NLP或CV領域訓練好的大模型為底座,結合Adaptor技術,適配到時間序列中,解決各類時間序列問題。
Adaptor在NLP、CV等領域應用很廣泛,尤其是最近大模型應用中,adaptor經常被用來進行大模型的輕量級finetune。Adaptor是一個輕量級網絡,通過將其插入到大模型中的一些模塊中,然后fix大模型參數,只更新adaptor的參數,就可以實現輕量級的大模型finetune。
圖片
下面,給大家介紹阿里達摩院這篇工作中,是如何利用adaptor結合預訓練的NLP、CV模型搭建統一時間序列模型的。
2、整體結構
本文提出的模型基于Freeze參數的預訓練語言模型,結合4種類型的adaptor實現。整體模型結構如下圖所示。
圖片
首先,對于輸入時間序列,使用RevIN的方式進行歸一化,即減去每個時間序列的均值,除以每個時間序列的方差。然后使用PatchTST中的方式,將時間序列通過滑動窗口切分成多個patch,生成patch embedding。處理好后的時間序列,會輸入到一個NLP領域的預訓練語言模型中,整個訓練過程中,語言模型的原始參數固定不變,只更新模型中新增的4類adaptor參數。
3、Adaptor設計
本文提出了4種類型的adaptor,插入到大模型中的不同位置,以此實現讓NLP、CV領域的大模型適配時間序列的目的。這4種adaptor分別是temporal adaptor、channel adaptor、frequency adaptor、anormaly adaptor。
Temporal Adaptor:temporal adaptor是一個時間維度的MLP網絡,用來融合時間維度的信息,文中采用bottlenect的結構,先將時間維度或空間維度的高維信息映射到低維,然后再映射回高維空間,以此在提取時序關系的過程中防止過擬合的風險。
Channel Adaptor:channel adaptor的結構和temporal adaptor相似,區別在于在空間維度進行,用來提取多元序列各個變量之間的關系,也采用了bottlenect;
圖片
Frequency Adaptor:frequency adaptor在頻域進行時間序列的信息提取,這部分將時間序列映射到頻域,在頻域做MLP,然后再映射回時域,以此實現頻域這種全局信息的提取。
Anomaly Adapter:這部分主要是實現了一種新的時間序列異常檢測方法,這里利用了attention score矩陣,對于正常序列attention score矩陣呈現周期重復的特性,而異常序列則沒有,因此文中使用一個高斯核作為anomaly adaptor,用attention的輸出結果和其計算KL散度進行時間序列異常檢測。
圖片
此外,各個adaptor對不同數據的影響不同,因此文中使用了一個gate網絡,進行有選擇性的adaptor使用。
4、實驗效果
文中在7種時間序列任務上進行了效果對比,本文提出的時間序列統一大模型取得了超出各個任務業內SOTA模型的效果,例如下面是長周期預測任務,基于GPT2+Adaptor的統一模型取得了最優的效果。
圖片