Retour au Blog
Machine Learning 5 janvier 2025 9 min de lecture

Prévision de séries temporelles à grande échelle : d'ARIMA à LightGBM

Quand les méthodes classiques fonctionnent et quand le ML gagne — feature engineering pour les séries temporelles.

Choix de la méthode

ScénarioMeilleure méthode
Peu de séries, données propresProphet, SARIMA
Nombreuses séries (1000+)LightGBM avec lag features
Saisonnalité complexeN-BEATS, TFT
Temps réel, faible latenceLissage exponentiel simple

LightGBM pour les séries temporelles

def make_features(df, lags=[1,7,14,28], windows=[7,14,28]):
    for lag in lags:
        df[f'lag_{lag}'] = df['target'].shift(lag)
    for w in windows:
        df[f'rolling_mean_{w}'] = df['target'].shift(1).rolling(w).mean()
        df[f'rolling_std_{w}'] = df['target'].shift(1).rolling(w).std()
    df['day_of_week'] = df.index.dayofweek
    df['month'] = df.index.month
    df['is_weekend'] = (df.index.dayofweek >= 5).astype(int)
    return df

Framework de backtesting

Validation walk-forward : entraîner sur [0..t], prédire [t+1..t+h], glisser vers l'avant.

Time SeriesForecastingLightGBMProphetFeature Engineering
O

Ossama Elhakki

Ingénieur IA & Systèmes ML — Maroc