The Azure Data Scientist Associate certification (DP-100) validates applying data science and ML techniques with Azure Machine Learning. This guide covers the concepts that show up most often in scenario questions.
1. Azure Machine Learning Workspace#
The Azure ML workspace is your central hub for all machine learning activities. Understanding its components is fundamental to the exam.
Tip
Think of the Azure ML workspace as your data science laboratory — it contains all your experiments, data, compute resources, and deployed models in one organized place.
Core Workspace Components#
| Component | Description | Purpose |
|---|---|---|
| Compute Instances | Development VMs | Interactive coding, notebooks |
| Compute Clusters | Scalable VM pools | Training jobs, batch processing |
| Datastores | Storage connections | Secure access to Azure storage |
| Data Assets | Versioned datasets | Reproducibility, lineage tracking |
| Environments | Dependency definitions | Consistent runtime configuration |
| Models | Registered ML models | Versioning, deployment |
Compute Options Compared#
| Type | Scales to Zero | Best For | GPU Support |
|---|---|---|---|
| Compute Instance | No | Development, notebooks | Yes |
| Compute Cluster | Yes | Training jobs | Yes |
| Serverless Compute | Yes | On-demand jobs | Yes |
| Kubernetes | Configurable | Enterprise deployment | Yes |
Note
Cost optimization tip: Compute Clusters can scale to 0 nodes when idle, while Compute Instances continue to incur costs. For batch training, always prefer clusters.
Workspace Security#
- Managed Identity — Azure ML can use managed identities to access resources without storing credentials
- Private Link — Keep all traffic within your virtual network
- Role-Based Access Control — Fine-grained permissions for workspace resources
- Customer-Managed Keys — Encrypt workspace data with your own keys
Test Your Understanding#
A team needs to run GPU training jobs that scale based on queue depth and minimize costs when idle. Which compute type should they use?
2. Data Management & Feature Engineering#
Effective data management is critical for reproducible ML workflows. Azure ML provides robust tools for versioning and tracking data.
Data Assets#
Data Assets in Azure ML provide:
- Versioning — Track changes to your datasets over time
- Lineage — Know exactly which data version trained each model
- Reproducibility — Recreate any experiment with the exact same data
- Sharing — Collaborate across teams with consistent data access
from azure.ai.ml.entities import Data
from azure.ai.ml.constants import AssetTypes
# Create a versioned data asset
my_data = Data(
name="customer-churn-data",
version="1.0",
path="azureml://datastores/blob_store/paths/data/churn.csv",
type=AssetTypes.URI_FILE,
description="Customer churn dataset for Q4 2025"
)
ml_client.data.create_or_update(my_data)
Tip
Always register your training data as versioned Data Assets. When a model performs unexpectedly, you can trace back to exactly which data version was used for training.
Feature Engineering Best Practices#
| Technique | When to Use | Azure ML Tool |
|---|---|---|
| Imputation | Missing values | Pandas, scikit-learn |
| Encoding | Categorical variables | OneHotEncoder, LabelEncoder |
| Scaling | Numeric features | StandardScaler, MinMaxScaler |
| Feature Selection | High dimensionality | SelectKBest, RFECV |
| Time-based splits | Time series data | TimeSeriesSplit |
Handling Class Imbalance#
Class imbalance is a common exam topic. Key techniques:
- SMOTE — Synthetic Minority Over-sampling Technique
- Class Weights — Adjust algorithm to penalize minority class errors more
- Stratified Sampling — Maintain class proportions in train/test splits
- Undersampling — Reduce majority class (use with caution)
A pipeline needs to automatically use the latest version of a dataset while maintaining full reproducibility. What should you use?
3. Model Training & Hyperparameter Tuning#
Azure ML provides powerful tools for training models at scale and optimizing hyperparameters.
Training with Jobs#
Azure ML jobs encapsulate your training logic and can run on any compute target:
from azure.ai.ml import command
# Define a training job
training_job = command(
code="./src",
command="python train.py --learning-rate ${{inputs.lr}} --epochs ${{inputs.epochs}}",
inputs={
"lr": 0.01,
"epochs": 100
},
environment="AzureML-sklearn-1.0-ubuntu20.04-py38-cpu@latest",
compute="gpu-cluster",
experiment_name="churn-classification"
)
# Submit the job
ml_client.jobs.create_or_update(training_job)
Hyperparameter Tuning (Sweep Jobs)#
| Sampling Method | Description | Best For |
|---|---|---|
| Grid | Exhaustive search | Small search spaces |
| Random | Random combinations | Large search spaces |
| Bayesian | Intelligent selection | Expensive evaluations |
Early Termination Policies#
| Policy | Behavior | Use Case |
|---|---|---|
| Bandit | Terminates runs outside slack factor of best run | Aggressive pruning |
| Median Stopping | Terminates runs below median at each interval | Balanced approach |
| Truncation Selection | Cancels lowest X% of runs | Resource-constrained |
Note
Exam tip: Random sampling with Bandit early termination is often the best choice when you have limited compute budget — it explores quickly while eliminating poor performers.
AutoML#
Azure AutoML automates model selection and hyperparameter tuning:
- Classification — Logistic regression, tree-based models, neural networks
- Regression — Linear regression, gradient boosting, neural networks
- Time Series Forecasting — ARIMA, Prophet, deep learning
- Computer Vision — Image classification, object detection
- NLP — Text classification, named entity recognition
You have limited compute budget and want to quickly find good hyperparameters while eliminating poor configurations. What combination should you use?
4. Model Deployment & Endpoints#
Deploying models effectively is critical for delivering ML value to production applications.
Endpoint Types#
| Type | Use Case | Scaling | Latency |
|---|---|---|---|
| Managed Online Endpoints | Real-time inference | Autoscaling | Low (ms) |
| Kubernetes Endpoints | Enterprise deployment | Kubernetes autoscaling | Low (ms) |
| Batch Endpoints | Large-scale scoring | Job-based | Higher (minutes-hours) |
Managed Online Endpoints#
Online endpoints provide:
- Autoscaling — Scale based on CPU, memory, or request metrics
- Blue-green deployment — Traffic splitting between model versions
- Health monitoring — Built-in liveness and readiness probes
- Managed infrastructure — No cluster management required
from azure.ai.ml.entities import ManagedOnlineEndpoint, ManagedOnlineDeployment
# Create endpoint
endpoint = ManagedOnlineEndpoint(
name="churn-prediction-endpoint",
auth_mode="key"
)
ml_client.online_endpoints.begin_create_or_update(endpoint).result()
# Create deployment
deployment = ManagedOnlineDeployment(
name="blue",
endpoint_name="churn-prediction-endpoint",
model=model,
environment=env,
code_configuration=CodeConfiguration(
code="./src", scoring_script="score.py"
),
instance_type="Standard_DS3_v2",
instance_count=2
)
ml_client.online_deployments.begin_create_or_update(deployment).result()
Tip
Use traffic splitting for safe rollouts: Start with 10% traffic to the new model version, monitor for errors, then gradually increase to 100%.
Custom Environments#
For models with specific dependencies:
# conda.yaml
name: pytorch-inference
channels:
- pytorch
- conda-forge
dependencies:
- python=3.9
- pytorch=2.0
- torchvision
- pip:
- azure-ai-ml
- inference-schema
A model needs to handle variable traffic with spikes during business hours. Which endpoint type with what capability is most appropriate?
5. MLOps & Responsible AI#
Modern ML requires robust operational practices and ethical considerations.
MLflow Integration#
Azure ML integrates natively with MLflow for experiment tracking:
import mlflow
# Enable Azure ML as the MLflow backend
mlflow.set_tracking_uri(ml_client.tracking_uri)
# Log experiments
with mlflow.start_run():
mlflow.log_param("learning_rate", 0.01)
mlflow.log_metric("accuracy", 0.95)
mlflow.sklearn.log_model(model, "model")
ML Pipelines#
Pipelines enable reproducible, automated workflows:
| Component | Purpose |
|---|---|
| Pipeline | Orchestrates multi-step workflows |
| Components | Reusable, modular steps |
| Schedules | Automated pipeline triggers |
| Data passing | Artifacts flow between steps |
Note
Best practice: Break your ML workflow into modular components — data prep, training, evaluation, registration. This enables reuse and makes debugging easier.
Model Monitoring & Drift Detection#
Production models degrade over time due to:
- Data Drift — Input data distribution changes
- Concept Drift — Relationship between features and target changes
- Model Degradation — Accuracy decreases over time
Azure ML provides:
- Data drift monitoring — Detect when production data differs from training data
- Model performance monitoring — Track prediction accuracy over time
- Automated alerts — Trigger retraining when thresholds are breached
Responsible AI Dashboard#
The Responsible AI dashboard provides:
| Analysis | Purpose |
|---|---|
| Error Analysis | Identify cohorts where model fails |
| Fairness | Assess model bias across groups |
| Interpretability | Understand feature importance |
| Counterfactuals | What-if analysis for predictions |
| Causal | Understand causal relationships |
Warning
Before deploying any model to production, use the Responsible AI dashboard to verify the model doesn't exhibit unexpected bias and performs consistently across all user groups.
A deployed model shows declining accuracy over months as customer behavior changes. What automated solution should you implement?
Know your range before test day#
DP-100 rewards hands-on familiarity with Azure ML. Sit a short diagnostic, then practice free on the gaps before a timed module.
- Timed diagnostic with domain-level breakdown
- Clear signal on what to drill next
- Practice free; timed sittings and readiness range on Pro
Take the free DP-100 assessment →
Next step: Start practicing free on the DP-100 hub, or sit a short diagnostic first.