Machine Learning Development Process
1. Problem Definition
A key phase where business problems are defined and prioritized. It is worth spending time to get this right, as subsequent effort could be ineffective and wasted.
2. Domain Knowledge Transfer and Infrastructure Setup
Businesses are often experts in their own domain. This domain expertise is valuable to help direct future solutions. In this phase we also ensure any prerequisites are available, including working with our very own ML engineers and MLOps consultants to ensure the infrastructure meets our needs.
3. Exploratory Data Analysis
Honestly, a lot of value comes from a thorough, principled analysis of the data. If you understand the data and the domain, then modelling is a lot easier.
4. Data Processing / Feature Generation
Production pipelines need to ensure that the data is present and correct, and represented in the right way to be effective. This phase feeds into the modelling phase, so good, representative features here make the modelling much easier.
5. Modelling
Finally we’re at a point where we can start to solve the problem with a model. We exhaustively attempt to understand which models are the most appropriate and why. Explainable AI is a key feature.
6. Experimentation
Depending on the goals and the complexity of the model, we sometimes need to develop robust ways of scaling out training. This is necessary to establish which model/hyperparameters/settings/code/etc. is the right choice.
7. Evaluation
Thorough and robust evaluation practices are vital for directing development. These results are often shared with stakeholders as a representation of progress. Note how we often iterate back to the modelling and EDA phases to apply new learnings.
8. Deployment and Monitoring
In the final phase we deploy and operate our models. Do not underestimate this phase; there are a lot of pitfalls, especially when operating at scale. We collaborate with our very own expert team of MLOps consultants to help here.