A scannable reference of architectural patterns the MLA-C01 exam tests. Read top-to-bottom, or jump to a section.
Data Preparation for ML
Pick a visual data-prep tool.
ML-focused, integrates with SageMaker Studio + flow β Processing job β Pipeline β Notebook export β SageMaker Data Wrangler. Generic data cleaning with reusable recipes, profiling, no SageMaker dependency β AWS Glue DataBrew. 50 TB+ Spark with custom code β Amazon EMR.
Why: Data Wrangler is the SageMaker-native option (300+ transforms, datetime extraction, exports to Pipeline/Processing). DataBrew is recipe-based and source-agnostic. EMR handles scale and arbitrary Spark.
Label 100,000 images cost-efficiently - want human + automated labeling.
Amazon SageMaker Ground Truth with automated data labeling enabled. After an initial human-labeled subset, Ground Truth trains a model and auto-labels high-confidence samples.
Why: Active learning typically cuts labeling cost by up to 70%. A2I is for human review of model predictions, not bulk labeling.
Multiple annotators disagree; need a senior reviewer to verify a sample of labels.
Ground Truth label verification (audit) workflow. A subset of labels is routed to a review workforce that approves, rejects, or adjusts. Combine with annotation consolidation for multi-worker majority voting.
Same engineered features needed at training (batch) and inference (sub-10ms).
Amazon SageMaker Feature Store with both online + offline stores enabled on the feature group. Online store backs real-time GetRecord; offline store (Parquet in S3) backs training.
Why: Eliminates train/serve skew without a custom DynamoDB β S3 sync.
Join two feature groups for training without leaking future feature values.
Point-in-time join against the offline store using the event-time column. Each training row sees only feature values that existed at its event timestamp.
Why: Plain JOIN on latest values causes data leakage by exposing post-event feature drift to the model.
Pick a storage format and layout for ML data lake on S3 with frequent column-subset reads + partition filters.
Parquet (columnar, compressed) partitioned by the most-filtered column (e.g. date or region). Drives column pruning + partition pruning in Athena and SageMaker.
Numerical column has missing values that correlate with another feature (e.g. income missing depends on employment type).
Group-based median imputation (median per employment type). Preserves the relationship; mean is sensitive to outliers; dropping loses data; zero adds bias.
Binary classification with 0.3% positive class.
SMOTE oversampling on the training fold only (after split). Combine with PR-curve / F1 evaluation, not accuracy.
Why: Apply oversampling AFTER splitting to avoid leakage. Accuracy is misleading on imbalanced data.
PCA. Transforms correlated features into uncorrelated principal components ranked by variance.
Pick a train/val/test split.
Imbalanced classification β stratified split (preserves class ratio). Time-series β chronological split (train on early period, test on latest); never random-shuffle. IID tabular β random.
ML Model Development
Pick a SageMaker built-in algorithm.
Tabular classification/regression β XGBoost or Linear Learner. Multi-class text classification at scale β BlazingText (supervised). Time-series with related series and seasonality β DeepAR. Unsupervised anomaly detection on numeric β Random Cut Forest. Topic modeling β Neural Topic Model. Translation / Seq2Seq β Sequence-to-Sequence. Pixel-level classes β Semantic Segmentation. Paired-entity embeddings (user/item) β Object2Vec.
Custom training framework / proprietary tokenizer not in built-ins.
BYOC (Bring Your Own Container): Docker image with the code and dependencies, push to Amazon ECR, reference in SageMaker training. Keeps managed infra (Spot, distributed, lifecycle) without giving up customization.
Small image dataset (~2,000) for medical classification.
Transfer learning from a model pre-trained on ImageNet (e.g. ResNet). Fine-tune the last layers. SageMaker Image Classification supports it directly.
Why: Training from scratch on small data overfits. Pre-trained features (edges, textures) transfer cleanly to medical imagery.
Fine-tune a pre-trained foundation model fast without writing custom training code.
SageMaker JumpStart fine-tuning API: pick model ID, supply dataset in expected format (typically JSONL), launch a fine-tuning job, deploy to an endpoint from JumpStart.
Continue training the existing model on monthly new labels - do not start from scratch.
Incremental training: pass the previous model artifacts as input. Supported by Image Classification, Object Detection, Semantic Segmentation built-ins.
Model fits on one GPU but data is huge β data parallelism (replicate model, split batches, AllReduce gradients). Model does not fit on one GPU β model parallelism (split layers/tensors across GPUs). 10B+ params β SageMaker model parallel library (tensor + pipeline parallel).
Training loss keeps falling, validation loss starts rising after epoch 50.
Overfitting. Apply early stopping at the validation-loss minimum, plus dropout / L2 weight decay. More layers makes it worse.
Pick the right classification metric.
Imbalanced + rare positive matters β recall, F1, PR curve / Average Precision (NOT ROC AUC, which is inflated by many TNs). Multi-class with imbalance β macro-averaged F1. Threshold-independent ranking β AUC. Probability calibration β log loss / Brier.
Regression model over-predicts at the high end and under-predicts at the low end.
Plot residuals vs predicted value; use Mean Error (signed) for systematic bias. RMSE / MAE / RΒ² hide direction.
Each input can belong to multiple classes simultaneously.
Sigmoid activation per output neuron with binary cross-entropy loss (independent probabilities). Softmax + categorical cross-entropy assumes mutually exclusive classes.
Stack multiple base models with a meta-learner.
k-fold cross-validation: each base model produces out-of-fold predictions on its held-out fold; collect across folds and train the meta-learner on those.
Why: Training base models and predicting on the same training set leaks information into the meta-learner.
Track and compare many training runs (params, metrics, artifacts).
SageMaker Experiments. Pass `experiment_config` (experiment + trial + trial component) to the training job; SageMaker auto-logs hyperparameters, input config, metrics, and artifacts.
Detect training pathologies (vanishing gradient, loss not decreasing, exploding tensor) without rewriting the script.
SageMaker Debugger with built-in rules (`VanishingGradient`, `LossNotDecreasing`, `ExplodingTensor`, `Overfit`). Captures tensors via hooks; evaluates rules on the fly.
Deploy a TensorFlow model to ARM edge devices; need it small + fast.
SageMaker Neo. Compiles for the target hardware; up to 25Γ faster, ~1/10th memory. Deploy via the DLR runtime; combine with IoT Greengrass for offline edge.
Input distribution looks unchanged but prediction quality has shifted.
SageMaker Clarify Feature Attribution Drift Monitor (SHAP-based). Detects concept drift via shifting feature importances. Pair with Model Quality monitor when ground truth is available.
Accuracy dropped but input feature distributions are unchanged.
Concept drift (label/feature relationship changed). Data drift was ruled out. Fix: retrain on recent labeled data.
Check the dataset for bias before training.
SageMaker Clarify pre-training bias metrics. Class Imbalance (CI) for sample-size disparity; Difference in Positive Proportions of Labels (DPL) for label-rate disparity; KL/JS divergence for distributional gaps.
Notebook needs to read training data from one S3 bucket and write artifacts to another.
Custom IAM policy: `s3:GetObject` on the training bucket/prefix and `s3:PutObject` on the artifacts bucket/prefix, attached to the SageMaker execution role. Avoid `AmazonS3FullAccess`.
Attribute-based access control (ABAC) with IAM condition `aws:ResourceTag/project`. Resources tagged `project=A` accessible only to roles whose policies match.
Encrypt training data and model artifacts with customer-managed keys + rotation.
SSE-KMS with a Customer Managed Key (CMK). KMS rotation, key policies, CloudTrail audit. Specify the KMS key in training job + endpoint config (volume + output) for SageMaker to use it.
Container must not make outbound network calls; data should stay inside SageMaker copy-channels.
Set `EnableNetworkIsolation=true` on the training/processing job or endpoint. SageMaker copies S3 input channels in before the container runs; container has no outbound.
Run SageMaker in a private subnet with NO NAT/Internet Gateway. Add VPC endpoints - gateway endpoint for S3, interface endpoints for SageMaker API + Runtime + ECR + STS + CloudWatch Logs.
Enforce that all SageMaker resources use VPC + KMS + approved instance types.
Preventive β SageMaker Service Catalog products (pre-approved configs) and IAM condition keys (`sagemaker:VpcSecurityGroupIds`, `sagemaker:VolumeKmsKey`) that deny non-compliant API calls. Detective β AWS Config managed/custom rules.