【数据挖掘】谷歌提出最新时序框架--Deep Transformer
作者:杰少
Deep Transformer Models for TSF
簡 介
Transformer技術在諸多問題,例如翻譯,文本分類,搜索推薦問題中都取得了巨大的成功,那么能否用于時間序列相關的數據呢?答案是肯定的,而且效果非常棒。本篇文章我們就基于Transformer的方法動態地學習時間序列數據的復雜模式,并且在時間序列相關的問題上取得了目前最好的效果。
方法
01
問題定義
假設時間序列有個每周的數據點:
對于一個步的預測,監督的ML模型的輸入就是
我們輸出的就是:
每個輸出點可以是一個標量或者是一個包含了大量特征的向量。
02
模型框架
1. Encoder
Encoder由輸入層、位置編碼層和四個相同編碼器層的堆棧組成。
輸入層通過一個完全連接的網絡將輸入的時間序列數據映射到一個維度為的向量。這一步對于模型采用多頭注意機制至關重要。
使用sin和cos函數的位置編碼,通過將輸入向量與位置編碼向量按元素相加,對時間序列數據中的順序信息進行編碼。
最終的向量被輸入到四個encoder層。每個encoder層由兩個子層組成:一個self-attention的子層和一個全連接的前饋子層。每個子層后面都有一個normalization層。編碼器生成一個維向量,往后傳入decoder層。
2. decoder層
此處Transformer的Decoder設計架構和最早的Transformer是類似的。Decoder包括輸入層、四個相同的解碼器層和一個輸出層。Decoder輸入從編碼器輸入的最后一個數據點開始。輸入層將解碼器輸入映射到維向量。除了每個編碼器層中的兩個子層之外,解碼器插入第三個子層以在編碼器輸出上應用自注意機制。
最后,還有一個輸出層,它將最后一個Decoder層的輸出映射到目標時間序列。
我們在解碼器中使用前look-ahead masking和在輸入和目標輸出之間的one-position的偏移,以確保時間序列數據點的預測將僅依賴于先前的數據點。
實驗
01
效果比較
Transformer架構的效果遠好于其他的效果
02
Time Delay Embedding實驗
對于一個標量的序列數據,它的delay embedding(TDE)就是將每個scalar值映射到一個唯獨的time-delay的空間,
我們發現并非是越大越好,在5-7之間是最好的。
小結
本文提出的基于Transformer的時間序列數據預測方法。與其他序列對齊的深度學習方法相比,
Transformer的方法利用self-attention對序列數據進行建模,可以從時間序列數據中學習不同長度的復雜依賴關系。
基于Transformer的方案具有非常好的可擴展性,適用于單變量和多變量時間序列數據的建模,只需對模型實現進行最小的修改。
參考文獻
https://arxiv.org/pdf/2001.08317.pdf
本站qq群851320808,加入微信群請掃碼:
總結
以上是生活随笔為你收集整理的【数据挖掘】谷歌提出最新时序框架--Deep Transformer的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jeecg 查看 页面 父子表 横向滚动
- 下一篇: 电脑系统重装后没有声音怎么办