時系列予測の現場には、長く1つの不文律があった。

時系列予測の基盤モデルは、これとは対照的に、追加の訓練なしで、未知の時系列データに対してそのまま妥当な予測を返せる。
原文:“A foundation model for time-series forecasting, in contrast, can provide decent out-of-the-box forecasts on unseen time-series data with no additional training.”(Google Research Blog, 2024-02-02

データセットが変われば、モデルを訓練し直す。

小売の需要を予測するモデルと、電力需要を予測するモデルと、サーバ負荷を予測するモデルは、別々に作る。

この前提を崩しにきたのが TimesFM(Time Series Foundation Model) だ。

Google Researchが公開したこの学習済みモデルは、大量の時系列で事前学習した1つの重みのまま、見たことのない系列を予測する。

リポジトリは2026年6月時点で ★21.5k、forkは2.1k、ライセンスは Apache-2.0 で、PyTorchとFlax/JAXの両方で動く。

この記事は、TimesFMが「何をする設計で、いつ効いて、いつ効かないのか」を、公式README・論文・公開ベンチマークの範囲だけで読み解く。

数値は「公称」「論文の報告」「第三者の検証」を区別して書き、確認できなかったものは確認できないと明記する。

30秒で理解するTimesFM

正体:Google Researchの時系列予測「基盤モデル」。データセット別に訓練せず、学習済み1モデルでゼロショット予測する
アーキテクチャ:decoder-only(デコーダのみ)のアテンション。入力をパッチに区切って自己回帰的に予測する
事前学習:公称100億時点の時系列。Google TrendsやWikipediaのページビューを含む
現行モデル:TimesFM 2.5(200Mパラメータ、最大16kコンテキスト、30Mの分位ヘッドで最大1kホライズン)
向く領域:小売需要・エネルギー需要・運用メトリクス・在庫・予知保全
向かない領域:投資/FX/仮想通貨の価格予測、多変量で系列同士が強く相互作用する予測

TimesFMとは何か——Google Researchの時系列基盤モデル

TimesFMは、時系列予測のための学習済み基盤モデルである。

論文「A decoder-only foundation model for time-series forecasting」(arXiv:2310.10688、ICML 2024)として発表され、著者はAbhimanyu Das、Weihao Kong、Rajat Sen、Yichen Zhouの4名だ。

基盤モデルという言葉は、自然言語処理の大規模言語モデルから借りた発想を指す。

大量データで一度だけ事前学習し、その後は個別タスクごとに訓練し直さず、学習済みの重みのまま使う。

TimesFMはこの発想を時系列に持ち込んだ。

公開の系譜は次のとおりだ。

v1.0:初代。論文と同時期に公開された200Mパラメータ版。現在はレガシー扱いで pip install timesfm==1.3.0 経由で利用できる
v2.0:500Mパラメータ、コンテキスト長2,048。現在はアーカイブ扱い
v2.5:現行。2025年9月15日公開。200Mパラメータ、最大16kコンテキスト

配布形態は1つではない。

Hugging Faceでモデルカードが公開され、google/timesfm-2.5-200m-pytorch から重みを取得する。

企業向けにはBigQuery MLからSQLで呼び出す経路、Google Sheets上で予測する経路、Vertex Model Gardenのコンテナ化エンドポイントが用意されている。

最新のリリースタグはREADME記載で2.0.1(2026年6月11日)であり、PyPI上のパッケージとモデルの世代(2.5)は別管理で進んでいる点に注意したい。

なぜ時系列に基盤モデルが必要なのか

予測モデルを使うデータサイエンティストの作業を思い浮かべてほしい。

新しい系列が来るたびに、特徴量を設計し、モデルを選び、ハイパーパラメータを調整し、訓練し、評価する。

系列が100本あれば、この手順を100回繰り返すか、まとめて扱う仕組みを別途組む。

TimesFMが狙うのは、この初手のコストを削ることだ。

Google Researchはブログでこう書いている。

TimesFMは、ARIMAやETSといった多くの統計手法を上回り、対象の時系列で明示的に訓練された強力な深層学習モデルに匹敵、あるいは上回ることもある。
原文:“TimesFM performs better than most statistical methods like ARIMA, ETS and can match or outperform powerful DL models … that have been explicitly trained on the target time-series.”(Google Research Blog

ここで読み違えやすいのは、TimesFMが既存手法を置き換える主張ではない点だ。

主張は「訓練なしのゼロショットで、訓練済みモデルに近い精度が出る」ことにある。

専用モデルを丁寧に作れば、その個別データセットでTimesFMを上回る余地は残る。

時系列予測のアプローチがどう変わってきたかを、系譜で見ておく。

graph LR A[統計手法
ARIMA / ETS
系列ごとに当てはめ] --> B[深層学習
PatchTST / N-BEATS
データセットごとに訓練] B --> C[基盤モデル
事前学習1モデルで
ゼロショット予測] C --> D[TimesFM
decoder-only
100億時点で事前学習] style D fill:#1a73e8,color:#fff style C fill:#e8f0fe

統計手法は系列ごとに当てはめる。

深層学習はデータセットごとに訓練する。

基盤モデルは、事前学習した1モデルを未知の系列にそのまま当てる。

TimesFMはこの3段目に立つ。

アーキテクチャ概要——decoder-onlyとパッチ化

論文のアブストラクトは、設計を1文で要約している。

われわれのモデルは、大規模な時系列コーパス上でパッチ化デコーダ型のアテンションモデルを事前学習したものであり、異なる予測履歴長・予測長・時間粒度をまたいで良好に機能する。
原文:“Our model is based on pretraining a patched-decoder style attention model on a large time-series corpus, and can work well across different forecasting history lengths, prediction lengths and temporal granularities.”(arXiv:2310.10688

この一文に、設計の要点が詰まっている。

ひとつは decoder-only(デコーダのみ)であること。

GPT系の言語モデルと同じく、過去の文脈から次を自己回帰的に生成する。

もうひとつは パッチ化(patching) だ。

1ステップずつをトークンにするのではなく、連続する複数ステップをまとめて1つのパッチにする。

パッチ単位で扱うと、長い系列でも入力トークン数が抑えられ、計算が現実的になる。

論文の設計では、出力側のパッチを入力側のパッチより長く取る。

これにより、1回のデコードでまとめて先を予測でき、長いホライズンを少ない自己回帰ステップで埋められる(入力・出力パッチの具体的な長さは版や設定に依存するため、本記事では数値を断定しない)。

処理の流れを図にすると次のようになる。

graph TD A[入力時系列
過去の観測値] --> B[パッチ分割
連続ステップをまとめる] B --> C[残差ブロックで
パッチを埋め込み] C --> D[decoder-only
Transformer] D --> E[出力パッチを生成
先のステップをまとめて予測] E --> F{分位ヘッド?} F -->|あり| G[点予測 + 連続分位
不確実性つき] F -->|なし| H[点予測のみ] style D fill:#1a73e8,color:#fff

TimesFM 2.5では、入力に 周波数インジケータ(日次・週次などの粒度ラベル)を渡す必要がなくなった。

これは2.0までの仕様で、利用者が系列の粒度を指定していた箇所だ。

2.5ではこの入力が不要になり、扱いが単純になった。

学習データとスケーリング——公称100億時点

事前学習に何を食わせたかは、ゼロショット性能の素性を決める。

Google Researchはブログで、コーパス規模を次のように述べている。

TimesFMは学習のために大量の正当な時系列データを必要とする。事前学習には 100億時点(100 billion time-points) 規模のコーパスを用い、その中には Google TrendsWikipediaのページビュー が含まれる。(Google Research Blogの記述を要約)

検索トレンドとページビューは、季節性・トレンド・スパイクといった現実の時系列パターンを幅広く含む。

論文側は、実世界のデータに加えて合成データも事前学習に使ったと記している。

パラメータ規模の推移は、基盤モデルの常識とは逆を行く点が目を引く。

言語モデルは世代ごとに大きくなる傾向が続いてきた。

TimesFMは2.0の500Mから2.5で200Mへ「小さく」なった。

それでいてコンテキスト長は2,048から最大16kへ伸び、公開時点のベンチマーク順位はむしろ上がったと告知された。

小さく長く、を両立させた世代交代である。

ベンチマーク——GIFT-Evalでの位置

時系列基盤モデルの横並び評価には、近年 GIFT-Eval がよく使われる。

複数ドメイン・複数粒度のデータセットをまとめ、ゼロショット予測の精度を測るベンチマークだ。

Google ResearchはTimesFM 2.5の公開時に、Xでこう告知した。

告知の要点は、ゼロショット基盤モデルの中で、点予測の指標(MASE)と確率予測の指標(CRPS)の双方で首位だ、というものだ。

ここで注意したいのは、ベンチマーク順位は固定ではない点である。

第三者の整理によれば、TimesFM 2.5は2025年9月の公開時に首位を取ったが、その後 Amazon Chronos-2Salesforce Moirai 2.0 がGIFT-Eval上でTimesFM 2.5を抜いたと報告されている。

順位は新モデルの登場で入れ替わる前提で読むのが安全だ。

公称・報告される到達点を表に整理する(MASE・CRPSの具体値は版・測定条件で変わるため、本表では順位の文脈にとどめる)。

項目公称・報告内容典拠の区別
ゼロショット精度統計手法(ARIMA/ETS)を上回り、訓練済み深層モデルに匹敵〜上回る場合あり公式ブログの主張
GIFT-Eval(公開時)ゼロショット基盤モデル部門でMASE・CRPSとも首位Google Research公称(2025-09)
GIFT-Eval(その後)Chronos-2 / Moirai 2.0 に首位を明け渡したと報告第三者の整理
多変量予測系列が相互作用する設定は弱点と報告第三者の検証

競合モデルとの対比——Chronos / Moirai / Lag-Llama / Time-MoE

時系列基盤モデルはTimesFMだけではない。

主要な対抗馬と並べると、TimesFMの立ち位置が見えやすい。

ここでは確認できた範囲の特徴に絞って整理し、不確かな数値は載せない。

モデル開発元アプローチの特徴多変量への強さライセンス系統
TimesFM 2.5Google Researchdecoder-only。小さめ(200M)で長コンテキスト(16k)。分位ヘッドで不確実性弱点とされるApache-2.0
Chronos / Chronos-2Amazon時系列を離散トークン化し言語モデル流に予測。Chronos-2で多変量・共変量を強化強いと報告オープン系
Moirai / Moirai 2.0Salesforceマスク付きエンコーダ型。複数粒度・多変量を1モデルで強いと報告オープン系
Lag-Llamaコミュニティ/研究ラグ特徴を使う確率的予測。decoder-only系限定的オープン系
Time-MoE研究Mixture-of-Expertsで疎にスケール限定的オープン系

読み取れる対比は2つある。

ひとつは、TimesFMが「単変量のゼロショット」を得意とし、長いコンテキストを少ないパラメータで扱う設計に振っている点だ。

もうひとつは、複数のセンサーや系列が絡み合う 多変量 の設定では、Chronos-2やMoiraiが有利と報告される点である。

センサーが相互作用する産業データを扱うなら、TimesFM単独では物足りない場面がある。

実用ユースケース——どこで効くか

TimesFMが効くのは、過去の規則性が将来にも続きやすい領域だ。

代表的な適用先を、適合度の観点で整理する。

graph TD subgraph 向く["向く領域(規則性が続く)"] A1[小売の需要予測] A2[エネルギー需要] A3[運用メトリクス
負荷・トラフィック] A4[在庫管理] A5[製造の予知保全] end subgraph 向かない["向かない領域(高エントロピー)"] B1[投資・FX・仮想通貨
価格予測] B2[イベント駆動の急変
Web/CloudOpsの一部] B3[多変量で系列が
強く相互作用] end style 向く fill:#e6f4ea style 向かない fill:#fce8e6

ユースケース別に、なぜ向く・向かないのかを表で示す。

ユースケース適合度理由
小売の需要予測曜日・季節の周期が強く、事前学習の分布に近い
エネルギー需要気温連動の周期性。ベースライン予測を素早く得られる
サーバ運用メトリクス中〜高定常的な負荷は得意。突発スパイクは外生要因で外しやすい
在庫・補充計画中〜高需要予測の下流。共変量が効く場合はXReg併用
製造の予知保全センサー値の傾向把握に有効。多変量の相互作用は弱点
投資・FX・仮想通貨の価格予測不適合外生イベントに強く反応し分布が安定しない。下節で詳述

投資・FX・仮想通貨予測には向かない

ここは読者保護のためにはっきり書く。

TimesFMを株価・為替・仮想通貨の価格予測に使うのは、設計と相性が悪い。

金融価格は、決算・規制・地政学・市場心理といった外生イベントに強く反応する。

これは事前学習データの分布から大きく外れる 高エントロピー な領域だ。

公式・第三者の検証はそろって、学習データの分布から離れるほどゼロショット性能が落ちると報告している。

価格の方向を当てる用途に使えば、もっともらしいが外れる予測を量産しかねない。

過去の規則性が将来にも続く前提が崩れる領域では、TimesFMの強みは効かない。

投資判断にこのモデルの出力を持ち込むのは避けるのが妥当だ。

使い方——インストールから最小コードまで

導入はPyPIから行う。

バックエンドを選んでインストールする。

# PyTorch版(主系統)
pip install timesfm[torch]

# Flax/JAX版
pip install timesfm[flax]

# 共変量(外生変数)を使う場合
pip install timesfm[xreg]

最小の予測コードは、重みの読み込みと compileforecast の3手である。

import torch
import numpy as np
import timesfm

torch.set_float32_matmul_precision("high")

# Hugging Face から TimesFM 2.5 の重みを読み込む
model = timesfm.TimesFM_2p5_200M_torch.from_pretrained(
    "google/timesfm-2.5-200m-pytorch"
)

# 推論設定をコンパイル(コンテキスト長・ホライズン・分位ヘッド等)
model.compile(
    timesfm.ForecastConfig(
        max_context=1024,
        max_horizon=256,
        normalize_inputs=True,
        use_continuous_quantile_head=True,
        force_flip_invariance=True,
        infer_is_positive=True,
        fix_quantile_crossing=True,
    )
)

# 複数系列をまとめて予測(horizon=12ステップ先まで)
point_forecast, quantile_forecast = model.forecast(
    horizon=12,
    inputs=[
        np.linspace(0, 1, 100),            # 系列1
        np.sin(np.linspace(0, 20, 67)),    # 系列2(長さは可変でよい)
    ],
)

このコードはREADME掲載例に沿っている。

inputs は系列のリストで、各系列の長さがそろっていなくてよい。

use_continuous_quantile_head=True を立てると、点予測 point_forecast に加えて分位予測 quantile_forecast が返り、予測区間を引ける。

infer_is_positive=True は、売上や来客数のように負にならない系列で予測を非負に寄せる推論フラグだ。

企業利用では、同じモデルをBigQuery MLのSQL関数として呼ぶ経路や、Vertex Model Gardenのエンドポイント経由で叩く経路も選べる。

制限事項と注意点——使う前に確認すること

ゼロショットの手軽さは、無条件の正確さを意味しない。

公式・第三者の報告から、押さえるべき制限を挙げる。

多変量の相互作用は弱点:複数系列が影響し合う設定では、Chronos-2やMoiraiに劣ると報告される。相互作用が本質なら専用設計を検討する
分布シフトに弱い:Web/CloudOpsのようなイベント駆動・高エントロピー領域では、事前学習分布から離れるほどゼロショット性能が落ちる
欠損・ノイズ・ドリフトに脆い:欠損値やノイズ、傾向の変化が混ざるデータでは精度が急に落ちる。投入前のデータ診断が要る
コールドスタートの限界:履歴がごく短い系列は、過去から読み取れる規則性が乏しく予測が不安定になる
外生変数は別仕掛け:価格やキャンペーンのような共変量は、本体ではなくXReg経由で渡す設計。共変量が効く問題では併用前提で考える

運用上の勘所は、TimesFMを「最終解」ではなく「素早い強いベースライン」として置くことだ。

専用モデルを作る価値があるかを見極める初手として使い、誤差がスパイクする箇所を監視で拾う。

予測区間(分位予測)を併せて出し、点予測を鵜呑みにしない運用にすると事故が減る。

まとめ——1モデルで初手を省く設計

TimesFMは、時系列予測の初手を軽くする。

データセットごとに専用モデルを訓練する代わりに、学習済みの1モデルで未知の系列をそのまま予測する。

decoder-onlyとパッチ化で長い系列を現実的に扱い、100億時点の事前学習で幅広いパターンを覚えた。

TimesFM 2.5は小さく(200M)、長く(16k)、不確実性つき(分位ヘッド)の方向へ世代交代した。

向く領域は、需要・エネルギー・運用メトリクスのように過去の規則性が続く問題だ。

向かない領域は、価格予測のように外生イベントで分布が崩れる問題と、系列が強く絡む多変量の問題である。

GIFT-Evalの順位は時期で入れ替わるため、Chronos-2やMoiraiと並べて、扱う問題に合うものを選ぶのが現実的だ。

公式README・論文・Hugging Faceのモデルカードを一次ソースとして、自分のデータで小さく試すところから始めるとよい。


時系列の話題は、機械学習基盤やMLOpsの文脈に置くと位置づけがはっきりする。次の記事も参照してほしい。

LLMとは?仕組み・主要モデル比較・ローカル実行・量子化を一気にまとめる2026年版では、基盤モデルという発想がどこから来たかを言語モデル側から整理している。TimesFMの「事前学習1モデル」の背景理解に役立つ。

Made-With-MLガイド|48kスターのMLOps学習ロードマップで実務力を付ける手順:予測モデルを本番に載せる運用の地図。TimesFMをベースラインに据えた後の評価・監視・再学習の流れがつかめる
AI自動化ツール|ノーコードからコードまで2026年版の比較と選び方:予測結果を業務フローへ流し込む下流の選択肢を整理している
ループエンジニアリングとは|AIエージェントの反復制御を設計する5つの軸と主要OSS実装:予測→判断→行動を自動で回す場合の、停止条件・予算ゲートの設計