# Machine Learning Design Patterns — designpattern.fyi

> 30 patterns across the ML lifecycle - from data representation to responsible AI

- **Section**: Machine Learning Design Patterns
- **Canonical URL**: https://designpattern.fyi/machine_learning/

---

## Patterns in this Category


### [Batch Serving](https://designpattern.fyi/machine_learning/batch-serving/)
- **Summary**: Precomputes predictions asynchronously using distributed data processing
- **Subcategory**: Serving and Operational Resilience


### [Bridged Schema](https://designpattern.fyi/machine_learning/bridged-schema/)
- **Summary**: Forward-fits old-format data into new schemas to preserve historical training data
- **Subcategory**: Training Process and Optimization


### [Cascade](https://designpattern.fyi/machine_learning/cascade/)
- **Summary**: Decomposes difficult problems into a sequence of smaller, more homogeneous ML problems
- **Subcategory**: Problem Framing and Model Structure


### [Checkpoints](https://designpattern.fyi/machine_learning/checkpoints/)
- **Summary**: Periodic saving of model state during training for fault tolerance and early stopping
- **Subcategory**: Training Process and Optimization


### [Continuous Model Evaluation](https://designpattern.fyi/machine_learning/continuous-model-evaluation/)
- **Summary**: Ongoing pipeline to detect model performance degradation over time
- **Subcategory**: Serving and Operational Resilience


### [Distribution Strategy](https://designpattern.fyi/machine_learning/distribution-strategy/)
- **Summary**: Scales training across multiple processors or machines through parallelism
- **Subcategory**: Training Process and Optimization


### [Embedding](https://designpattern.fyi/machine_learning/embedding/)
- **Summary**: Dense, lower-dimensional vector representations that capture latent similarity
- **Subcategory**: Data and Feature Representation


### [Ensemble](https://designpattern.fyi/machine_learning/ensemble/)
- **Summary**: Combines predictions from multiple models to improve accuracy and robustness
- **Subcategory**: Problem Framing and Model Structure


### [Explainable Predictions](https://designpattern.fyi/machine_learning/explainable-predictions/)
- **Summary**: Provides human-interpretable explanations for individual model predictions
- **Subcategory**: Trust, Evaluation and Responsible AI


### [Fairness Lens](https://designpattern.fyi/machine_learning/fairness-lens/)
- **Summary**: Evaluates and designs systems for equitable treatment across relevant subgroups
- **Subcategory**: Trust, Evaluation and Responsible AI


### [Feature Cross](https://designpattern.fyi/machine_learning/feature-cross/)
- **Summary**: Combines multiple features to represent interaction effects explicitly
- **Subcategory**: Data and Feature Representation


### [Feature Store](https://designpattern.fyi/machine_learning/feature-store/)
- **Summary**: Centralized system for computing, versioning, and serving features consistently
- **Subcategory**: Data and Feature Representation


### [Hashed Feature](https://designpattern.fyi/machine_learning/hashed-feature/)
- **Summary**: Bounded representation for high-cardinality categorical data using hash functions
- **Subcategory**: Data and Feature Representation


### [Heuristic Benchmark](https://designpattern.fyi/machine_learning/heuristic-benchmark/)
- **Summary**: Compares model performance against simple non-ML baselines for meaningful evaluation
- **Subcategory**: Trust, Evaluation and Responsible AI


### [Hyperparameter Tuning](https://designpattern.fyi/machine_learning/hyperparameter-tuning/)
- **Summary**: Systematic search for optimal model hyperparameters
- **Subcategory**: Training Process and Optimization


### [Keyed Predictions](https://designpattern.fyi/machine_learning/keyed-predictions/)
- **Summary**: Passes identifying keys through serving pipeline to match predictions with inputs
- **Subcategory**: Serving and Operational Resilience


### [Microservices ML Platform](https://designpattern.fyi/machine_learning/microservices_ml_platform/)
- **Summary**: Decomposes the ML platform into independent services: feature store, experiment tracking, training, model registry, serving gateway, monitoring.
- **Subcategory**: MLOps


### [ML Pipeline](https://designpattern.fyi/machine_learning/ml-pipeline/)
- **Summary**: Automates the workflow of data ingestion, preprocessing, model training, evaluation, and deployment.
- **Subcategory**: MLOps


### [Monolithic MLOps Pipeline](https://designpattern.fyi/machine_learning/monolithic_mlops_pipeline/)
- **Summary**: All stages of the ML lifecycle run in a single orchestrated pipeline managed by tools like Airflow or Prefect.
- **Subcategory**: MLOps


### [Multilabel](https://designpattern.fyi/machine_learning/multilabel/)
- **Summary**: Classification where examples can belong to multiple classes simultaneously
- **Subcategory**: Problem Framing and Model Structure


### [Multimodal Input](https://designpattern.fyi/machine_learning/multimodal-input/)
- **Summary**: Combines different data types (images, text, tabular) into a unified model
- **Subcategory**: Data and Feature Representation


### [Neutral Class](https://designpattern.fyi/machine_learning/neutral-class/)
- **Summary**: Adds an explicit uncertain class for genuinely ambiguous cases
- **Subcategory**: Problem Framing and Model Structure


### [Rebalancing](https://designpattern.fyi/machine_learning/rebalancing/)
- **Summary**: Techniques for ensuring models pay adequate attention to rare classes during training
- **Subcategory**: Problem Framing and Model Structure


### [Reframing](https://designpattern.fyi/machine_learning/reframing/)
- **Summary**: Changes how the ML problem is expressed, often switching between regression and classification
- **Subcategory**: Problem Framing and Model Structure


### [Repeatable Sampling](https://designpattern.fyi/machine_learning/repeatable-sampling/)
- **Summary**: Deterministic, reproducible train/validation/test splits that prevent data leakage
- **Subcategory**: Training Process and Optimization


### [Stateless Serving Function](https://designpattern.fyi/machine_learning/stateless-serving-function/)
- **Summary**: Exports models as pure stateless functions for production serving
- **Subcategory**: Serving and Operational Resilience


### [Transfer Learning](https://designpattern.fyi/machine_learning/transfer-learning/)
- **Summary**: Reuses pretrained model representations for new tasks with less data
- **Subcategory**: Training Process and Optimization


### [Transform](https://designpattern.fyi/machine_learning/transform/)
- **Summary**: Ensures identical feature transformation logic at training and serving time
- **Subcategory**: Data and Feature Representation


### [Two-Phase Predictions](https://designpattern.fyi/machine_learning/two-phase-predictions/)
- **Summary**: Splits inference into fast local model and heavier cloud model for efficiency
- **Subcategory**: Serving and Operational Resilience


### [Useful Overfitting](https://designpattern.fyi/machine_learning/useful-overfitting/)
- **Summary**: Deliberate overfitting when the goal is to approximate a known, deterministic function
- **Subcategory**: Training Process and Optimization


### [Windowed Inference](https://designpattern.fyi/machine_learning/windowed-inference/)
- **Summary**: Externalizes time-dependent feature computation into stream processing
- **Subcategory**: Serving and Operational Resilience


### [Workflow Pipeline](https://designpattern.fyi/machine_learning/workflow-pipeline/)
- **Summary**: Orchestrates ML process as discrete, executable components with clear dependencies
- **Subcategory**: Serving and Operational Resilience



---

## Machine-Readable Resources
- **JSON Feed**: https://www.designpattern.fyi/api/patterns.json
- **OpenAPI 3.1**: https://www.designpattern.fyi/api/openapi.json
- **llms.txt**: https://www.designpattern.fyi/llms.txt
