PatchTSMixer が Hugging Face Transformers に追加 – リリースとクイックスタートガイド
TL;DR
PatchTSMixer は、IBM Research が開発した軽量な MLP‑Mixer ベースの時系列モデルで、現在 Hugging Face Transformers ライブラリで利用可能になり、最先端の精度で高速かつメモリ効率の良い予測、分類、回帰を実現します。
PatchTSMixer とは?
PatchTSMixer は多変量時系列入力を固定サイズのパッチに分割し、埋め込みを行った後、MLP‑Mixer 層のスタックでテンソルを処理し、パッチ間、パッチ内、チャネル間の相関を学習します。残差接続とゲート付き注意モジュールにより、モデルは重要な特徴に焦点を当てることができます。このアーキテクチャはマスク付き事前学習と直接予測の両方をサポートし、さまざまな注意ブロックで構成可能です。
パフォーマンスの主張
オリジナルの IBM Research 論文によると、PatchTSMixer は既存の MLP および Transformer ベースラインに対して予測精度を 8 %–60 % 向上させ、最近の Patch‑Transformer モデルを 1 %–2 % 上回ります。また、メモリ使用量と実行時間を 2 ×–3 × 削減しています。
はじめに: インストール
PatchTSMixer を使用するには、以下の 2 つの Python パッケージが必要です。
pip install git+https://github.com/IBM/tsfm.git # IBM Time Series Foundation Model repository
pip install transformers # Hugging Face Transformers
簡単な動作確認:
from transformers import PatchTSMixerConfig
from tsfm_public.toolkit.dataset import ForecastDFDataset
インポートが成功すれば、環境は準備完了です。
例 1 – Electricity データセットでの直接予測
このノートブックはフルトレーニングパイプラインを示しています:
- シード設定 –
set_seed(42)による再現性。 - データロード – CSV を pandas で読み込み、インデックス範囲に基づいて列を訓練/検証/テストに分割します。
- 前処理 –
TimeSeriesPreprocessorが各ウィンドウをスケーリング(デフォルトは "std")し、長さ 512 のスライディングコンテキストウィンドウを作成します。 - モデル設定 – ハイパーパラメータ例:
config = PatchTSMixerConfig( context_length=512, prediction_length=96, patch_length=8, patch_stride=8, num_input_channels=..., d_model=16, num_layers=8, expansion_factor=2, dropout=0.2, head_dropout=0.2, mode="common_channel", scaling="std", ) model = PatchTSMixerForPrediction(config) - トレーニング – 早期停止(patience 10)と MSE ロスを使用した Hugging Face
Trainer。サンプルのトレーニングログではロスが 0.247 から約 0.12 に減少しています。 - 評価 – テスト MSE 0.128 は Electricity ベンチマークでの最先端性能として報告されています。
- 保存 –
trainer.save_model()によりモデルチェックポイントが保存されます。
例 2 – ETTh2 への転移学習
同じ事前学習済みモデルを別のデータセットに再利用できます:
- ゼロショット – ETTh2 での直接評価で MSE 0.304 を得て、SOTA と同等です。
- 線形プロービング – バックボーンを凍結し、線形ヘッドのみを訓練することで MSE が 0.271 に低減します。
- フルファインチューニング – すべてのパラメータを解凍しても MSE はわずかに 0.273 に改善するだけで、事前学習された特徴がすでに高い効果を持つことを示しています。
3 つのステージすべてで、調整された
TrainingArguments(低い学習率、早期停止 patience 5)を使用した同じTrainerAPI を利用します。
主なポイント
- PatchTSMixer は Transformers ライブラリの第一級モデルとなり、既存の HF パイプラインへの統合が容易になります。
- MLP‑Mixer バックボーンは、従来の Transformer に比べてはるかに低い計算コストで高い予測精度を提供します。
- モデルは直接トレーニングと転移学習の両方をサポートし、新しい時系列領域でゼロショットおよびファインチューニングされた性能を実現します。
- エンドツーエンドのノートブックはデータ準備、モデル設定、トレーニング、評価、チェックポイント保存を網羅し、実務者向けのすぐに実行できるリファレンスを提供します。
リソース
- 原論文: TSMixer: Lightweight MLP‑Mixer Model for Multivariate Time Series Forecasting (IBM Research) – https://arxiv.org/pdf/2306.09364.pdf
- Hugging Face モデルドキュメント: https://huggingface.co/docs/transformers/main/en/model_doc/patchtsmixer
- フルノートブック: https://colab.research.google.com/github/huggingface/notebooks/blob/main/examples/patch_tsmixer.ipynb
Sources
- OriginalPatchTSMixer in HuggingFace