Amazon MLA-C01: Modelevaluatie en Selectie — Studiegids

Onderdeel van de AWS Machine Learning Engineer Associate MLA-C01 — Studiegids. Oefen met geverifieerde antwoorden in het Amazon-examencentrum, of doe getimede oefentests op ExamRoll.io.

Accurate modelevaluatie begint met het selecteren van metrics die aansluiten bij het bedrijfsdoel en de kenmerken van de klassen/labels. Voor binaire classificatie is de confusiematrix — true positives, false positives, false negatives, true negatives — de canonieke basis waaruit precisie (TP / (TP+FP)), recall of sensitiviteit (TP / (TP+FN)), specificiteit (TN / (TN+FP)) en accuraatheid ((TP+TN) / totaal) worden afgeleid. Precisie en recall vormen een afweging die wordt vastgelegd in de F1-score (2 * precisie * recall / (precisie + recall)), wat het harmonisch gemiddelde is en de balans tussen false positives en false negatives benadrukt. Wanneer de klasse-onbalans ernstig is, kan accuraatheid misleidend zijn; de oppervlakte onder de ROC-curve (AUC) meet de scheidbaarheid over verschillende drempelwaarden en is in veel gevallen robuust tegen onbalans, terwijl de precision-recall AUC (AUPRC) informatiever is wanneer de prevalentie van de positieve klasse laag is. Voor regressie bestraft de root mean squared error (RMSE) grotere fouten kwadratisch en is gevoelig voor uitschieters; gebruik de mean absolute error (MAE) wanneer robuustheid tegen uitschieters de voorkeur heeft.

Drempelwaardeselectie is een operationele beslissing: veel algoritmen produceren een waarschijnlijkheidsscore en vereisen een drempelwaarde om deze om te zetten naar klasselabels. Gebruik ROC- en precision-recall-curves om drempelwaarden te vinden die een gekozen doelstelling maximaliseren, zoals de F1-score of een bedrijfsgewogen kostenfunctie. Een praktische methodologie is om per drempelwaarde de precisie, recall en F1-score te berekenen vanuit de confusiematrix en vervolgens de drempelwaarde te kiezen die voldoet aan een doelstelling voor precisie of recall. Kruisvalidatie vult dit aan door de variantie in de schattingen van de metrics te verminderen: gebruik gestratificeerde K-fold voor classificatie met onbalans om de klassenverhoudingen over de folds te behouden. In code geeft StratifiedKFold van scikit-learn met n_splits en shuffle=True plus een vaste random_state reproduceerbare folds; log de metrics per fold en aggregeer de gemiddelden en standaarddeviaties om de verwachte variantie te kwantificeren. Wanneer u SageMaker gebruikt, kunt u CV-runs orkestreren als afzonderlijke training jobs en deze volgen met de SageMaker Experiments API’s: CreateExperiment, CreateTrial, CreateTrialComponent, en vervolgens LogMetric en LogHyperParameter voor elke fold.

De bias-variantie-afweging is leidend voor keuzes met betrekking tot modelcomplexiteit en regularisatie. Modellen met een hoge bias underfitten en produceren een hoge foutmarge op zowel de training- als validatiesets, terwijl modellen met een hoge variantie overfitten en een lage trainingsfout maar een hoge validatiefout hebben. Verhelp bias door de modelcapaciteit te vergroten, informatieve features toe te voegen of de regularisatiesterkte te verminderen; verhelp variantie door regularisatie (L1/L2) toe te voegen, de complexiteit te verminderen, dropout te gebruiken of de hoeveelheid trainingsdata te vergroten. Gebruik schattingen uit kruisvalidatie om variantie te detecteren: een grote spreiding in de metrics over de folds impliceert een hoge variantie. Voor iteratieve training op SageMaker, integreer early stopping (stel voor XGBoost de hyperparameter early_stopping_rounds en eval_metric=‘auc’ of ’error’ in) en gebruik SageMaker Automatic Model Tuning met een Bayesiaanse strategie om de hyperparameter_space te doorzoeken; configureer de HyperparameterTuner met objective_metric_name, objective_type=‘Maximize’ of ‘Minimize’, hyperparameter_ranges, max_jobs en max_parallel_jobs.

Belangrijkste services en configuratie

AWS-services vormen een hecht geïntegreerde toolchain voor het volgen van experimenten, het registreren van modellen, het detecteren van drift en het afdwingen van deployment-guardrails. Gebruik Amazon SageMaker Experiments om runs te organiseren; roep sagemaker.create_experiment, sagemaker.create_trial en sagemaker.log_metric aan om hyperparameters en metrics te persisteren. Gebruik voor gecentraliseerd beheer van de modellevenscyclus de SageMaker Model Registry (ModelPackageGroup en ModelPackage) en stuur de deployment-flow aan via het modelpakketattribuut ModelPackageApprovalStatus, dat waarden ondersteunt zoals “PendingManualApproval”, “Approved” en “Rejected”. Integreer handmatige goedkeuringen in een CI/CD-flow door UpdateModelPackage aan te roepen om de approval_status te wijzigen vanuit een AWS Lambda-functie of een Step Functions human-approval-actie.

Gebruik voor monitoring na de implementatie en voor detectie van bias/drift SageMaker Model Monitor en SageMaker Clarify. Activeer real-time data-capture op een endpoint door DataCaptureConfig in te stellen in de CreateEndpointConfig- of UpdateEndpointConfig-aanroep; specificeer CaptureOptions: [{“CaptureMode”:“Input”}, {“CaptureMode”:“Output”}], DestinationS3Uri en SamplingPercentage om representatieve payloads te verzamelen. Gebruik Model Monitor DefaultModelMonitor om een GenerateBaseline (baseline_statistics en baseline_constraints JSON) te genereren vanuit een referentiedataset en maak vervolgens een monitoringschema met create_monitoring_schedule, waarbij u een MonitoringScheduleConfig, schedule_expression (cron of rate) en MonitoringInputs zoals EndpointInput met local_path en S3InputMode opgeeft. Gebruik voor eerlijkheid en bias SageMaker Clarify als een ProcessingJob met de clarify_config-parameters compute_bias en compute_data_drift, of gebruik de ingebouwde SageMaker Clarify in een Processing job en sla de resultaten op in S3 voor dashboards.

Verschillende AWS-mogelijkheden worden vaak samen gebruikt voor data-aggregatie, feature-voorbereiding en anomaliedetectie:

Ontwerppatronen en afwegingen

Wanneer de operationele overhead geminimaliseerd moet worden, geef dan de voorkeur aan managed services en ingebouwde algoritme-features in plaats van het bouwen van custom ETL- of custom monitoring-pipelines. Als je bijvoorbeeld een binaire classifier voor fraudedetectie traint, is XGBoost een efficiënte, ingebouwde keuze in SageMaker die training met lage latentie en hyperparameters biedt die zijn afgestemd op ongebalanceerde data, zoals scale_pos_weight, die je moet instellen op (num_negative / num_positive). Configureer XGBoost-hyperparameters in de Estimator of de training container: objective=‘binary:logistic’, eval_metric=‘aucpr’ of ‘auc’, en early_stopping_rounds om runs met veel ruis te beëindigen. Dit voorkomt de noodzaak om custom oversampling-pipelines (SMOTE) te bouwen, tenzij domeinspecifieke synthetische sampling vereist is.

Gebruik voor feature engineering SageMaker Data Wrangler om encoding-transformaties toe te passen (one-hot voor categorische features met lage kardinaliteit, ordinal/label encoding of target encoding voor features met hoge kardinaliteit) en materialiseer vervolgens de opgeschoonde features naar SageMaker Feature Store of S3. Data Wrangler neemt een groot deel van de operationele last weg en produceert scripts of processing jobs die je kunt hergebruiken. Als je geautomatiseerde modelselectie met minimale inspanning nodig hebt, kan SageMaker Autopilot automatisch gemengde categorische en numerieke features preprocessen en kandidaatmodellen genereren; Autopilot abstraheert echter de transformaties en is mogelijk niet optimaal voor custom feature-regimes.

Modelvergelijking en -promotie is het meest robuust wanneer metrieken, artefacten en lineage worden vastgelegd. Gebruik SageMaker Experiments om runs te vergelijken en maak vervolgens een ModelPackage aan in een ModelPackageGroup. Promoveer door ModelPackageApprovalStatus op “Approved” te zetten en een EndpointConfig te produceren die verwijst naar de ARN van het model package. Waar menselijke controle vereist is, laat het model in de status “PendingManualApproval” staan en koppel een menselijk goedkeuringsworkflow met behulp van Step Functions of AWS CodePipeline met een approval-actie die UpdateModelPackage aanroept om het naar “Approved” te verplaatsen.

Veelvoorkomende valkuilen en beslissingscriteria

Een veelvoorkomende valkuil is het verwarren van een daling in de productie-F1-score met een modelfout, terwijl het onderliggende probleem data drift is. De meest waarschijnlijke oorzaak van een aanhoudende daling van de F1-score maanden na de implementatie is ‘input distribution drift’ of ’label drift’ (concept drift), in plaats van een plotselinge bug. Om een diagnose te stellen, activeer DataCaptureConfig op het endpoint om request- en response-payloads vast te leggen in S3, voer Model Monitor-monitoringschema’s uit ten opzichte van de baseline-beperkingen, en bereken statistieken over de feature-distributie en de PSI (population stability index). Voer ook Clarify data drift- en bias-controles uit om verschuivingen te detecteren die de fairness-statistieken beïnvloeden.

Een andere veelgemaakte fout is het verkeerd omgaan met klasse-onbalans door naïef te resamplen zonder rekening te houden met ’temporal leakage’ of bedrijfskosten. Geef eerst de voorkeur aan controles op algoritmeniveau — stel voor XGBoost scale_pos_weight in en stem eval_metric af op aucpr of een custom objective — voordat je overgaat op samplingstrategieën die gedupliceerde voorbeelden kunnen introduceren. Gebruik voor reproduceerbaarheid en het bijhouden van experimenten altijd de SageMaker Experiments API’s om hyperparameters en statistieken te loggen en registreer model packages met artifact-URI’s en herkomstmetadata, zodat promoties auditeerbaar zijn.

Praktijkprobleem: Use-Case Scenario

Bedrijf: FinSight Inc. — fraudedetectie voor online transacties met data in Amazon S3 en on-premises MySQL, vereiste voor veilige data-isolatie, geautomatiseerde anomaliedetectie en visualisatie, handmatige goedkeuring vóór productie-implementatie, lage opstartlatentie voor iteratieve training, en gecentraliseerd modelversiebeheer met minimale operationele overhead.

  1. Data-aggregatie en beveiliging: Gebruik AWS Glue om de S3-transactielogs te crawlen en Glue Catalog-tabellen aan te maken, stel bucket-encryptie in met SSE-KMS en beperk de toegang via IAM-policies en VPC-endpoints. Gebruik voor on-prem MySQL een AWS Glue JDBC-verbinding binnen een VPC met een beveiligde VPN of AWS Direct Connect, of gebruik AWS DMS om de vereiste tabellen te repliceren naar een S3 landing zone. Registreer datasets in de Glue Data Catalog en geef SageMaker execution roles ’least-privilege’-toegang.

  2. Feature-voorbereiding en anomaliedetectie: Gebruik Amazon SageMaker Data Wrangler om verbinding te maken met de Glue Catalog en de S3 landing zone, pas transformaties toe (imputatie van ontbrekende waarden, label encoding voor categorische variabelen, schalen voor numerieke waarden), en voer de ingebouwde profilering van Data Wrangler uit om distributies te visualiseren en anomalieën te signaleren. Exporteer de verwerkte features naar de offline store van SageMaker Feature Store voor training en naar de online store voor lookups met lage latentie tijdens inferentie.

  3. Modeltraining en minimaliseren van opstartlatentie: Gebruik SageMaker Estimator voor XGBoost met objective='binary:logistic', eval_metric='aucpr', en stel scale_pos_weight in op (neg_count/pos_count). Om de opstartlatentie bij iteratieve training jobs te verminderen, cache de outputs van Data Wrangler in S3 en hergebruik dezelfde training container image en instance type in plaats van de data-ingestie telkens opnieuw op te bouwen; gebruik SageMaker Pipelines met cache_config ingeschakeld zodat herhaalde stappen met ongewijzigde inputs/hyperparameters het opstarten van de infrastructuur overslaan.

  4. Bijhouden van experimenten en modelselectie: Instrumenteer elke trainingsrun met SageMaker Experiments (CreateExperiment, CreateTrial, LogMetric). Gebruik HyperparameterTuner geconfigureerd met objective_metric_name='validation:aucpr', objective_type='Maximize', strategy='Bayesian', max_jobs en max_parallel_jobs om de beste hyperparameters te vinden. Vergelijk modellen in Experiments en registreer de gekozen kandidaten in de SageMaker Model Registry door een ModelPackage aan te maken in een ModelPackageGroup.

  5. Handmatige goedkeuring en deployment gating: Laat nieuw aangemaakte model packages in de status ModelPackageApprovalStatus='PendingManualApproval'. Gebruik een AWS Step Functions-workflow met een menselijke goedkeuringstaak of een AWS CodePipeline approval action; na goedkeuring, voer UpdateModelPackage uit om de goedkeuringsstatus op ‘Approved’ te zetten en trigger het automatisch aanmaken van een EndpointConfig en UpdateEndpoint om de deployment uit te voeren.

  6. Monitoring, bias en drift: Activeer DataCaptureConfig op het real-time endpoint met CaptureOptions voor Input en Output, DestinationS3Uri en SamplingPercentage. Genereer baseline-statistieken met GenerateBaseline van Model Monitor op basis van de trainingsdataset en plan continue monitoring in met create_monitoring_schedule. Voer SageMaker Clarify regelmatig uit als een processing job om bias- en data drift-statistieken te berekenen. Als de F1-score onder de baseline-beperkingen zakt, gebruik dan Model Monitor-alerts om een geautomatiseerde hertrainingspipeline (SageMaker Pipeline) te triggeren die nieuwe runs logt in Experiments en nieuwe model packages produceert voor menselijke beoordeling.

AWS-onderbouwing: Deze aanpak maakt gebruik van beheerde SageMaker-mogelijkheden—Data Wrangler en Feature Store om de overhead van preprocessing te minimaliseren, XGBoost met scale_pos_weight om onbalans te hanteren zonder complexe resampling, SageMaker Experiments en Model Registry voor auditeerbaar beheer van de experiment- en modellevenscyclus, DataCaptureConfig plus Model Monitor en Clarify voor geautomatiseerde detectie van drift en fairness, en Step Functions/CodePipeline geïntegreerd met Model Registry om de vereiste handmatige goedkeuringspoort te bieden. Deze services samen minimaliseren de operationele last terwijl de beveiliging, traceerbaarheid en het vermogen om te reageren op modeldegradatie behouden blijven.


Modeltraining en Hyperparameteroptimalisatie · Alle domeinen · Modelimplementatie en Inferentie

Oefen deze vragen → · Getimede oefening op 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.

Slaag voor je examen →

Blader door Amazon →

Related guides

Alles-in-één toegang

Eén abonnement. Elk examen.

Elk plan ontgrendelt onbeperkt zoeken naar antwoorden, oefentests, AI-uitleg en de volledige bronnenbibliotheek — in meer dan 20 talen.

Maandelijks
24.87
Just €0.83/day
Alles inbegrepen:
  • Onbeperkt zoeken naar antwoorden
  • Onbeperkte oefentests
  • AI-gestuurde uitleg
  • Volledige bronnenbibliotheek
  • 20+ talen
  • Wekelijkse contentupdates
  • Beloningen & verwijzingen
  • Prioriteitsondersteuning
Start gratis proefperiode

Geen creditcard vereist*

Beste waarde
12 maanden
179.87
Just €0.49/daySave 40%
Alles inbegrepen:
  • Onbeperkt zoeken naar antwoorden
  • Onbeperkte oefentests
  • AI-gestuurde uitleg
  • Volledige bronnenbibliotheek
  • 20+ talen
  • Wekelijkse contentupdates
  • Beloningen & verwijzingen
  • Prioriteitsondersteuning
Start gratis proefperiode

Geen creditcard vereist*

✓ Gratis plan inbegrepen · ✓ Annuleer op elk moment · ✓ Alle plannen ontgrendelen het volledige product