Modèles de fondation pour séries temporelles : TimesFM, Chronos et Moirai
Pendant des années, prévoir une série temporelle a signifié entraîner un modèle dédié pour chaque série : un ARIMA pour les ventes d'un produit, un Prophet pour le trafic d'un site, un gradient boosting pour la consommation d'énergie. Chaque nouveau jeu de données imposait de nettoyer, de choisir des hyperparamètres, de valider et de maintenir un modèle de plus. Les modèles de fondation pour séries temporelles changent cette logique : pré-entraînés sur des milliards de points, ils produisent des prévisions directement sur vos données, sans entraînement supplémentaire.
Équipe Blent
Publié le · 11 min de lecture

Dans cet article
Pendant des années, prévoir une série temporelle a signifié entraîner un modèle dédié pour chaque série : un ARIMA pour les ventes d'un produit, un Prophet pour le trafic d'un site, un gradient boosting pour la consommation d'énergie. Chaque nouveau jeu de données imposait de nettoyer, de choisir des hyperparamètres, de valider et de maintenir un modèle de plus. Les modèles de fondation pour séries temporelles changent cette logique : pré-entraînés sur des milliards de points, ils produisent des prévisions directement sur vos données, sans entraînement supplémentaire.
Ce mouvement s'inspire de ce qui s'est passé pour le texte avec les LLM. Trois acteurs majeurs ont publié leurs modèles : TimesFM chez Google, Chronos chez Amazon et Moirai chez Salesforce. Tous reposent sur l'architecture Transformer et sont accessibles en open source, notamment via Hugging Face. Ils permettent à un Data Scientist d'obtenir une première prévision de qualité en quelques lignes de code.
Faut-il pour autant abandonner les méthodes classiques ? Ces modèles sont-ils plus précis, plus coûteux, plus difficiles à expliquer ? Dans cet article, nous allons expliquer le fonctionnement de ces modèles, comparer les trois familles, les confronter aux approches classiques, puis dérouler un exemple de prévision avec Chronos en Python.
Qu'est-ce qu'un modèle de fondation pour séries temporelles ?
Un modèle de fondation est un grand modèle pré-entraîné sur un corpus très vaste et très varié, puis réutilisé tel quel sur de nombreuses tâches. Pour les séries temporelles, le corpus rassemble des séries issues de domaines différents : énergie, finance, météo, trafic web, ventes, capteurs industriels, données de santé. À force d'observer des tendances, des saisonnalités et des ruptures dans ces séries, le modèle apprend des motifs généraux qu'il peut ensuite appliquer à une série qu'il n'a jamais vue.
C'est le principe du zero-shot forecasting : on fournit au modèle l'historique d'une série (le contexte) et la longueur de l'horizon souhaité, et il renvoie la prévision. Aucun entraînement, aucun réglage de paramètres saisonniers, aucun passage par une phase de validation croisée pour sélectionner l'ordre d'un modèle. Quand l'historique est riche et le domaine spécifique, il reste possible de faire du fine-tuning pour adapter le modèle, mais l'intérêt principal reste de démarrer sans cette étape.
Cette approche répond à un problème fréquent en entreprise : le nombre de séries à prévoir. Une enseigne de distribution peut avoir des centaines de milliers de couples produit-magasin. Entraîner et surveiller un modèle par série devient ingérable, alors qu'un seul modèle pré-entraîné peut les traiter toutes dans un même lot. Les séries courtes, pour lesquelles les modèles classiques manquent de données, sont aussi un terrain favorable, car le modèle s'appuie sur ce qu'il a appris ailleurs.
Comment fonctionnent ces modèles ?
Prévoir une série revient à prédire la suite d'une séquence de valeurs numériques. Les Transformers savent le faire pour des séquences de mots, à condition de transformer la série en une représentation adaptée. Les trois familles de modèles diffèrent précisément par cette étape et par l'architecture qui l'entoure.
De la série à des tokens
Une série temporelle est une suite de nombres continus, alors qu'un LLM manipule un vocabulaire fini de tokens. Deux stratégies coexistent :
- Tokenisation par quantification : c'est l'approche de Chronos. La série est d'abord normalisée par une mise à l'échelle (par exemple en divisant par la moyenne des valeurs absolues du contexte), puis chaque valeur est rangée dans l'un des intervalles d'un vocabulaire fixe, quelques milliers de classes. La série devient une séquence de tokens, comme une phrase, et le modèle est entraîné avec une perte d'entropie croisée classique.
- Découpage en patchs : c'est l'approche de TimesFM et de Moirai. La série est découpée en fragments de longueur fixe (par exemple 32 points consécutifs), et chaque patch est projeté dans l'espace d'embedding du modèle par une couche dense. Les valeurs restent continues, et un patch joue le rôle d'un token.
Le patching présente un avantage de coût : un contexte de plusieurs milliers de points ne devient qu'une séquence de quelques centaines de patchs, ce qui allège l'attention, dont le coût croît avec le carré de la longueur de séquence. Les versions plus récentes de Chronos (Chronos-Bolt, Chronos-2) ont d'ailleurs adopté cette logique de patchs, avec une sortie directe de quantiles plutôt qu'un échantillonnage token par token, pour gagner en vitesse d'inférence.
Trois architectures Transformer
Les trois modèles partagent le même socle, mais font des choix différents :
- TimesFM (Google Research) est un modèle decoder-only, comme GPT : il lit les patchs passés et prédit les patchs suivants de façon autorégressive. Il est pré-entraîné sur un large mélange de séries réelles (notamment des requêtes Google Trends et des pages vues Wikipedia) et de séries synthétiques.
- Chronos (Amazon) traite les séries comme du langage. La première génération réutilise l'architecture T5 en tokenisant les valeurs, et génère des trajectoires futures par échantillonnage, ce qui donne naturellement des prévisions probabilistes. Chronos-2 étend l'approche aux séries multivariées et aux covariables.
- Moirai (Salesforce) est un modèle encodeur masqué conçu pour les séries multivariées. Il utilise plusieurs tailles de patchs selon la fréquence des données et un mécanisme d'attention capable de traiter un nombre quelconque de variables. Il est entraîné sur LOTSA, une archive ouverte de séries temporelles publiée avec le modèle.
| Modèle | Éditeur | Architecture | Représentation de la série | Sortie |
|---|---|---|---|---|
| TimesFM | Decoder-only | Patchs | Prévision et quantiles | |
| Chronos | Amazon | Encodeur-décodeur (T5), puis variantes à patchs | Quantification (puis patchs) | Trajectoires échantillonnées ou quantiles |
| Moirai | Salesforce | Encodeur masqué | Patchs multi-tailles | Distribution paramétrique |
Ce tableau montre que la frontière entre les familles se brouille : les patchs et les sorties probabilistes deviennent la norme. Les différences pratiques se jouent surtout sur la gestion du multivarié (point fort de Moirai et de Chronos-2), la taille des modèles (de quelques millions à plusieurs centaines de millions de paramètres) et la licence des poids, à vérifier avant tout usage commercial.
Modèles de fondation face aux approches classiques
La question à se poser n'est pas « quel modèle est le meilleur ? » mais « quel compromis convient à mon cas ? ». Les benchmarks publiés par les auteurs (GIFT-Eval, Monash, ou les jeux utilisés dans l'article Chronos) montrent que ces modèles zero-shot rivalisent avec des modèles classiques entraînés spécifiquement sur chaque série, et les dépassent souvent sur les séries courtes ou irrégulières. Ces résultats dépendent toutefois des jeux de données, et il faut les valider sur vos propres séries.
| Critère | Modèles de fondation | ARIMA / ETS | Prophet | Gradient boosting |
|---|---|---|---|---|
| Coût d'entraînement | Aucun (zero-shot) | Faible par série | Faible par série | Moyen à élevé |
| Coût d'inférence | Élevé (GPU recommandé) | Très faible | Faible | Faible |
| Précision | Très bonne sans réglage | Bonne sur séries régulières | Bonne avec saisonnalités marquées | Excellente avec de bonnes variables |
| Explicabilité | Faible (boîte noire) | Forte (paramètres lisibles) | Forte (composantes) | Moyenne (importance des variables) |
| Variables explicatives | Limitées, selon le modèle | Oui (ARIMAX) | Oui (régresseurs) | Oui, très flexible |
Les modèles classiques gardent des atouts décisifs. ARIMA et ETS offrent des paramètres interprétables et un coût de calcul négligeable, ce qui compte pour des millions de séries à rafraîchir chaque heure. Prophet décompose la série en tendance, saisonnalité et jours fériés, et un analyste métier peut lire ces composantes. Le gradient boosting, avec un bon feature engineering (retards, moyennes glissantes, calendrier, prix, promotions), reste très difficile à battre quand on dispose de variables explicatives riches.
Les modèles de fondation s'imposent surtout dans trois situations : de nombreuses séries hétérogènes, peu d'historique, ou un besoin de baseline rapide. Ils posent en revanche deux limites. La première est l'explicabilité : impossible d'expliquer une prévision par un paramètre ou une composante, ce qui complique les échanges avec les équipes métier ou la conformité. La seconde est le coût d'inférence, car un modèle de plusieurs centaines de millions de paramètres consomme bien plus de calcul qu'un lissage exponentiel, même s'il évite la phase d'entraînement.
En pratique, une démarche raisonnable consiste à utiliser un modèle de fondation comme baseline, puis à le comparer à une méthode classique sur une validation temporelle (backtesting). Si le gain justifie le coût, on le garde ; sinon, on conserve la solution la plus simple, ou on combine les deux dans un ensemble.
Exemple : prévoir une série avec Chronos
Passons à la pratique avec Chronos-2, publié sous le nom amazon/chronos-2 sur Hugging Face. La bibliothèque s'installe avec pip, et un pipeline accepte directement un DataFrame pandas au format long.
pip install chronos-forecasting "pandas[pyarrow]"
Nous construisons ici une série mensuelle synthétique avec tendance et saisonnalité, puis nous demandons une prévision sur 12 mois avec des quantiles pour quantifier l'incertitude.
import numpy as np
import pandas as pd
from chronos import Chronos2Pipeline
# Série synthétique : tendance + saisonnalité annuelle + bruit
dates = pd.date_range("2018-01-01", periods=72, freq="MS")
valeurs = (
100
+ 0.8 * np.arange(72)
+ 15 * np.sin(2 * np.pi * np.arange(72) / 12)
+ np.random.default_rng(42).normal(0, 3, 72)
)
contexte = pd.DataFrame({"id": "ventes", "timestamp": dates, "target": valeurs})
# Chargement du modèle pré-entraîné (aucun entraînement nécessaire)
pipeline = Chronos2Pipeline.from_pretrained("amazon/chronos-2", device_map="cpu")
# Prévision zero-shot sur 12 mois avec intervalle 80 %
previsions = pipeline.predict_df(
contexte,
prediction_length=12,
quantile_levels=[0.1, 0.5, 0.9],
id_column="id",
timestamp_column="timestamp",
target="target",
)
print(previsions.head())
Le DataFrame retourné contient une colonne predictions (la prévision centrale) et des colonnes 0.1, 0.5 et 0.9 pour les quantiles demandés. L'intervalle entre 0.1 et 0.9 encadre 80 % des trajectoires plausibles, ce qui est bien plus utile pour planifier des stocks ou une capacité qu'une valeur unique. Sur un GPU, le même appel traite un grand nombre de séries d'un coup, il suffit de les empiler dans le DataFrame avec des identifiants distincts.
Pour évaluer la qualité, on retient les derniers points de la série comme jeu de test, on prévoit sur cette période, puis on calcule une métrique comme le MAPE ou le MASE en comparant avec la prévision d'un ARIMA ou d'un modèle saisonnier naïf. Cette comparaison est indispensable : elle dit si le modèle de fondation apporte un gain réel sur vos données, et elle suit la même logique que la validation croisée classique, en respectant l'ordre chronologique.
Bonnes pratiques et limites
Quelques précautions permettent d'éviter les déconvenues en production :
- Qualité du contexte : le modèle ne corrige pas des données mal alignées. Fréquence régulière, valeurs manquantes traitées et anomalies identifiées restent nécessaires.
- Longueur de contexte : chaque modèle a une fenêtre maximale d'historique. Au-delà, seuls les points les plus récents sont lus, ce qui peut faire perdre des saisonnalités longues.
- Dérive : une rupture de régime (changement de politique tarifaire, pandémie) n'est pas anticipée. Le suivi du data drift et du concept drift reste de mise.
- Licences : les poids des modèles n'ont pas tous la même licence, et certaines versions restreignent l'usage commercial. Il faut la vérifier pour chaque version déployée.
- Backtesting systématique : un score flatteur sur un benchmark public ne garantit rien sur vos séries.
Ces modèles se déploient comme n'importe quel modèle de Machine Learning, avec un service d'inférence, un suivi des performances et une procédure de mise en production rigoureuse.
À découvrir : notre formation Data Scientist
Conclusion
Les modèles de fondation pour séries temporelles déplacent l'effort du Data Scientist : moins de temps passé à ajuster un modèle par série, plus de temps consacré à la qualité des données, à la validation et à l'interprétation des résultats. TimesFM, Chronos et Moirai montrent qu'un modèle pré-entraîné peut fournir une prévision solide sans entraînement, avec une gestion native de l'incertitude et, pour les versions récentes, du multivarié.
Cela ne rend pas les méthodes classiques obsolètes. ARIMA, Prophet et le gradient boosting restent plus légers, plus lisibles et souvent plus performants quand les variables explicatives sont riches. La bonne pratique consiste à comparer ces approches sur vos propres données plutôt qu'à choisir par effet de mode, et à adopter le modèle de fondation là où il apporte un vrai gain : séries nombreuses, historique court, besoin de baseline rapide.
Le domaine évolue vite, avec de nouvelles versions plus compactes et plus rapides publiées régulièrement. Savoir évaluer, comparer et déployer ces modèles aux côtés des méthodes éprouvées devient une compétence différenciante pour un Data Scientist.


