skforecast/skforecast

Python library for time series forecasting using scikit-learn compatible models, statistical methods, and foundation models

解決的問題

Skforecast 的設計目標是透過提供各種建模策略的統一介面,簡化時間序列預測。它彌補了標準機器學習迴歸器(如 scikit-learn 中的那些)與時間序列資料特定需求(例如基於延遲的特徵工程與多步預測策略)之間的差距。

如何運作

該程式庫使用「Forecaster」物件作為容器,管理訓練與預測流程。支援多種策略:

  • 遞迴:將先前的預測值作為未來步驟的輸入。
  • 直接:同時預測多個未來步驟。
  • 多序列:處理多個獨立或相關的時間序列。

它可與任何 scikit-learn 相容的估計器整合,包括 LightGBM、XGBoost、CatBoost 和 Keras,也支援統計模型(ARIMA、ETS)與基礎模型。

適用對象

需要使用一致 API 建構、驗證與部署生產級時間序列預測模型的資料科學家與 ML 工程師,無論是使用簡單的統計方法還是複雜的深度學習模型。

特色亮點

  • scikit-learn 相容性:與任何遵循 scikit-learn API 的估計器相容。
  • 多元模型支援:支援從傳統統計模型(ARIMA/ETS)到 RNN/LSTM 與零樣本基礎模型的各類模型。
  • 完整工具集:內建特徵工程、超參數調校與回溯測試工具,實現真實性能評估。
  • 機率預測支援:支援生成預測區間。
  • AI 輔助工作流程:提供機器可讀的上下文檔案,供 LLM 產生精確程式碼,並可選使用 AI 預測助理(skforecast-ai)。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案