Amazon MLA-C01: Évaluation et sélection de modèles — Guide d'étude
Fait partie du AWS Machine Learning Engineer Associate MLA-C01 — Guide d’étude. Entraînez-vous avec des réponses vérifiées dans le centre d’examens Amazon, ou passez des tests chronométrés sur ExamRoll.io.
Une évaluation précise du modèle commence par la sélection de métriques qui correspondent à l’objectif métier et aux caractéristiques des classes / étiquettes. Pour la classification binaire, la matrice de confusion — vrais positifs, faux positifs, faux négatifs, vrais négatifs — est la primitive canonique à partir de laquelle la précision (VP / (VP+FP)), le rappel ou la sensibilité (VP / (VP+FN)), la spécificité (VN / (VN+FP)) et l’exactitude ((VP+VN) / total) sont dérivés. La précision et le rappel forment un compromis qui est capturé dans le score F1 (2 * précision * rappel / (précision + rappel)), qui est la moyenne harmonique et met l’accent sur l’équilibre entre les faux positifs et les faux négatifs. Lorsque le déséquilibre des classes est important, l’exactitude peut être trompeuse ; l’aire sous la courbe ROC (AUC) mesure la séparabilité entre les seuils et est robuste au déséquilibre dans de nombreux cas, tandis que l’AUC précision-rappel (AUPRC) est plus informative lorsque la prévalence de la classe positive est faible. Pour la régression, la racine de l’erreur quadratique moyenne (RMSE) pénalise les erreurs plus importantes de manière quadratique et est sensible aux valeurs aberrantes ; utilisez l’erreur absolue moyenne (MAE) lorsque la robustesse aux valeurs aberrantes est préférée.
La sélection du seuil est une décision opérationnelle : de nombreux algorithmes produisent un score de probabilité et nécessitent un seuil pour le convertir en étiquettes de classe. Utilisez les courbes ROC et précision-rappel pour localiser les seuils qui maximisent un objectif choisi, tel que le score F1 ou une fonction de coût pondérée par l’activité métier. La méthodologie pratique consiste à calculer la précision, le rappel et le F1 par seuil à partir de la matrice de confusion, puis à choisir le seuil qui respecte une contrainte de précision ou de rappel cible. La validation croisée complète cela en réduisant la variance dans les estimations des métriques : utilisez la K-fold stratifiée pour la classification déséquilibrée afin de préserver les ratios de classes entre les plis (folds). Dans le code,
undefined
de scikit-learn avec
undefined
et
undefined
ainsi qu’un
undefined
fixe donne des plis reproductibles ; enregistrez les métriques par pli et agrégez les moyennes et les écarts-types pour quantifier la variance attendue. Lorsque vous utilisez SageMaker, vous pouvez orchestrer les exécutions de validation croisée (CV) en tant que tâches d’entraînement distinctes et les suivre avec les API SageMaker Experiments :
undefined
,
undefined
,
undefined
, puis
undefined
et
undefined
pour chaque pli.
Le compromis biais-variance guide les choix de complexité du modèle et de régularisation. Les modèles à biais élevé sont en sous-apprentissage (underfitting) et produisent une erreur élevée sur les ensembles d’entraînement et de validation, tandis que les modèles à variance élevée sont en surapprentissage (overfitting) et ont une faible erreur d’entraînement mais une erreur de validation élevée. Corrigez le biais en augmentant la capacité du modèle, en ajoutant des caractéristiques informatives ou en réduisant la force de la régularisation ; corrigez la variance en ajoutant de la régularisation (L1/L2), en réduisant la complexité, en utilisant le dropout ou en augmentant les données d’entraînement. Utilisez les estimations de la validation croisée pour détecter la variance : une grande dispersion des métriques entre les plis implique une variance élevée. Pour l’entraînement itératif sur SageMaker, intégrez l’arrêt précoce (pour XGBoost, définissez l’hyperparamètre
undefined
et
undefined
) et utilisez SageMaker Automatic Model Tuning avec une stratégie bayésienne pour rechercher dans l'
undefined
; configurez
undefined
avec
undefined
,
undefined
ou
undefined
,
undefined
,
undefined
et
undefined
.
Services clés et configuration
Les services AWS forment une chaîne d’outils étroitement intégrée pour le suivi des expériences, l’enregistrement des modèles, la détection de dérive et l’application de garde-fous de déploiement. Utilisez Amazon SageMaker Experiments pour organiser les exécutions ; appelez
undefined
,
undefined
et
undefined
pour conserver les hyperparamètres et les métriques. Pour la gestion centralisée du cycle de vie des modèles, utilisez le SageMaker Model Registry (
undefined
et
undefined
) et contrôlez le flux de déploiement via l’attribut du paquet de modèle
undefined
qui prend en charge des valeurs telles que “PendingManualApproval”, “Approved” et “Rejected”. Intégrez les approbations manuelles dans un flux CI/CD en invoquant
undefined
pour changer l'
undefined
depuis une fonction AWS Lambda ou une action d’approbation humaine de Step Functions.
Pour la surveillance post-déploiement et la détection de biais/dérive, utilisez SageMaker Model Monitor et SageMaker Clarify. Activez la capture de données en temps réel sur un point de terminaison (endpoint) en définissant
undefined
dans l’appel
undefined
ou
undefined
; spécifiez
undefined
:
undefined
,
undefined
et
undefined
pour collecter des charges utiles (payloads) représentatives. Utilisez
undefined
de Model Monitor pour générer une ligne de base (
undefined
) (JSON
undefined
et
undefined
) à partir d’un jeu de données de référence, puis créez une planification de surveillance avec
undefined
, en fournissant un
undefined
, une
undefined
(cron ou rate) et des
undefined
tels que
undefined
avec
undefined
et
undefined
. Pour l’équité et le biais, utilisez SageMaker Clarify en tant que
undefined
avec les paramètres
undefined
undefined
et
undefined
, ou utilisez le conteneur intégré SageMaker Clarify dans une tâche de traitement (Processing job) et conservez les résultats sur S3 pour les tableaux de bord.
Plusieurs fonctionnalités AWS sont couramment utilisées ensemble pour l’agrégation de données, la préparation de caractéristiques et la détection d’anomalies :
- Amazon S3 pour le stockage et l’isolation sécurisée (politiques de compartiment, S3 Block Public Access et chiffrement KMS via SSE-KMS).
- AWS Glue et AWS Glue Data Catalog pour découvrir, unifier et cataloguer des jeux de données provenant de sources S3 et JDBC.
- Amazon SageMaker Data Wrangler pour les transformations par glisser-déposer et la visualisation automatique des distributions, des valeurs manquantes et de l’asymétrie.
- Amazon SageMaker Feature Store pour la distribution de caractéristiques en ligne et hors ligne avec les API
undefined
et
undefined
et pour des caractéristiques cohérentes entre l’entraînement et l’inférence.
- SageMaker Model Monitor et SageMaker Clarify pour la dérive, le biais et la surveillance.
- Amazon Lookout for Metrics pour la détection automatique d’anomalies dans les séries temporelles, le cas échéant.
Patrons de conception et compromis
Lorsque la charge opérationnelle doit être minimisée, préférez les services gérés et les fonctionnalités d’algorithmes intégrées plutôt que de créer des pipelines ETL ou de surveillance personnalisés. Par exemple, pour l’entraînement d’un classifieur binaire pour la détection de fraude, XGBoost est un choix intégré efficace dans SageMaker qui offre un entraînement à faible latence et des hyperparamètres adaptés au déséquilibre, tels que scale_pos_weight que vous devriez définir sur (nombre_négatifs / nombre_positifs). Configurez les hyperparamètres XGBoost dans l’Estimator ou le conteneur d’entraînement : objective='binary:logistic', eval_metric='aucpr' ou 'auc', et early_stopping_rounds pour mettre fin aux exécutions bruitées. Cela évite de créer des pipelines de suréchantillonnage personnalisés (SMOTE), à moins qu’un échantillonnage synthétique spécifique au domaine ne soit requis.
Pour l’ingénierie des caractéristiques, utilisez SageMaker Data Wrangler pour appliquer des transformations d’encodage (one-hot pour les caractéristiques catégorielles à faible cardinalité, encodage ordinal/label ou encodage cible pour les caractéristiques à haute cardinalité) puis matérialisez les caractéristiques nettoyées dans SageMaker Feature Store ou S3. Data Wrangler élimine une grande partie de la charge opérationnelle et produit des scripts ou des tâches de traitement que vous pouvez réutiliser. Si vous avez besoin d’une sélection de modèle automatisée avec un minimum d’effort, SageMaker Autopilot peut prétraiter automatiquement les caractéristiques mixtes, catégorielles et numériques, et générer des modèles candidats ; cependant, Autopilot abstrait les transformations et peut ne pas être optimal pour des régimes de caractéristiques personnalisés.
La comparaison et la promotion des modèles sont plus robustes lorsque les métriques, les artefacts et la traçabilité sont enregistrés. Utilisez SageMaker Experiments pour comparer les exécutions, puis créez un ModelPackage dans un ModelPackageGroup. Effectuez la promotion en définissant ModelPackageApprovalStatus sur « Approved » et produisez un EndpointConfig faisant référence à l’ARN du package de modèle. Lorsqu’un contrôle humain est requis, laissez le modèle dans l’état « PendingManualApproval » et mettez en place un flux de travail d’approbation humaine à l’aide de Step Functions ou d’AWS CodePipeline avec une action d’approbation qui appelle UpdateModelPackage pour le faire passer à « Approved ».
Pièges courants et critères de décision
Un piège courant consiste à confondre une chute du score F1 en production avec une défaillance du modèle, alors que le problème sous-jacent est une dérive des données. La cause la plus probable d’une baisse durable du score F1 plusieurs mois après le déploiement est une dérive de la distribution des entrées ou une dérive des étiquettes (dérive de concept) plutôt qu’un bug soudain. Pour diagnostiquer, activez
undefined
sur le point de terminaison pour capturer les charges utiles (payloads) des requêtes et des réponses vers S3, exécutez des planifications de surveillance Model Monitor par rapport aux contraintes de référence, et calculez les statistiques de distribution des caractéristiques ainsi que le PSI (indice de stabilité de la population). Exécutez également les vérifications de dérive des données et de biais de Clarify pour détecter les changements qui affectent les métriques d’équité.
Une autre erreur fréquente est de mal gérer le déséquilibre des classes en rééchantillonnant naïvement sans tenir compte des fuites temporelles ou des coûts métier. Préférez d’abord les contrôles au niveau de l’algorithme — pour XGBoost, définissez
undefined
et ajustez
undefined
sur aucpr ou un objectif personnalisé — avant de passer à des stratégies d’échantillonnage qui peuvent introduire des exemples dupliqués. Pour la reproductibilité et le suivi des expérimentations, utilisez toujours les API SageMaker Experiments pour enregistrer les hyperparamètres et les métriques, et enregistrez les paquets de modèles avec les URI des artefacts et les métadonnées de provenance afin que les promotions (mises en production) soient auditables.
Problème Pratique : Scénario d’Utilisation
Société : FinSight Inc. — détection de fraude pour les transactions en ligne avec des données sur Amazon S3 et dans une base MySQL on-premises. Exigences : isolation sécurisée des données, détection et visualisation automatisées des anomalies, approbation manuelle avant le déploiement en production, faible latence de démarrage pour l’entraînement itératif, et versionnage centralisé des modèles avec une surcharge opérationnelle minimale.
Agrégation et sécurité des données : Utilisez AWS Glue pour parcourir (crawl) les journaux de transactions S3 et créer des tables dans le Glue Catalog, définissez le chiffrement des buckets avec SSE-KMS et restreignez l’accès via des politiques IAM et des points de terminaison VPC. Pour MySQL on-premises, utilisez une connexion JDBC AWS Glue à l’intérieur d’un VPC avec un VPN sécurisé ou AWS Direct Connect, ou utilisez AWS DMS pour répliquer les tables requises dans une zone d’atterrissage (landing zone) S3. Enregistrez les jeux de données dans le Glue Data Catalog et accordez aux rôles d’exécution SageMaker un accès selon le principe du moindre privilège.
Préparation des caractéristiques et détection d’anomalies : Utilisez Amazon SageMaker Data Wrangler pour vous connecter au Glue Catalog et à la zone d’atterrissage S3, appliquez des transformations (imputation des valeurs manquantes, encodage des étiquettes pour les variables catégorielles, mise à l’échelle pour les numériques), et exécutez le profilage intégré de Data Wrangler pour visualiser les distributions et signaler les anomalies. Exportez les caractéristiques traitées vers le magasin hors ligne (offline store) de SageMaker Feature Store pour l’entraînement et vers le magasin en ligne (online store) pour les recherches à faible latence lors de l’inférence.
Entraînement du modèle et minimisation de la latence de démarrage : Utilisez un SageMaker Estimator pour XGBoost avec
undefined
,
undefined
, et définissez
undefined
. Pour réduire la latence de démarrage entre les tâches d’entraînement itératives, mettez en cache les sorties de Data Wrangler dans S3 et réutilisez la même image de conteneur d’entraînement et le même type d’instance plutôt que de reconstruire l’ingestion de données à chaque fois ; utilisez SageMaker Pipelines avec
undefined
activé pour que les étapes répétées avec des entrées/hyperparamètres inchangés ignorent le démarrage de l’infrastructure.
- Suivi des expérimentations et sélection du modèle : Instrumentez chaque exécution d’entraînement avec SageMaker Experiments (
undefined
,
undefined
,
undefined
). Utilisez HyperparameterTuner configuré avec
undefined
,
undefined
,
undefined
,
undefined
et
undefined
pour trouver les meilleurs hyperparamètres. Comparez les modèles dans Experiments et enregistrez les candidats choisis dans le SageMaker Model Registry en créant un ModelPackage dans un ModelPackageGroup.
- Approbation manuelle et contrôle du déploiement : Laissez les paquets de modèles nouvellement créés avec le statut
undefined
. Utilisez un workflow AWS Step Functions avec une tâche d’approbation humaine ou une action d’approbation AWS CodePipeline ; une fois approuvé, exécutez
undefined
pour définir l’approbation sur ‘Approved’ et déclencher la création automatique d’un EndpointConfig et l’exécution de
undefined
pour effectuer le déploiement.
- Surveillance, biais et dérive : Activez
undefined
sur le point de terminaison en temps réel avec
undefined
pour Input et Output,
undefined
, et
undefined
. Générez des statistiques de référence avec
undefined
de Model Monitor à partir du jeu de données d’entraînement et planifiez une surveillance continue avec
undefined
. Exécutez SageMaker Clarify en tant que tâche de traitement (processing job) régulièrement pour calculer les métriques de biais et de dérive des données. Si le score F1 tombe en dessous des contraintes de référence, utilisez les alertes de Model Monitor pour déclencher un pipeline de réentraînement automatisé (SageMaker Pipeline) qui enregistre les nouvelles exécutions dans Experiments et produit de nouveaux paquets de modèles pour une revue humaine.
Justification de l’approche AWS : Cette approche utilise les capacités gérées de SageMaker — Data Wrangler et Feature Store pour minimiser la surcharge de prétraitement, XGBoost avec
undefined
pour gérer le déséquilibre sans rééchantillonnage complexe, SageMaker Experiments et Model Registry pour une gestion auditable du cycle de vie des expérimentations et des modèles,
undefined
plus Model Monitor et Clarify pour la détection automatisée de la dérive et de l’équité, et Step Functions/CodePipeline intégrés avec Model Registry pour fournir le portail d’approbation manuelle requis. Ensemble, ces services minimisent la charge opérationnelle tout en préservant la sécurité, la traçabilité et la capacité à réagir à la dégradation du modèle.
← Entraînement de modèles et optimisation des hyperparamètres · Tous les domaines · Déploiement de modèles et inférence →
Entraînez-vous sur ces questions → · Tests chronométrés sur ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Réussissez votre examen →