Inférence et évaluation des modèles de prévision

Cet article présente les concepts liés à l’inférence de modèles et à leur évaluation dans le cadre de tâches de prévision. Pour obtenir des instructions et des exemples sur l’entraînement de modèles de prévision avec AutoML, consultez la section Configuration d’AutoML pour entraîner un modèle de prévision de séries temporelles avec le SDK et la CLI.

Après avoir utilisé AutoML pour entraîner et sélectionner le meilleur modèle, l’étape suivante consiste à générer des prévisions. Ensuite, si possible, évaluez leur précision sur un jeu de test mis de côté à partir des données d’entraînement. Pour savoir comment configurer et exécuter l’évaluation de modèles de prévision en apprentissage automatique automatisé, consultez la section Orchestration de l’entraînement, de l’inférence et de l’évaluation.

Scénarios d’inférence

Dans le Machine Learning, l’inférence correspond au processus de génération des prédictions d’un modèle sur de nouvelles données qui n’ont pas été utilisées lors de l’entraînement. Il existe plusieurs façons de générer des prédictions en prévision, en raison de la dépendance temporelle des données. Le scénario le plus simple est celui où la période d’inférence suit immédiatement la période d’entraînement et où vous générez des prédictions jusqu’à l’horizon de prévision. Le diagramme suivant illustre ce scénario :

Schéma illustrant une prévision immédiatement après la période d’entraînement.

Le schéma montre deux paramètres d’inférence importants :

  • La longueur du contexte correspond à la quantité d’historique dont le modèle a besoin pour effectuer une prévision.
  • L’horizon de prévision correspond à l’intervalle de temps dans le futur sur lequel le modèle de prévision est entraîné à prédire.

Les modèles de prévision utilisent généralement certaines informations historiques, le contexte pour effectuer des prédictions dans le futur jusqu’à l’horizon de prévision. Lorsque le contexte fait partie des données d’entraînement, AutoML enregistre ce dont il a besoin pour effectuer des prévisions Vous n’avez pas besoin de le fournir explicitement.

Deux autres scénarios d’inférence sont plus compliqués :

  • Génération de prédictions au-delà de l’horizon de prévision
  • Obtenir des prédictions lorsqu’il existe un écart entre les périodes d’entraînement et d’inférence

Les sous-sections suivantes examinent ces cas.

Prédire au-delà de l’horizon de prévision : prévision récursive

Lorsque vous avez besoin de prévisions au-delà de l’horizon, AutoML applique le modèle de manière récursive sur la période d’inférence. Les prédictions du modèle sont réinjectées en entrée afin de générer des prédictions pour les fenêtres de prévision suivantes. Le schéma suivant présente un exemple simple :

Schéma illustrant une prévision récursive sur un jeu de test.

Ici, l’apprentissage automatique génère des prévisions sur une période trois fois plus longue que l’horizon de prévision. Il utilise les prédictions d’une fenêtre comme contexte pour la fenêtre suivante.

Avertissement

Erreurs de modélisation des composés de prévision récursifs. Les prédictions deviennent moins précises à mesure qu’elles s’éloignent de l’horizon de prévision initial. Vous pourriez trouver un modèle plus précis en procédant à un réentraînement avec un horizon plus long.

Prédire avec un écart entre les périodes d’entraînement et d’inférence

Supposons qu’après avoir entraîné un modèle, vous souhaitiez l’utiliser pour effectuer des prédictions à partir de nouvelles observations qui n’étaient pas encore disponibles lors de l’entraînement. Dans ce cas, il existe un écart temporel entre les périodes d’entraînement et d’inférence :

Schéma illustrant une prévision avec un écart entre les périodes d’entraînement et d’inférence.

AutoML prend en charge ce scénario d’inférence, mais vous devez fournir les données de contexte sur la période d’écart, comme illustré dans le schéma. Les données de prédiction transmises au [composant d’inférence](how-to-auto-train-forecast.md#orchestrate-training-inference-and-evaluation-by using-components-and-pipelines) doivent contenir des valeurs pour les caractéristiques et les valeurs cibles observées durant la période d’écart, ainsi que des valeurs manquantes ou des valeurs NaN pour la cible pendant la période d’inférence. La table suivante fournit un exemple de cette tendance :

Table présentant un exemple de données de prédiction lorsqu’il existe un écart entre les périodes d’entraînement et d’inférence.

Les valeurs connues de la cible et des caractéristiques sont fournies 2023-05-01 par l’intermédiaire de 2023-05-03. Les valeurs cibles manquantes à partir du 2023-05-04 indiquent que la période d’inférence commence à cette date.

AutoML utilise les nouvelles données de contexte pour mettre à jour les décalages et les autres caractéristiques de rétrospective, ainsi que pour actualiser les modèles tels qu’ARIMA qui conservent un état interne. Cette opération ne met pas à jour et ne rajuste pas les paramètres du modèle.

Évaluation du modèle

L’évaluation est le processus de génération de prédictions sur un jeu de tests conservé à partir des métriques d’apprentissage et de calcul de ces prédictions qui guident les décisions de déploiement de modèle. En conséquence, il existe un mode d’inférence adapté à l’évaluation des modèles : la prévision glissante.

Une bonne pratique pour évaluer un modèle de prévision consiste à faire évoluer le modèle entraîné dans le temps sur le jeu de test, en moyennant les métriques d’erreur sur plusieurs fenêtres de prédiction. Cette procédure est parfois appelée backtest. Dans l’idéal, le jeu de test pour l’évaluation est long par rapport à l’horizon de prévision du modèle. Sinon, les estimations de l’erreur de prévision peuvent être statistiquement bruyantes et moins fiables.

Le schéma suivant présente un exemple simple avec trois fenêtres de prévision :

Schéma illustrant une prévision glissante sur un jeu de test.

Le schéma illustre trois paramètres d’évaluation glissante :

  • La longueur du contexte correspond à la quantité d’historique dont le modèle a besoin pour effectuer une prévision.
  • L’horizon de prévision correspond à l’intervalle de temps dans le futur sur lequel le modèle de prévision est entraîné à prédire.
  • La longueur d’étape correspond à la distance temporelle de progression de la fenêtre glissante à chaque itération sur le jeu de test.

Le contexte progresse en même temps que la fenêtre de prévision. Les valeurs réelles du jeu de test sont utilisées pour effectuer des prévisions lorsqu’elles se trouvent dans la fenêtre de contexte actuelle. La date la plus récente des valeurs réelles utilisées pour une fenêtre de prévision donnée est appelée heure d’origine de la fenêtre. La table suivante présente un exemple de sortie d’une prévision glissante à trois fenêtres, avec un horizon de trois jours et un pas d’un jour :

Le schéma présente un exemple de table de sortie issu d’une prévision glissante.

Avec une table de ce type, vous pouvez visualiser les prévisions par rapport aux valeurs réelles et calculer les métriques d’évaluation souhaitées. Les pipelines AutoML peuvent générer des prévisions évolutives sur un jeu de test avec un composant d’inférence.

Remarque

Lorsque la période de test est équivalente en longueur à l’horizon de prévision, une prévision évolutive donne une fenêtre unique de prévisions jusqu’à l’horizon.

Mesures d’évaluation

Le scénario spécifique de l’entreprise détermine généralement le choix du résumé ou de la mesure d’évaluation. Exemples courants :

  • Tracés de valeurs cibles observées par rapport aux valeurs prévues pour vérifier que le modèle capture certaines dynamiques des données
  • Erreur absolue moyenne en pourcentage (MAPE) entre les valeurs réelles et les valeurs prévues
  • Erreur carrée moyenne (RMSE), éventuellement avec une normalisation, entre les valeurs réelles et les valeurs prévues
  • Erreur absolue moyenne (MAE), éventuellement avec une normalisation, entre les valeurs réelles et les valeurs prévues

Selon le scénario métier, vous devrez peut-être créer vos propres utilitaires de post-traitement pour calculer les métriques d’évaluation à partir des résultats d’inférence ou des prévisions propagées. Pour en savoir plus sur les mesures, consultez les mesures de régression/prévision.