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.
このリポジトリの概要
時系列電力負荷予測の比較分析 – 実世界の電力消費データ上で4つの現代的な時系列モデルを訓練・評価する研究指向のPythonコードベースです。
- PatchTST – パッチ化された時系列ウィンドウで動作するTransformerモデル
- Temporal Fusion Transformer (TFT) – 静的および動的共変量を扱えるTransformer
- N‑HiTS – ヒエラルキー構造を持つニューラル予測アーキテクチャ
- CatBoost – 決定木に基づく勾配ブースティングモデル(「従来の」ベースライン)
著者(MIREA – ロシア技術大学の研究者)は、短期間(翌日、時単位)の負荷予測において、これらの手法の予測精度、統計的有意性、実用性を比較するためにこのコードを使用しています。リポジトリには、データ前処理スクリプト、モデル訓練パイプライン、検証ルーチン、可視化ツールが含まれており、2026年の学術誌論文で報告された図表の生成に使用されています。
キーとなるコンポーネント(READMEに記載)
| コンポーネント | 機能 |
|---|---|
| データ処理 | 11年分の時系列データ(約97,000レコード)を読み込み、電力消費(MW·h)と環境温度を含み、基本的な統計分析を行い、学習・検証用にデータを分割します。 |
| モデル実装 | Darts ライブラリから提供されるPatchTST、TFT、N‑HiTSおよびCatBoostの4つのアルゴリズムをラップしたクラスで、共通の訓練・検証インターフェースを提供します。 |
| 訓練と検証 | 同じ学習セットで各モデルを実行し、ホールドアウト期間で評価し、誤差指標(例:MAPE)を計算します。 |
| 結果の可視化 | 消費量分布、温度分布、予測値 vs. 実測値の曲線などを生成し、論文で使用されています。 |
| 再現性 | すべてのコードはPython 3.11で記述され、深層学習モデルにはPyTorch 2.13を使用。Darts 時系列ライブラリに加え、CatBoostとpandasをデータ操作に依存しています。 |
どのような人にとって役立つでしょうか?
- 自社データ上で最先端の負荷予測モデルを評価したいエネルギー分析担当者や電力会社
- 勾配ブースティングと複数のTransformerベースアーキテクチャの間で、実証可能な比較を行いたい時系列機械学習の研究者
- 電力システムにおける応用機械学習を学ぶ学生で、実験用の即時実行パイプラインを必要とする人
はじめ方(READMEに基づく)
- リポジトリのクローン
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 - 依存関係のインストール(Python 3.11必須)
pip install -r requirements.txt # READMEにはpandas、PyTorch、Darts、CatBoostなどと記載 - パイプラインの実行 – メインスクリプト(例:
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
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト