Time-Series

使用時間序列的每小時預測

  • December 19, 2014

我想建立一個基於時間序列的模型。我有一個數據集,三個月內每 30 分鐘記錄一次。

使用以下類型的模型對這些數據進行建模有什麼區別?

  • 提取小時/工作日/月並將它們用作機器學習算法中的特徵
  • 使用 ARMA 模型

我的數據包含天氣信息。我正在研究的場景之一是預測“自行車的使用”,它與天氣/溫度/風/時間(天/小時,我認為那個月沒有意義)等信息有關……在這種情況下,我應該使用時間序列 ARMA 模型還是只提取小時/週/日/月並將它們用作特徵來應用樹/隨機森林等算法。

任何人都可以解釋其中的區別,或者指著紙/書來檢查嗎?

**注意:**我是自學者,沒有參加任何數據科學課程。如果這很明顯,請道歉。

好吧,不同之處在於……它們是不同的方法。(“誰能解釋一下蘋果和橙子的區別?”)

  • ARIMA 模型在任何介紹時間序列的書中都有解釋。(我永遠不會厭倦推薦這本免費的開源在線預測教科書。)如果您想包含天氣信息,您需要帶有解釋性或外部信息的 ARIMA 模型,或 ARIMAX 模型。這些也是標準的。
  • 任何數據科學教科書甚至維基百科頁面都解釋了樹/CART/隨機森林。當然,這些將“按原樣”對解釋變量進行建模。在這種情況下,您使用天、小時和月作為特徵的想法確實有意義。但是,簡單地將“上午 9 點到 10 點”、“上午 10 點到 11 點”等的獨立假人輸入到您的模型中可能會或可能不會考慮到您在上午 9 點到 10 點和上午 10 點到 11 點時間段的觀察結果會更多的事實比上午 9 點到 10 點和下午 1 點到 2 點的高度相關。

一些隨機的想法:

  • ARIMA(X) 將難以應對所涉及的多個季節性因素(同比,一周內人們通勤週一至週五但不是周六/週日,白天有更多人騎自行車) . 原則上,您可以在 ML 模型中使用假人對這些季節性進行建模。或者,在指數平滑/狀態空間模型的背景下,有幾種方法可以處理多個季節性。
  • 天氣當然與一年中的時間和一天中的時間高度相關:夏季和白天比冬季和夜間更熱。如果您已經按照上面的方式對季節性進行了建模,您可能會發現添加天氣信息並不能大大改善預測,超出季節性已經做出的效果。
  • 如果您想使用天氣進行預測,請記住您也需要天氣預報!不要根據樣本外預測與實際天氣的關係來評估它們 -當您進行“生產”預測時,您不會知道明天的實際天氣。天氣預報的不確定性為您的自行車預測增加了另一個不確定性來源。尤其是超過 15 天的天氣預報不太可靠,因此它們對於預測那麼遠的自行車騎行不會很有幫助。(順便說一句,獲取歷史天氣數據比獲取歷史天氣預報更容易也更便宜
  • 您可能需要查看電價或負荷預測文獻 - 該用例處理您的許多挑戰(高頻數據、多個季節性、天氣影響)。我還沒有閱讀這篇評論,但它可能會有所幫助。

引用自:https://stats.stackexchange.com/questions/129707

comments powered by Disqus