View profile

Machine Learning Life Cycle (ML4Devs, Issue 7)

Machine Learning for Developers
A reader pointed out that I paid only passing attention to the ML life cycle in Machine Learning vs. Traditional Software issue.
Iterative software development and DevOps CI/CD infinite loop are now common sense. I prefer the flexibility to adjust according to circumstances instead of an elaborate process structure that must be rigidly followed. That’s why a simple ML project life cycle graph felt sufficient to me:
It is understandable that some might consider it oversimplified or even useless as everything connects to everything else. So I decided to research and learn about processes to develop data products, and share them with you.
Knowledge Discovery in Database (KDD) Process
Extracting insights from data predates Big Data. KDD Process (Knowledge Discovery and Data Mining: Towards a Unifying Framework by Fayyad et. al., 1996) defines a framework for data mining in databases. KDD process has 5 stages:
  • Selection
  • Pre-processing
  • Transformation
  • Data Mining
  • Interpretation / Evaluation
Modern data pipelines have pretty much the same steps.
Knowledge Discovery in Database (KDD) Process
Knowledge Discovery in Database (KDD) Process
CRoss-Industry Standard Process for Data Mining (CRISP-DM)
CRISP-DM connects data mining to business and deployment. It breaks the data mining process into six major phases:
  • Business Understanding
  • Data Understanding
  • Data Preparation
  • Modeling
  • Evaluation
  • Deployment
CRoss-Industry Standard Process for Data Mining (CRISP-DM)
CRoss-Industry Standard Process for Data Mining (CRISP-DM)
Team Data Science Process Life Cycle
Microsoft’s Team Data Science Process (TDSP) Life Cycle defines four stages:
  • Business Understanding
  • Data Acquisition and Understanding
  • Modeling
  • Deployment
Microsoft’s Team Data Science Process (TDSP) Life Cycle
Microsoft’s Team Data Science Process (TDSP) Life Cycle
It is envisioned as a waterfall model ending with Customer Acceptance, but it doesn’t require much imagination to extend it to be interactive.
MLOps Loop
Iterative-Incremental MLOps Process has three broad phases:
  • Designing the ML-powered application
  • ML Experimentation and Development
  • ML Operations
Iterative-Incremental Process in MLOps
Iterative-Incremental Process in MLOps
There is another popular MLOps loop:
MLOps Loop: ML + Dev + Ops
MLOps Loop: ML + Dev + Ops
Machine Learning Loop
The Machine Learning Loop is an interesting way of superimposing code loop and data loop. The following illustration is self-explanatory.
Machine Learning Loop made of Code Loop and Data Loop
Machine Learning Loop made of Code Loop and Data Loop
Conclusion
I hope this overview helps you in picking and customizing a process to suit your ML project needs.
You may want to take another look at the previous issue “MLOps for Continuous Integration, Delivery, and Training of ML Models” and examine how that maps to these processes.
ML4Devs is a weekly newsletter for software developers with the aim:
To curate and create resources for practitioners to design, develop, deploy, and maintain ML applications at scale to drive measurable positive business impact.
Each issue discusses a topic from a developer’s viewpoint. Please connect on Twitter or Linkedin, and send your feedback, experiences, and suggestions.
Did you enjoy this issue? Yes No
Satish Chandra Gupta
Satish Chandra Gupta @scgupta

ML4Devs is a weekly newsletter for software developers.

The aim is to curate and create resources for practitioners to design, develop, deploy, and maintain ML applications at scale to drive measurable positive business impact.

Each issue discusses a topic from a developer’s viewpoint.

If you don't want these updates anymore, please unsubscribe here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Created with Revue by Twitter.