WWW 2021 | Radflow: 可进行数十万节点的多变量时序预测模型
?作者?|?方雨晨
學校?|?北京郵電大學
研究方向?|?時空數據挖掘
此文使用與 N-BEATS 一樣的層級循環神經網絡捕捉不同的時間趨勢。然后將循環神經網絡的輸出做空間消息傳遞。在超大的網絡時序數據集上取得 SOTA 的結果。
論文標題:
Radflow: A Recurrent, Aggregated, and Decomposable Model for Networks of Time Series
論文代碼:
https://github.com/alasdairtran/radflow
論文鏈接:
https://arxiv.org/abs/2102.07289
Preliminary
給出時序圖 ,且圖中有 個節點,所以 ,且有 條邊。每個節點 在時間 內的觀測值為:
表示節點 在 時刻被觀測到 個特征,當只有一個值時 。 表示節點 在時間? 到時間 的子序列。
如果節點 與節點 在時間 有關聯,就添加一條從 的邊 。 表示節點 在 時刻的鄰居集合,因為邊集是會隨時間邊而變化的,所以圖 是動態圖。因此 時間內的鄰接矩陣表示維 , 表示在時間 存在節點 到節點 的邊。
現在定義時序預測問題,也即給出一段長為 的歷史觀測值預測未來 時刻的值。假設未來與歷史的分割線為 ,那么關于節點 未來 到 時間的預測可以表示為:
也即使用過去 B 時刻的觀測值與其鄰居節點信息對未來做出預測。對未來鄰居節點有兩種設置,一種為 IMPUTATION,也即已經知道未來鄰居節點的值,表示為:
當我們要填補序列中的缺失值或者解釋節點受鄰居影響時通常使用這種設置。另一種為 FORECAST,也即使用我們時間序列的觀測值對所有節點的未來值做出預測,然后使用預測的鄰居節點信息對當前節點做出預測。
在兩者設置下,最后預測的輸出都可以表示為:
表示節點 在 時刻 的預測值。
Challenge
作者指出目前時序預測還存在以下三個缺陷:
Expressiveness:目前的模型過于簡單,沒有考慮到多個時序變量之間的關系,N-BEATS 雖然對時間序列進行分解但是也沒有對時序圖進行建模。
Scale:本文的目標是對含有幾十萬個節點的時序圖進行建模,不僅要考慮到時間序列內容與空間內容,更要考慮到時空內容的交互。T-GCN 模型雖然集成了 GNN 與 RNN,但是受限于其復雜度難以處理大規模數據集。
Dynamic:多個變量間的關系是隨著時間變化而變化的。動態網絡雖然已經是 GNN 的研究熱點,但是卻只被用在了鏈接預測與節點分類等任務,并沒有被用于時間序列預測中。
Contribution
此文提出了一個基于分解原則的循環神經網絡架構,并將循環神經網絡的輸出作為網絡流匯聚的輸入,模型名為 Radflow。它可以生成節點嵌入作為圖模型的輸入優于 N-BEATS,也可以通過注意力機制采樣重要節點處理大規模節點數據集,而且 Radflow 的結構可以處理動態變化的節點關系。此外,注意力與層分解策略為網絡與時間的影響提供了可解釋性。具體如下:
Radflow 是一個可以進行數十萬節點的多變量時序預測的端到端預測模型。
通過層分解與多頭注意力為時序模式和網絡鄰居提供了可解釋的預測。
在現實數據集的不同任務上的表現超過了時序模型與網絡模型。
此文公開了一個含有 366K 節點和 22M 邊的多變量時序預測數據集,名為 WIKITRAFFIC。
Method
4.1 Overview
如下圖所示,模型主要由 Recurrent 與 Flow Aggregation 兩個模塊組成。其中 Recurrent 模塊遵循層級分解機制對每個變量進行時序建模,Flow Aggregation 模塊根據節點間的消息匯聚對輸出結果進行調整。節點在 時刻的預測值可以表示為:
其中 表示 Recurrent 模塊的預測值, 表示 Flow Aggregation 的預測值。另外 Flow Aggregation 模塊以 Recurrent 模塊輸出為輸入。
4.2 Recurrent component
Recurrent 模塊由 L 個堆疊的 LSTM 組成,具體結構如上圖所示,首先對節點觀測值使用線性變換將其轉到高維空間作為第一層 LSTM 的輸入:
其中 表示可學習的參數。作者表示假設 并且 是全 向量,那么相當于是有了 個并行的 的觀測值。
對于 個堆疊的 LSTM 模塊, 表示節點 在 時刻的第 個模塊的輸入,且式 7 表示第一個模塊的輸入。每個模塊將有三個輸出值 backcast vector 、forecast vector 和 node vector :
上式中 FeedForward 層有兩個線性層夾一個 GELU 激活函數組成:
backcast vector 是當前層對于殘差時間模式的預測并且將作為下一層 LSTM 的輸入組成之一:
forecast vector 是第 個 LSTM 模塊對于下一個時間的預測值,下一個時間的 Recurrent 模塊預測值為所有當前時間所有 LSTM 的 forecast vector 之和:
其中 ,最后再使用一個線性函數將維度降低為觀測維度 作為式 6 的第一項:
4.3 Flow aggregation component
層首先將 Recurrent 層每個模塊輸出的 node vector 相加作為流匯聚層的輸入:
在 IMPUTATION 設置中, 節點在 時刻的鄰居節點集合表示為:
在 FORECAST 設置中,將使用真值得到的 替換為預測值得到的 。然后將 節點在 t 時刻的嵌入映射為 query:
然后將 t+1 時刻鄰居的嵌入映射為 key 和 value:
時刻 節點從鄰居節點得到的帶權和信息可以表示為:
注意力權重 通過 query 與 key 的點積接 softmax 得到。上式中并不包括 節點自身的信息,作者通過參數融合 時刻節點的自身信息與 時刻鄰居信息:
然后再使用一個線性映射將其轉換為觀測維度 作為式 6 的第二項:
此外作者還提出了另外兩者消息匯聚方式。第一種是將式 18 替換為下式,稱為 Radflow-GraphSage:
第二種采用更簡單的方式去掉式 19 中的線性映射簡單相加稱為 Radflow-MeanPooling。
Experiments
5.1 Datasets
此文使用了四個數據集。分別是根據靜態路網結構得到靜態圖的交通數據集 Los-LOOP 和 SZ-TAXI,以及根據每天的 Youtube 訪問順序變化的 VEVOMUSIC 數據集和根據 WIKI 頁面訪問順序變化的 WIKITRAFFIC 數據集。
其中 WIKITRAFFIC 是此文收集的新的數據集。VEVOMUSIC 數據集和 WIKITRAFFIC 數據集都是節點數量上萬的大型多變量時序預測數據集,如下圖所示。
此外此文還展示了兩個動態圖數據集的邊生存時間,可以看出 WIKITRAFFIC 的邊存在時間更長。
5.2 Results
此文首先展示了 Radflow 在不使用圖信息的情況下與單變量時序模型的比較,如下圖所示 Radflow-NoNetwork 的表現優于 sota 模型 N-BEATS。
然后此文展示了在使用靜態圖數據集上的表現,優于 sota 模型 T-GCN。Copying Previous Step 表示直接使用歷史的最后一個值作為預測值,SMAPE 很低不太懂為什么。
最后此文展示了 Radflow 在基于動態圖的大型多變量時序預測數據集上的表現。Radflow-GAT 表示 Aggregation 模塊使用 GAT 進行消息匯聚。
5.3 Ablation
作者對 Aggregation 使用的 node vector 做消融實驗分別為下圖中的 16-20。然后也進行了去除式 19 中的線性變換 no final projection 以及單頭注意力 one attention head 實驗。
5.4 Visulization
作者可視化了 Recurrent 模塊中每一層的預測結果,可以看到每一層預測了不同的時間模式。
然后作者隨機去除數據集中的節點與邊時模型的表現。可以看出缺失節點時使用圖信息的模型魯棒性更強。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
?????稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
?????投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的WWW 2021 | Radflow: 可进行数十万节点的多变量时序预测模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 招聘一周 | 腾讯、华为、微软、中科院自
- 下一篇: 丰田奕泽电子手刹线头在哪?