Learn how to build amazing machine learning applications with this eye opening book.
Review of Building Machine Learning Powered Applications
The following is an in-depth review of the book Building Machine Learning Powered Applications: Going from Idea to Product by Emmanuel Ameisen (Twitter account here).
Machine Learning is a very beautiful theoretical field, and it’s powers and benefits are completely out of doubt. However, if Machine Learning models are not deployed to a productive environment and applications are built, these models serve no practical purpose.
The goal of Building Machine Learning Powered Applications: Going from Idea to Product is to explain in detail how to exploit these Machine Learning models to create beautiful, efficient, and useful applications and products that can provide real value.
Surprisingly, there aren’t many resources available to teach engineers and scientists how to build such products. Many books will teach how to train ML models, or how to build software projects, but very few blend both worlds to teach how to build practical applications that are powered by ML.
If you want to go from theory to product, Building Machine Learning Powered Applications is one of the best available books for it.
About the book
With this book, you will learn the skills necessary to design, build, and deploy applications powered by machine learning. Through the course of this hands-on book, you’ll build an example ML-driven application from initial idea to deployed product. Data scientists, software engineers, and product managers—including experienced practitioners and novices alike—will learn the tools, best practices, and challenges involved in building a real-world ML application step by step.
Author Emmanuel Ameisen, an experienced data scientist who led an AI education program, demonstrates practical ML concepts using code snippets, illustrations, screenshots, and interviews with industry leaders.
This book will help you to:
- Define your product goal and set up a machine learning problem
- Build your first end-to-end pipeline quickly and acquire an initial dataset
- Train and evaluate your ML models and address performance bottlenecks
- Deploy and monitor your models in a production environment
From out point of view, a book like this one was very much needed in the Machine Learning world, and it seems we were right: the AI industry is becoming more mature every day and going from just proof of concepts to real deployments and complex projects.
In an over-populated internet of ML books and publications, this book provides a unique, practical, and contrasted set of tools to teach you to build end to end Machine Learning applications. If you are looking for the wisdom, good advice, learnt lessons from an experienced practitioner for developing Artificial Intelligence products, this is the book to go to.
Lets learn a little more about him.
About the author
Emmanuel Ameisen, is a machine learning engineer at Stripe, the payments platform, with a wide experience in implementing and deploying predictive analytics and machine learning solutions. Recently, he led Insight Data Science’s AI program, directing more than a hundred machine learning projects. Emmanuel holds graduate degrees in Artificial Intelligence, computer engineering, and management from three of France’s top schools.
During the extension of the book, you can see that Emmanuel has been involved in the creation of countless machine learning-powered applications, developing a strong intuition about good approaches, pitfalls to avoid, and the necessary components in the proper sequence to creating valuable ML applications and products. He does a great job communicating all this knowledge, and making the reading through the book a nice flowing sensation.
Lets carry on to see the contents of the book.
Building Machine Learning powered applications is divided into 4 main sections, each of which consist on at least 2 different chapters.
The first section talks about how to frame Machine Learning models inside a business problem or opportunity, and how to identify what is the real goal of the model, how it is going to be used, and different strategies. It teaches how to plan an ML application and measure success.
Section II speaks about how to build a pipeline for data pre-processing, feature engineering, labelling data, always with lessons learned from experience and practical advice that goes beyond the merely coding aspects. It explains how to build a working ML model.
Section III teaches us how to streamline the training and evaluation of our models, how to debug them, which is something that is of upmost importance to improve the performance of our models. What should we do if our model is over-fitting and we have data limitations? What about under-fitting? Should we try different models or try to get more data? It details ways to improve the model until it fulfils your original vision.
Lastly, section IV dives into how to successfully deploy our Machine Learning models, different kind of deployments and production environments, and highlights the importance of monitoring and setting up an efficient CI/CD framework. It covers deployment and monitoring strategies.
The chapters of the book are the following:
- I. Find the Correct ML Approach
- 1. From Product Goal to ML Framing
- 2. Create a Plan
- II. Build a Working Pipeline
- 3. Build Your First End-to-End Pipeline
- 4. Acquire an Initial Dataset
- III. Iterate on Models
- 5. Train and Evaluate Your Model
- 6. Debug Your ML Problems
- 7. Using Classifiers for Writing Recommendations
- IV. Deploy and Monitor
- 8. Considerations When Deploying Models
- 9. Choose Your Deployment Option
- 10. Build Safeguards for Models
- 11. Monitor and Update Models
Also, there is a GitHub companion Repo for the book with all the code that is included in it.
Lastly, you might be wondering who this book is for, or what you need to know beforehand if you intend to read it. Lets finish by looking at the prerequisites that we, and the author, think are best before reading Building Machine Learning Powered Applications.
First of all, this book assumes some familiarity with programming. It mainly uses Python for technical examples, and assumes that the reader is familiar with the syntax. If you’d like to refresh your Python knowledge, we recommend taking a look at our Python Books category, or if you prefer, our Python Programming Courses section.
Also, while it is not an overly technical book, we think it will best enjoyed by people with previous Machine Learning knowledge, who know the theory about the algorithms and are also familiar with the implementations. If you have said background, and complete the reading of this book you will achieve an outstanding level of understanding of how to create amazing Machine Learning applications.
While there are piles of Machine Learning books out there that detail how ML algorithms work and how to implement them, this is one of the few books we have come across that really dives into how to successfully carry out a Machine Learning projects from end to end.
This is very important, as being able to build a model with high accuracy or very little error is awesome, but if we later don’t manage to efficiently and painlessly translate this model into an application or product, this amazing accuracy is close to useless.
It is not a very famous book like Python Machine Learning or Hands on Machine Learning with Sckit-Learn and Tensorflow, as these other two books are best to teach you about Machine Learning and how to implement the actual models.
Building Machine Learning Powered applications is a book that takes this previous modelling knowledge and gives you the tools and learnings to take those models to the next level, in order to make products and applications successfully, so that they can be enjoyed and used by people.
If you want to take a peak at the contents to see if you would be interested in the book, here you can find a link to the contents, preface, and Chapter 1 on PDF. If you decide you want to buy it on Amazon here:
Building Machine Learning Powered Applications
- Ameisen, Emmanuel (Author)
- English (Publication Language)
- 260 Pages - 02/11/2020 (Publication Date) - O'Reilly Media (Publisher)
For more Machine learning books like this one, check out our section: Machine Learning books.
Quotes about the book: Building Machine Learning Powered Applications
“So many books about machine learning skip the hardest parts: refining the problem, debugging models, and deploying to customers. But this book focuses on them so you can move your projects from an idea to making an impact.” – Alexander Gude, Staff Data Scientist, Intuit
“If you are looking for practical advice on how to get ML models into production, what could go wrong and what to watch out for, this is your book. I wish I had it 10 years ago. Lots of the lessons I had to learn the hard way.” – Lukas Tencer, Senior Manager, ML at Twitch
“This book was sorely needed in the ML world. There are tons of books out there that detail how ML algorithms work, but this is the first I’ve come across that explicitly details how to make ML projects work.” – Jon Krohn, Chief Data Scientist, Untapt