KEV0143/Comparative-analysis-of-hourly-load-forecasting-using-PatchTST-TFT-NHiTS-and-CatBoost

A comprehensive time-series benchmark evaluating state-of-the-art deep learning architectures (PatchTST, TFT, N-HiTS) against traditional gradient boosting (CatBoost) for accurate 24-hour load prediction.

本倉儲簡介

小時級電力負載預測的比較分析 – 一個研究導向的 Python 程式碼庫,使用真實世界的電力消耗資料對四種現代時間序列模型進行訓練與評估:

  • PatchTST – 在分塊時間序列視窗上運作的 Transformer 模型
  • 時序融合 Transformer (TFT) – 可處理靜態與動態共變量的 Transformer
  • N‑HiTS – 分層神經網路預測架構
  • CatBoost – 梯度提升決策樹模型(「傳統」基準)

作者(來自 MIREA – 俄羅斯科技大學的研究人員)使用此程式碼比較這些方法在短期(次日、逐小時)負載預測中的預測準確度、統計顯著性與實際適用性。該倉儲包含資料預處理腳本、模型訓練流程、驗證流程與視覺化工具,用於產生其 2026 年期刊論文所報告的圖表與表格。


關鍵組件(如 README 所述)

組件 功能
資料處理 加載一個 11 年的小時級資料集(約 97,000 筆記錄),包含電力消耗(MW·h)與環境溫度,執行基本統計分析,並將序列分割為訓練/驗證集。
模型實作 包裝四種演算法(PatchTST、TFT、N‑HiTS 來自 Darts 庫,以及 CatBoost)的封裝器,提供統一的訓練-驗證介面。
訓練與驗證 在相同訓練集上運行每個模型,於保留期間進行評估,並計算誤差指標(如 MAPE)。
結果視覺化 產生消費分布、溫度分布、預測值 vs. 實際值曲線等圖表,用於論文中。
可重現性 所有程式碼使用 Python 3.11,深度學習模型使用 PyTorch 2.13,依賴 Darts 時間序列庫,以及 CatBoost 與 pandas 進行資料操作。

哪些人可能感興趣?

  • 需要參考實作來評估自身資料上最進階負載預測模型的能源分析師與電力公司
  • 尋找梯度提升與多種 Transformer 架構之間具體、可重現比較的時間序列機器學習研究人員
  • 想要一個即用型流程進行實驗的電力系統應用機器學習學生

快速上手(基於 README)

  1. 克隆倉儲
    git clone https://github.com/KEV0143/Comparative-analysis-of-hourly-load-forecasting-using-PatchTST-TFT-NHiTS-and-CatBoost.git
    cd Comparative-analysis-of-hourly-load-forecasting-using-PatchTST-TFT-NHiTS-and-CatBoost
    
  2. 安裝相依性(需 Python 3.11)
    pip install -r requirements.txt   # README 列出 pandas、PyTorch、Darts、CatBoost 等
    
  3. 執行流程 – 主程式(如 run_experiment.py – 從典型結構推斷)將:
    • 加載提供的小時級消費與溫度 CSV 檔案
    • 執行論文中展示的統計摘要
    • 訓練四個模型中的每一個
    • 評估並繪製結果
  4. 檢查輸出 – 產生的圖表(分布圖、預測圖)儲存在 output/ 資料夾中,可與附帶的期刊論文圖表進行對比。

技術堆疊(明確提及)

  • Python 3.11
  • PyTorch 2.13 – PatchTST、TFT、N‑HiTS 的深度學習後端
  • Darts – 提供 N‑HiTS 與 TFT 實作的高階時間序列庫
  • CatBoost – 基準模型的梯度提升庫
  • pandas – 資料載入與預處理

授權

本專案採用 Apache 2.0 授權發布,允許在註明出處的前提下自由使用、修改與分發。


引用

若使用程式碼或結果,請引用相關論文:

Dzgoev A.E., Klimkin E.V., Chernyauskas V.V., Brailovsky A.V., Rezhenkov R.N.
"Прогнозирование нагрузки на каждый час суток с помощью PatchTST и Temporal Fusion Transformer: сравнительный системный анализ с традиционными методами бустинга (CatBoost) и нейросетевыми моделями на базе N‑HiTS".
Известия Кабардино‑Балкарского научного центра РАН, 2026, Vol 28, No 3, pp. 49‑70. DOI: 10.35330/1991-6639-2026-28-3-49-70

相關

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