sktime/pytorch-forecasting

Time series forecasting with PyTorch

解決的問題

PyTorch Forecasting 簡化了先進的深度學習架構在時間序列預測中的實作。它透過提供高階 API,處理時間序列資料的資料準備、訓練與評估等繁瑣面向,彌補複雜的研究模型與實際部署之間的差距。

如何運作

基於 PyTorch Lightning 建構,此套件提供預測的結構化工作流程:

  • 資料處理:專用的 TimeSeriesDataSet 類別管理變數轉換、遺失值、隨機子取樣與多種歷史長度。
  • 模型架構:實作多種先進的神經網路(如 Temporal Fusion Transformers、N-BEATS 與 PatchTST),這些模型針對實際應用進行最佳化,並內建解釋能力。
  • 訓練與擴展:利用 PyTorch Lightning 自動在 CPU 與單一或多重 GPU 上擴展訓練,並透過 TensorBoard 集成日誌記錄。
  • 最佳化:與 Optuna 集成以進行超參數調校,並包含多時程時間序列指標以評估效能。

適用對象

此專案專為需要最大部署彈性之專業人士,以及需要合理預設值以快速上手神經網路預測之初學者設計。

主要亮點

  • 多樣化的模型庫:包含高效率模型,如 Temporal Fusion Transformers (TFT)、N-BEATS、N-HiTS、DeepAR 與 PatchTST。
  • 整合的資料流程:簡化將 pandas DataFrames 轉換為模型就緒時間序列資料集的過程。
  • 硬體無關性:透過 PyTorch Lightning 原生支援 CPU 與 GPU 訓練。
  • 可解釋性:提供內建預測解釋能力的模型。

相關

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