時系列基盤モデルへ①:MOMENT【論文】
MOMENT: A Family of Open Time-series Foundation Models (ICML2024)
ICML2024の採択論文は以下のページから確認できます.
図や表はことわりのない限り以下の論文からの引用です.
書籍情報
Goswami, M. Szafer, K. Choudhy, A. Cai, I. Li, S. Dubrawski, A. MOMENT: A Family of Open Time-series Foundation Models. International Conference on Machine Learning, 2024.
関連リンク
はじめに
今回は時系列に対する基盤モデルのひとつであるMOMENTを確認します.
機械翻訳タスクで導入されたTransformerは時系列タスクにも導入されています. しかしながら, Transformerの性能がNLP分野ほど発揮されているとは言えないのが現状です. 例えばAre transformers effective for time series forecasting?という有名な論文では, 非常にシンプルな線形モデルでこれまでの時系列Transformerより優れた結果を残しています. それに加えてこれまでの時系列Transformerベースのモデルではself-attentionの計算量削減に重きを置いていましたが結果として追加モジュールによってかえって計算量が増大していることまで示唆されています.
それに対してHuggingFaceのブログYes, Transformers are Effective for Time Series Forecasting (+ Autoformer)では単変量という条件付きではTransformerの方がいいと反論しています. さらに, 多変量では大規模なデータセットがないことが原因と述べています. このように, 時系列タスクでは予測というサブタスクひとつとっても一概にTransformerが強いと言える状況ではありません.
ところで, 最近は基盤モデルが主流です. 基盤モデルは大規模なデータで訓練されているために基礎的な能力を獲得してるとされています. 例えば言語を記述する能力ですとか, 画像に写ったいるものを認識する能力といったものが挙げられます. LLMやStable Diffusionが代表例ですが, 時系列データに対してはそのまま適用してもイマイチな結果です. それは時系列データが言語などとは異なるドメインだから, あるいは学習していないからと考えられると思います. そこで, 時系列データに特化した基盤モデルの開発が望まれます.
基盤モデルと謳うからには大規模なデータセットで学習されます. そして, 大規模なデータセットで学習するということはTransformerのメリットを引き出せる可能性が大いにあります.
ここでは, MOMENTがどのようにして基盤モデルとなったかを扱います.
- 事前学習データ
- モデルのアーキテクチャと事前学習
- 下流タスクでのfine-tuning
事前学習データ
画像や自然言語の世界ではImageNetやThe Pileといった巨大なデータセットがあります. それらはアクセスも容易なために広く使われています. しかし, 時系列にそのようなものはありません. そこで著者らは, 公開されているデータからいろいろなものを収集してデータセットを新たに構築しました. このデータセットをThe Time-series Pileと名付けています. ここではどのようなデータを集めたかまで記述されているのでそれを確認します. データの収集場所は4つです.
Informer long-horizon forecasting datasets
Informerという論文では, long-horizon forecastingで広く使われている9つのデータを集めていました. EET (hourlyとminutelyが2つずつで4つ), Electricity, Traffic, Weather, ILI, Exchange-rateです.
Monash time series forecasting archive
58のshort-horizon forecastingのデータセットです. 100Kを超える時系列で幅広いドメインや時間分解能を持ちます.
UCR/UEA classification archive
分類タスクでよく用いられている159の時系列データで構成されています. 7つのカテゴリから成り立っていてクラス数やデータサイズが大きく異なります. 7つのカテゴリとはImage Outline, Sensor Readings, Motion Capture, Spectrographs, ECG, Electric Devices, Simulated Dataです.
TSB-UAD anomaly benchmark
過去10年に提案された18の異常検知データセットからラベル付き異常を含む1980個の単変量時系列を集めたものです. 人体, 宇宙船, 環境やWebサーバなど, 幅広いドメインを扱っていますが合成データも含まれています.
さて, これらを集めたのはいいですが, 機械学習ではtrain/val/testにデータを分けるのが一般的です. どのように分ければいいでしょうか. これはタスクによって分け方を変えるしかありません.
タスクによって分け方を変えるとは言っても2つの分け方しか使いません. これはタスクによっては時系列が短い可能性が多分にあるためです. 図を見れば一目瞭然なので特に追記することはありませんが, この論文では常にrandom seedを13にしてリークを防いでいます.
アーキテクチャ
データを集めたので訓練させたいですが, どういったアーキテクチャや訓練方式を採用するかがまだ決まっていないのでその部分を確認します.
詳しいことは後述するのですが, Masked Time series Modelingを訓練方式とします. そのため, モデルは単変量時系列
時系列データはその系列長が様々ですが, MOMENTの入力では
NLPでのTransformerの設計に従うことでNLPでの実装の成果 (例えばgradient checkpointingやmixed precision training)を流用できます.
通常はEncoderと同じサイズのDecoderを用いますが, MOMENTではその代わりに軽量なPrediction Headを用います. これを用いることでEncoderのパラメータはそのまま, Headだけ交換すれば下流タスクに適用可能です.
Pre-training using Masked Time series Modeling
事前学習ではMasked Time-series Modelingを用います. 訓練中は, まずごく一部のパッチをランダムにマスクし [MASK]
埋め込みに置き換えます. この埋め込みは学習可能なものです. すると壊された時系列パッチができあがります. それをTransformerのencoderに入力し, パッチの表現を学習します. ほとんどMaksed Language Modelingと同じです. 目的関数はマスクされたパッチ全体のMSEです.
実験では3つの異なるサイズのMOMENTを学習します. おおよそT5-Small, Base, Largeに相当するサイズで設定は以下の表に従います.
Small | Base | Large | |
---|---|---|---|
Layers | 6 | 12 | 24 |
512 | 768 | 1024 | |
Heads | 8 | 12 | 26 |
FFN size | 2048 | 3072 | 4096 |
#params (M) | 40 | 125 | 385 |
事前学習前に重みをランダムに初期化します. 全ての設定で
モデルはAdamで最適化します. ハイパーパラメータは
何も紹介しないと新規手法のように聞こえてしまいますが, Masked Time series Modeling自体も例えば以下のような論文で採用されています.
下流タスクでのfine-tuning
5つの時系列タスクを考えます.
- long horizon forecasting
- short horizon forecasting
- classification
- anomaly detection
- imputation
予測タスクではreconstruction headを置き換えます. それ以外では保持します.
実験設定
基本的にはTimesNetでのベンチマークを拡張したものを用います.
上の表に示されるように, 実用的価値の高い5つの主要な時系列モデリングタスクから構成されています. 計算資源の都合でDNNを更新することができない状況や, データが不十分な場合のみを考慮します. 従って, MOMENTでは可能な限りzero-shotでの評価をし, そうでない場合は数エポックのみの学習とします.
分類タスクでは, 教師なし表現学習を考えます. 先行研究に従って時系列の表現の質はSVMを用いて測定します.
評価指標はlong horizon forecastingではMSEやMAE, short horizon forecastingではsMAPEなどのタスク固有の指標を複数用います. TimesNetやGPT4TSでは時系列の逐次性を無視したvanilla F1で評価していますが, ここではadjusted best F1 scoreやVUS-ROCを用いて異常検知の性能を確認します.
ベースラインはdeepなものからdeepでないものまで含みます. 最近の研究では直近のTransformerベースの手法のみと比較されているのでその中で性能がいいと主張しているだけだと著者らは主張したいのだと思います.
ハイパーパラメータチューニングは行いません. 特に言及がなければ, batch sizeは64でMOMENT-Largeをfine-tuningし,
実験では以下の3つの疑問に対する答えを探求します.
- MOMENTの有効性: 通常の論文同様性能が出るかどうかを確認します.
- 解釈可能性: MOMENTが振幅や頻度といった直感的な特性を捉えることができているかを確認します.
- 特性: LLMのような特性があるかを確認します (例. スケーリングなど).
実験結果
1. 有効性
まずは, long horizon forecastingについて結果を見てみます.
最良スコアがboldになっていないので見難いですが, 全体的に最高性能に近い結果 (PatchTSTに次ぐ性能)であることがわかります. LLMベースのモデルであるTimeLLMやGPT4TSより性能いいです. 特筆すべき点としてN-BEATSが近年の主要な手法より高性能です. これは, 表データ生成でGANベースのモデルよりSMOTEの方が高性能なことに似ています.
続いて, short horizon forecastingの結果をみます. 評価指標はsMAPEです.
boldはARIMAを上回る結果になっています. 基盤モデルということで, 個々のデータに即したモデルよりは若干劣る点があります. こちらの場合でもThetaやETSなど, deepなモデルより性能が良い場合があります.
続いて, 分類タスクの結果を見ます.
ここではMOMENTをfine-tuningしていませんが, 5番目のスコアであることがわかります.
異常検知の結果を確認します.
最後に, imputationの結果を見ます.
fine-tuningするとETTでは最高性能が出ています. zero-shotでも統計的手法より高性能です.
これまでの結果からわかるように, zero-shotではある程度の性能が出ていて, fine-tuningを行うことで最高性能になるという結果で, 十分基盤モデルとしての可能性はあるのではと思います.
2. 解釈可能性
MOMENTはどのような特性を捉えているのでしょうか. 以下のように正弦波に色々手を加えたデータを用意します.
このデータに対して, PCAで可視化してみます.
ここから, 時系列のトレンドや振幅, 周波数, 位相といった特性は捉えられていることがわかります. しかし, 垂直方向のシフトは捉えられないことがわかります. これは, MOMENTに入力する前に各信号を正規化するためと考察されています.
また, 表現学習をしていますのでzero-shotの設定で埋め込み表現を可視化します.
これを見ると, 訓練中はlabelにアクセスできないにも関わらず, 異なるクラスを明確に学習していることがわかります.
3. 特性
モデルサイズを大きくすることで, training lossが減少することが確認できます. 特にモデルサイズによる下流タスクのzero-shot性能の比較やVal lossのグラフは見当たらないので汎化性能が上がっているとは言えないと思いますが, 性能はおそらく良くなるのではないかと思います.
他にも, Pretrainedなlanguage (vision) transformerがfine-tuningすることで他のモダリティのシーケンスに適用できることが知られています. これに倣ってMOMENTがimage, text, binaryの系列分類を行うことができるかを確認します. self-attentionとFFNを固定することで, GPT-2やFlan-T5と同等の性能を得られています. 述べられていませんが, おそらくsMNIST, sCIFARなのではと思います (pMNISTの場合も考えられるのでちゃんと述べるべきだと思います). S4の実験結果でもTransformerベースのモデルはsMNISTが98.9, sCIFARが62.2というスコアだったので妥当な結果だと思います.
また, どのように重みを初期化するかという点も考えるポイントとなります. 実験では, 十分なデータがあるという条件のもとではfrom scratchで事前学習を行った方が性能が良いことがわかりました.
まとめ
- 時系列基盤モデルとなりうるMOMENTの提案
- 時系列基盤モデル開発を促すためのデータセットであるThe Time-series Pileの提案と公開
- LLMで見られるような諸特性が観察された
- deepでない手法もdeepな手法と競争力のある場合がある
思ったこと
- 図表のリンクが適切でなかったり (p29のE.6.), そもそも参照されていない表があったり (Tabs 4, 9), Appendix B, F, Gの本文が全くないなど (例えばAppendix BはTable 9のみの内容だとはわかりますが, この表で何が言いたいかは本文にも書くべきだと思います.)など, 気になるところがいくつもあります (他にもありますが, 文章が長くなるのでこれくらいにします).
- 時系列の基盤モデルを作るという試みは最近成果が出始めているところであり, 非常に挑戦的な内容でいいと思います. 昨今はデータ非公開であることが多いので, 収集した場合であってもデータセットを公開している部分は好印象です.
- かなりやっていることは既出のものなので, 特に新規性という点では薄いのかなと思います. パッチ化やmasked modelingはrelated worksなどで触れられているように先行研究がありますし, Transformerの構造自体もごく普通のものです. データを集めて実験したという点が評価されているのでしょうか.
参考文献
- One fits all: Power general time series analysis by pretrained LM. In Thirty-seventh Conference on Neural Information Processing Systems, 2023. URL https://openreview.net/forum?id=gMS6FVZvmF.
- Nie, Y., Nguyen, N. H., Sinthong, P., and Kalagnanam, J. A time series is worth 64 words: Long-term forecasting with transformers. In The Eleventh International Conference on Learning Representations, 2023. URL https://openreview.net/forum?id=Jbdc0vTOcol.
- Kim, T., Kim, J., Tae, Y., Park, C., Choi, J.-H., and Choo, J. Reversible instance normalization for accurate time-series forecasting against distribution shift. In International Conference on Learning Representations, 2022. URL https://openreview.net/forum?id=cGDAkQo1C0p.
- Wu, H., Hu, T., Liu, Y., Zhou, H., Wang, J., and Long, M. Timesnet: Temporal 2d-variation modeling for general time series analysis. In The Eleventh International Conference on Learning Representations, 2023. URL https://openreview.net/forum?id=ju_Uqw384Oq.
- Goswami, M. Szafer, K. Choudhy, A. Cai, I. Li, S. Dubrawski, A. MOMENT: A Family of Open Time-series Foundation Models. International Conference on Machine Learning, 2024.
- Gu, A. Goel, K. Re, C. Efficiently Modeling Long Sequences with Structured State Spaces. In International Conference on Learning Representations, 2022. URL https://openreview.net/forum?id=uYLFoz1vlAC.
Discussion