🚀 MOMENT-base
MOMENTは、汎用的な時系列分析のための基礎モデルのファミリーです。このファミリーのモデルは、(1)様々な時系列分析タスク(例えば、予測、分類、異常検出、欠損値補完など)の構成要素として機能し、(2)そのまま有効であり、つまり、タスク固有の例示がない(またはほとんどない)状態でも機能し(例えば、ゼロショット予測、フューショット分類などを可能にし)、(3)分布内のデータとタスク固有のデータを使用して調整可能であり、パフォーマンスを向上させることができます。
MOMENTモデル、学習データ、および実験結果の詳細については、論文 MOMENT: A Family of Open Time-series Foundation Models を参照してください。
MOMENT-1には3つのサイズがあります:Small、Base、および Large。
🚀 クイックスタート
推奨Pythonバージョン
Python 3.11(近日中に追加のバージョンのサポートが予定されています)。
インストール方法
momentfm
パッケージをpipを使ってインストールできます。
pip install momentfm
または、GitHubリポジトリから最新バージョンを直接インストールするには、以下のコマンドを実行します。
pip install git+https://github.com/moment-timeseries-foundation-model/moment.git
モデルの読み込み
タスクの1つに対して事前学習済みモデルを読み込むには、以下のコードスニペットのいずれかを使用します。
予測
from momentfm import MOMENTPipeline
model = MOMENTPipeline.from_pretrained(
"AutonLab/MOMENT-1-base",
model_kwargs={
'task_name': 'forecasting',
'forecast_horizon': 96
},
)
model.init()
分類
from momentfm import MOMENTPipeline
model = MOMENTPipeline.from_pretrained(
"AutonLab/MOMENT-1-base",
model_kwargs={
'task_name': 'classification',
'n_channels': 1,
'num_class': 2
},
)
model.init()
異常検出、欠損値補完、および事前学習
from momentfm import MOMENTPipeline
model = MOMENTPipeline.from_pretrained(
"AutonLab/MOMENT-1-base",
model_kwargs={"task_name": "reconstruction"},
)
mode.init()
表現学習
from momentfm import MOMENTPipeline
model = MOMENTPipeline.from_pretrained(
"AutonLab/MOMENT-1-base",
model_kwargs={'task_name': 'embedding'},
)
チュートリアル
MOMENTを様々なタスクで使用するためのチュートリアルと再現可能な実験のリストは以下の通りです。
✨ 主な機能
- 汎用的な時系列分析タスクに対応
- ゼロショットおよびフューショット学習が可能
- モデルの調整によるパフォーマンス向上
📦 インストール
momentfm
パッケージをpipを使ってインストールできます。
pip install momentfm
または、GitHubリポジトリから最新バージョンを直接インストールするには、以下のコマンドを実行します。
pip install git+https://github.com/moment-timeseries-foundation-model/moment.git
💻 使用例
基本的な使用法
from momentfm import MOMENTPipeline
model = MOMENTPipeline.from_pretrained(
"AutonLab/MOMENT-1-base",
model_kwargs={
'task_name': 'forecasting',
'forecast_horizon': 96
},
)
model.init()
高度な使用法
from momentfm import MOMENTPipeline
model = MOMENTPipeline.from_pretrained(
"AutonLab/MOMENT-1-base",
model_kwargs={
'task_name': 'classification',
'n_channels': 1,
'num_class': 2
},
)
model.init()
📚 ドキュメント
モデルの詳細
モデルの説明
モデルのソース
- リポジトリ:https://github.com/moment-timeseries-foundation-model/ (事前学習と研究コードは近日公開予定!)
- 論文:https://arxiv.org/abs/2402.03885
- デモ:https://github.com/moment-timeseries-foundation-model/moment/tree/main/tutorials
環境への影響
数日間にわたって複数のモデルを学習させるため、大量のエネルギーが使用され、大きな炭素フットプリントが発生します。しかし、モデルを公開することで、将来の時系列モデリングの取り組みがより迅速かつ効率的になり、炭素排出量が減少することを期待しています。
MOMENTモデルの学習に消費される総電力を計算するために、Total Graphics Power (TGP) を使用していますが、GPUによって消費される総電力は、モデルの学習中のGPU利用率に応じて多少変動する可能性があります。私たちの計算では、コンピュートの他のソースからの電力需要は考慮されていません。ピッツバーグ で消費されるエネルギーの1メガワット時あたりのCO2排出量の標準値として、336.566 Kg C02/MWHを使用しています。
- ハードウェアタイプ:NVIDIA RTX A6000 GPU
- GPU時間:89時間
- コンピュートリージョン:米国ピッツバーグ
- 炭素排出量 (tCO2eq):
ハードウェア
すべてのモデルは、128個のAMD EPYC 7502 CPU、503 GBのRAM、およびそれぞれ49 GiB RAMを持つ8個のNVIDIA RTX A6000 GPUから構成されるコンピューティングクラスターで学習および評価されました。すべてのMOMENTバリアントは、単一のA6000 GPUで学習されました(データまたはモデルの並列化は行われません)。
📄 ライセンス
このプロジェクトはMITライセンスの下で公開されています。
🔖 引用
もしあなたがMOMENTを使用する場合は、以下の論文を引用してください。
@inproceedings{goswami2024moment,
title={MOMENT: A Family of Open Time-series Foundation Models},
author={Mononito Goswami and Konrad Szafer and Arjun Choudhry and Yifu Cai and Shuo Li and Artur Dubrawski},
booktitle={International Conference on Machine Learning},
year={2024}
}
APA形式:
Goswami, M., Szafer, K., Choudhry, A., Cai, Y., Li, S., & Dubrawski, A. (2024).
MOMENT: A Family of Open Time-series Foundation Models. In International Conference on Machine Learning. PMLR.