Book Profile
Machine Learning Engineering
Andriy Burkov · 2019
A practical, end-to-end guide to the engineering principles and best practices required to successfully build, deploy, and maintain machine learning systems in production.
Get the book →While many resources teach the theory and algorithms of machine learning, this book bridges the critical gap between building a model and deploying a robust, scalable, and maintainable ML system in the real world. It addresses the entire project lifecycle, from defining business goals and collecting data to feature engineering, model deployment, monitoring, and maintenance. Readers will learn to navigate the common pitfalls that cause most ML projects to fail, such as data leakage, distribution shift, and the lack of proper infrastructure. It's a comprehensive manual for data analysts becoming ML engineers, current ML engineers seeking more structure, and software architects who need to integrate ML models into production systems.
What it argues
This model outlines how the adoption of systematic machine learning engineering practices and the management of project conditions influence the quality and robustness of the resulting ML system, ultimately determining the project's success and business impact. The model follows the structure of the book, which presents the ML project lifecycle as a path to success.
Key ideas it contributes
- Project Scoping and Prioritization — The initial phase of defining a clear, achievable goal, estimating complexity, and prioritizing projects based on impact, cost, and feasibility.
- Data Collection and Preparation — The systematic process of sourcing, gathering, validating, cleaning, labeling, partitioning, and versioning the data required for a machine learning project, while actively managing potential issues such as accessibility, bias, and leakage.
- Systematic Feature Engineering — The practice of programmatically and creatively transforming raw data into informative, reliable, and maintainable numerical features for the model, including selection, synthesis, and storage in a feature store.
- Rigorous Model Training and Tuning — The structured process of selecting algorithms, building pipelines, tuning hyperparameters, and managing tradeoffs like bias-variance to produce an optimal model.
- Comprehensive Model Evaluation — The use of both offline (on test sets) and online (e.g., A/B testing) evaluation methods to assess model performance against business-relevant metrics and ensure properties like fairness and robustness.
- Robust Deployment and Serving — The implementation of automated, versioned, and resilient deployment patterns (e.g., server, container, serverless) and serving strategies (e.g., canary) to make the model available in production.
- Continuous Monitoring and Maintenance — The ongoing process of monitoring model performance, data distributions, and system health in production to detect degradation, trigger alerts, and manage model updates.
- ML Team Structure and Alignment — The organizational structure of the ML team and its alignment with business objectives, including collaboration between data scientists, engineers, and business stakeholders.