聊聊基于 Informer+BiGRU-GlobalAttention的并行預測模型
1 創新模型效果:
1.1 模型評估:
1.2 風電功率預測可視化:
1.3 電力負荷預測可視化:
2 模型創新點介紹
2.1 結合Informer和BiGRU-GATT的優勢
- Informer:擅長處理長時間序列,能夠并行計算,提高了計算效率和預測性能。Informer在Transformer的基礎上進行了改進,使其更適合時序數據,特別是具有長時間依賴的序列數據。
- BiGRU-GlobalAttention:通過雙向門控循環單元(BiGRU)同時從前向和后向對序列進行建模,以更好地捕獲序列中的依賴關系,同時應用全局注意力機制GlobalAttention,對BiGRU的輸出進行加權處理,使模型能夠聚焦于序列中最重要的部分,提高預測性能。
?
通過將這兩種模型并行使用,可以更好地捕捉不同時間尺度上的模式,提高預測的準確性和魯棒性。
2.2 并行模型架構
并行使用Informer和BiGRU-GATT,通過兩個分支并行學習,可以使模型在不同的時間尺度上進行信息提取和處理:
(1)Informer部分:
- 主要用于捕捉全局時序模式,適合處理長時間序列數據。
- 通過稀疏自注意力機制提高對遠程時序依賴的捕捉能力。
- 對輸入數據進行全局特征提取。
(2)BiGRU-GATT部分:
多特征序列數據同時通過基于GlobalAttention優化的BiGRU網絡,GlobalAttention是一種用于加強模型對輸入序列不同部分的關注程度的機制。在 BiGRU 模型中,全局注意力機制可以幫助模型更好地聚焦于輸入序列中最相關的部分,從而提高模型的性能和泛化能力。在每個時間步,全局注意力機制計算一個權重向量,表示模型對輸入序列各個部分的關注程度,然后將這些權重應用于 BiGRU 輸出的特征表示,通過對所有位置的特征進行加權,使模型能夠更有針對性地關注重要的時域特征, 提高了模型對多特征序列時域特征的感知能力。
這種架構能夠更全面地捕捉時序數據的特征,提升模型的預測性能。
2.3 模型融合
將Informer和BiGRU-GATT的輸出拼接在一起,通過一個全連接層融合不同模型的特征。這種融合方式使得模型能夠同時利用Informer的全局信息提取能力和BiGRU-GATT的局部時序關系建模能力。
2.4 高效計算
Informer的使用大大提高了長時間序列的計算效率,同時BiGRU-GATT的使用確保了局部時序信息的充分利用。這種組合在保證高效計算的同時,提升了預測的精度和可靠性。
3 Informer 詳解,三大創新點
3.1 概率稀疏注意力機制(ProbSparse Self-attention)
概率稀疏自注意力是Informer模型中引入的一種稀疏自注意力機制。其核心思想是通過概率方法選擇最重要的一部分注意力權重進行計算,而忽略那些對結果影響較小的權重。這種方法能夠顯著降低計算復雜度,同時保持較高的模型性能。
- 稀疏自注意力:不同于標準 Transformer 的密集自注意力機制,Informer 引入了 ProbSparse Self-attention,通過概率抽樣機制選擇重要的 Q-K 對進行計算,減少了計算復雜度。
- 效率提升:稀疏注意力機制顯著降低了計算復雜度,從 O(L2?d) 降低到 O(L?log(L)?d),其中 L 是序列長度,d 是每個時間步的特征維度。
3.2 多尺度特征提取-信息蒸餾
Informer的架構圖并沒有像Transformer一樣在Encoder的左邊標注來表示N個Encoder的堆疊,而是一大一小兩個梯形。橫向看完單個Encoder(也就是架構圖中左邊的大梯形,是整個輸入序列的主堆棧)。
Encoder的作用是Self-attention Distilling,由于ProbSparse自相關機制有很多都是用V的mean填充的,所以天然就存在冗余的attention sorce ,因此在相鄰的Attention Block之間應用卷積與池化來對特征進行下采樣,所以作者在設計Encoder時,采用蒸餾的操作不斷抽取重點特征,從而得到值得重點關注的特征圖。
- 多尺度時間序列特征提取:Informer 通過多尺度的方式對不同時間粒度的特征進行建模,可以更好地捕捉時間序列中的多尺度依賴關系。
- 信息蒸餾:引入了信息蒸餾機制,通過層次化的時間卷積池化層逐步縮減時間步長,提取不同尺度的特征,實現長時間依賴的高效建模。
- 卷積降維:在編碼器中使用1D卷積池化層進行降維,步長為2,使得序列長度減半,進一步減少計算復雜度。
- 信息壓縮:通過卷積池化層進行信息壓縮,將長序列信息濃縮到較短的時間步長中,從而更高效地進行時序建模。
3.3 時間編碼
Informer在原始向量上不止增加了Transformer架構必備的PositionEmbedding(位置編碼)還增加了與時間相關的各種編碼:
- 日周期編碼:表示一天中的時間點。
- 周周期編碼:表示一周中的時間點。
- 月周期編碼:表示一個月中的時間點。
在 LSTF 問題中,捕獲遠程獨立性的能力需要全局信息,例如分層時間戳(周、月和年)和不可知時間戳(假期、事件)。
具體在這里增加什么樣的GlobalTimeStamp還需要根據實際問題來確認,如果計算高鐵動車車站的人流量,顯然“假期”的時間差就是十分重要的。如果計算公交地鐵等通勤交通工具的人流量,顯然“星期”可以更多的揭示是否為工作日。
4 風電功率等數據集介紹
4.1 導入數據
風電功率數據集一共35040個樣本,15個特征,取前6000條數據進行可視化
4.2 數據集制作與預處理
詳細介紹見提供的文檔!
5 基于Informer-BiGRU-GATT的并行預測模型
5.1 定義Informer-BiGRU-GATT并行預測網絡模型
5.2 設置參數,訓練模型
50個epoch,MSE 為0.01284,Informer-BiGRU-GATT并行預測效果顯著,模型能夠充分利用Informer的長時間依賴建模能力和BiGRU-GATT的短期依賴捕捉能力征,收斂速度快,性能優越,預測精度高,適當調整模型參數,還可以進一步提高模型預測表現。
6 結果可視化和模型評估
6.1 預測結果可視化
6.2 模型評估
由預測結果可見,在Informer-BiGRU-GATT并行預測模型下擬合效果良好,通過這種設計,可以充分利用Informer和BiGRU-GATT的優勢,實現高效且準確的時序預測,組合預測效果顯著!
