什么是時間序列
????時間序列是指在一段連續時間段內由時間和所對應的觀察值所組成的一段序列,比如某一年的降雨量。
什么是時間序列預測
? ? ? ? 時間序列預測是指根據某維度數據在過去時間段內的變換情況來預測未來時間段內該數據如何變化,近些年來,隨著人工智能技術的發展,時間序列預測被用于金融、商業等多個領域。
如何實現時間序列預測
? ? ? ? 時間序列預測可以分為單步(one-step)預測和多步(multi-step)預測,單步預測用來預測未來某一時間點的數據,多步時間序列預測用來預測未來時間段內多個時間點數據。以某地一周內的天氣最高溫度來說,給定前5天最高氣溫,然后預測未來時間內氣溫變換情況。one-step單步預測第六天的最高氣溫,也就是說它只預測一個點的數據,而multi-step可以預測出多天的最高氣溫,如第6天和第7天。
? ? ? ? 單時間序列預測可以轉化為機器學習中的監督學習來實現,multi-step預測可以通常采用以下四種方法:
(1)Direct Multi-step Forecast Strategy
直接多步預測策略訓練多個模型,各個模型之間相互獨立,每個模型用來預測一個單時間步。模型結構如下:
PREDICTIONS(T+1) = MODEL(OBS(T-1),OBS(T-2),...(T-N))
PREDICTIONS(T+2) = MODEL(OBS(T-1),OBS(T-2),...(T-N))
這種策略需要訓練多個獨立模型,訓練和維護成本高,沒有考慮到t+1和t+2之間的相互依賴關系。
(2)Recursive Multi-step Forest
這種策略是遞歸多步預測策略,將t+1時刻預測值作為t+2時刻的一個觀察值。模型結構如下:
PREDICTION(T+1) = MODEL(OBS(T-1), OBS(T-2), ..., OBS(T-N))
PREDICTION(T+2) = MODEL(PREDICTION(T+1),OBS(T-1), ..., OBS(T-N))
遞歸多步預測策略將t+1時刻預測輸出作為預測t+2時刻的輸入,整個過程只訓練一個one-step模型,這種策略會使得錯誤率累加而使模型精度下降。
(3)Direct-Recursive Hybrid Strategies
這種策略是對前兩種策略的融合,能夠克服前兩種策略的局限性。該策略將t+1時刻預測值作為t+2時刻的一個觀察值。模型結構如下:
PREDICTION(T+1) = MODEL1(OBS(T-1), OBS(T-2), ..., OBS(T-N))
PREDICTION(T+2) = MODEL2(PREDICTION(T+1),OBS(T-1), ..., OBS(T-N))
這種策略需要訓練多個模型
(4)Multiple Output Strategy
多輸出策略訓練一個模型來一次性輸出多個時間點預測結果。模型結構如下:
PREDICTION(T+1), PREDICTION(T+2) = MODEL(OBS(T-1), OBS(T-2), ..., OBS(T-N))
這種策略需要訓練所得到的模型訓練成本和復雜度較高。