異常監測②——時間序列預測(lstm模型)

在用統計學方法(3σ原則、四分位距法)等對異常數據進行監測後 異常監測①——統計學方法判斷 ,由於業務特點,導致時序數據的規律趨勢會變化。下方爲舉例:

時間點 原來的count 現在的count
2020-01-01 13:00:00 267 1000
2020-01-01 13:10:00 300 0
2020-01-01 13:20:00 261 0
2020-01-01 13:30:00 289 1023
2020-01-01 13:40:00 235 0
2020-01-01 13:50:00 273 0
2020-01-01 14:00:00 309 1014

此時原統計學方法可能不再適用,可以重新觀察新的數據分佈規律,手動修改代碼邏輯。

但考慮到後續規律仍可能發生變動,爲避免後續需要繼續改異常監測邏輯,選擇使用一個深度學習模型——lstm 對時序數據的分佈進行預測。並且增添 模型更新 邏輯,使得模型不需要再人工更改。

參考以下資料:乾貨 | 攜程實時智能異常檢測平臺的算法及工程實現  (視頻鏈接

簡單粗暴LSTM:LSTM進行時間序列預測

異常檢測在蘇寧的實踐

基於TensorFlow一次簡單的RNN實現

 

確定邏輯:

1、原始數據存儲

    mongodb

2、數據預處理

(去除節假日數據,異常點替換、缺失值填充)

3、模型設計及訓練

LSTM     訓練集:近十天數據(不含近三天);預測集:近三天

多輪超參優化,確定最優超參,及預測範圍(用歷史多長數據預測未來多長)

保存模型

4、異常判斷

     ①https://www.slideshare.net/ssuserbefd12/ss-164777085    異常邊界取90%分位數,持續幾次異常產生告警(郵件、微信)

     ②論文  3σ原則

5、模型更新

     數據監控:通過均值、標準差、中位數、IQR等統計指標以天爲粒度監控數據漂移,數據漂移超過閾值

     模型監控:每天自動統計模型輸出的全部異常點佔比的概率,概率分佈變化超出閾值後模型自動提取最新數據重新訓練


準備訓練集、測試集數據:訓練集清洗、歸一化(訓練集和測試集一起歸一化,該一起歸一化還是分開歸一化參考:機器學習中,對於數據的預處理是否是測試集和訓練集一起進行?淺談歸一化對於LSTM進行時間序列預測的影響

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章