0Pricing
Learn AI with Python · Leçon

LSTM pour la prévision de séries temporelles

Préparation des séquences, LSTM sans état ou avec état, fenêtre rétrospective, prévision à plusieurs étapes.

LSTM pour la prévision de séries temporelles est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.

Pourquoi utiliser LSTM pour les séries temporelles ?

LSTM (mémoire à long et court terme) est un réseau neuronal récurrent qui mémorise des motifs sur de longues séquences grâce à des cellules mémoire dotées de portes. Il peut modéliser des dépendances non linéaires qu’ARIMA ne peut pas représenter, ce qui le rend puissant pour les séries complexes avec suffisamment de données.

Découpage en fenêtres de séquence

Les LSTM apprennent à partir de fenêtres : des portions de longueur fixe des étapes passées, utilisées pour prédire la valeur suivante. Avec une fenêtre de 10, le modèle observe les étapes 1 à 10 pour prédire l’étape 11, puis les étapes 2 à 11 pour prédire l’étape 12, et ainsi de suite.

Créer des fenêtres dans le code

Un utilitaire transforme une série unidimensionnelle en paires entrée/cible.

import numpy as np

def make_windows(series, window):
    X, y = [], []
    for i in range(len(series) - window):
        X.append(series[i:i+window])
        y.append(series[i+window])
    return np.array(X), np.array(y)

X, y = make_windows(values, window=10)

Mettre les données à l’échelle

Les réseaux neuronaux s’entraînent mieux avec des entrées mises à l’échelle. Utilisez MinMaxScaler pour ramener les valeurs dans [0, 1], et n’oubliez pas d’appliquer la transformation inverse aux prédictions par la suite.

from sklearn.preprocessing import MinMaxScaler

scaler = MinMaxScaler()
scaled = scaler.fit_transform(values.reshape(-1, 1))

Remodeler les données pour LSTM

Les couches LSTM de Keras attendent des entrées de forme (échantillons, pas de temps, caractéristiques). Pour une série univariée, le nombre de caractéristiques est 1.

# X is (samples, timesteps); add a feature axis
X = X.reshape((X.shape[0], X.shape[1], 1))
print(X.shape)  # (samples, timesteps, 1)

Construire le modèle

Une architecture simple : une couche LSTM(50) qui alimente une sortie Dense(1) prédisant la valeur suivante.

from tensorflow.keras import Sequential
from tensorflow.keras.layers import LSTM, Dense

model = Sequential([
    LSTM(50, input_shape=(X.shape[1], 1)),
    Dense(1)
])

Pourquoi Dense(1)

Prévoir une étape à l’avance est un problème de régression avec une seule sortie numérique. La couche finale est donc Dense(1), sans fonction d’activation. Pour des prévisions sur plusieurs étapes, vous utiliseriez Dense(n_steps).

Compilation

Utilisez l’optimiseur adam et la fonction de perte mse (erreur quadratique moyenne), le choix standard pour une régression sur des cibles continues.

model.compile(optimizer="adam", loss="mse")

Entraînement

Entraînez le modèle sur les données découpées en fenêtres. Une partition de validation surveille la capacité de généralisation au fil des époques.

history = model.fit(
    X, y,
    epochs=50,
    batch_size=32,
    validation_split=0.2
)

Prédire

Effectuez des prédictions sur de nouvelles fenêtres, puis appliquez la transformation inverse pour revenir à l’échelle d’origine.

pred_scaled = model.predict(X_test)
pred = scaler.inverse_transform(pred_scaled)

Empilement et réglage

Pour les séries plus difficiles, empilez des LSTM (définissez return_sequences=True sur toutes les couches sauf la dernière) et ajoutez une régularisation par abandon. Un plus grand nombre de couches capture des motifs plus profonds, mais nécessite davantage de données et augmente le risque de surapprentissage.

model = Sequential([
    LSTM(50, return_sequences=True, input_shape=(X.shape[1], 1)),
    LSTM(50),
    Dense(1)
])

Vérification rapide

Testez vos connaissances sur les prévisions avec LSTM.

Récapitulatif

Vous avez préparé des fenêtres, mis les données à l’échelle avec MinMaxScaler, remodelé les données en (échantillons, pas de temps, caractéristiques), construit LSTM(50) + Dense(1), compilé le modèle avec adam/mse, puis entraîné le modèle et effectué des prédictions en appliquant la transformation inverse. Le cours sur les séries temporelles se termine ici. Cours suivant : systèmes de recommandation.

Questions Fréquemment Posées

La leçon « LSTM pour la prévision de séries temporelles » est-elle gratuite ?

Oui — le texte complet de « LSTM pour la prévision de séries temporelles » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « LSTM pour la prévision de séries temporelles » ?

Préparation des séquences, LSTM sans état ou avec état, fenêtre rétrospective, prévision à plusieurs étapes. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Learn AI with Python ?

Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « LSTM pour la prévision de séries temporelles » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?

Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Composantes des séries temporelles et stationnarité
  2. Modèles ARIMA et SARIMA
  3. Prophet pour la prévision automatisée
  4. LSTM pour la prévision de séries temporelles
← Retour à Learn AI with Python