Calcul d’un seuil et de moyennes mobiles
Vous allez suivre l’évolution de la précision des prévisions afin de détecter le model drift. En calculant des fenêtres glissantes et en définissant un seuil pour déclencher des alertes de dérive, vous pourrez repérer quand le modèle n’est plus aligné avec la réalité et doit être réentraîné.
Vous utiliserez les 14 premières prévisions de fc_log_test pour établir le seuil, puis vous l’appliquerez au reste des journaux de prévision. Les journaux de prévision fc_log_test et fc_log, qui contiennent les scores de performance du modèle, ont été préchargés, ainsi que pandas sous l’alias pd.
Cet exercice fait partie du cours
<cours>Concevoir des pipelines de prévision pour la production</cours>Instructions de l’exercice
- Définissez le niveau de seuil à partir de
fc_log_testen ajoutant trois écarts types à la moyenne du RMSE, et stockez le résultat dansrmse_threshold. - Calculez la moyenne mobile du RMSE avec des fenêtres glissantes de 7 et 14 jours pour
fc_log.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Set threshold: mean + 3 standard deviations
rmse_threshold = fc_log_test["____"].mean() + 3 * fc_log_test["____"].____()
# Create rolling window averages for RMSE
fc_log["rmse_ma_7"] = fc_log["rmse"].rolling(window=____).____()
fc_log["rmse_ma_14"] = fc_log["rmse"].rolling(window=____).____()
print(f"RMSE threshold: {round(rmse_threshold, 2)}")
print()
print("Forecast log with rolling averages:")
print(fc_log[["forecast_start", "rmse", "rmse_ma_7", "rmse_ma_14"]].head(20))