Managing Machine Learning Models in Production
Submitted by Anand Chitipothu (@anandology) on Saturday, 31 March 2018
Deploying machine models in production is not a trivial task.
There are many challenges like managing multiple versions of models, maintaining staging and production models, keeping track of model performance, logging, scaling etc.
This session explores the tools, techniques and system architecture of a cloud platform built to solve these challenges and the new opportunities it opens up.
Typically, data scientists build machine learning models and ask IT specialists in their team to deploy these models. With teams becoming smaller and the quest for increased productivity, few data science teams have luxury of specialists at their beck and call.
Even with dedicated IT teams, managing models in production is not a trivial task. As the number of models and team size increases the complexity only grows.
How to manage multiple versions of a model? How to version control the datasets used for model building? How to tag production and staging versions of a model? How to switch from one version to another seamlessly without any service disruption? How to monitor performance of a live model?
This session explores tools, techniques and system architecture used to build a cloud-based platform to address all the above issues with couple of case studies.
- Understand the complexities involved in building & managing machine learning products
- How these complexities change as the team size grow
- Understand the importance of investing early in the appropriate tools
- Techniques, tools and ideas that can be adopted in any typical ML workflow
Anand has been crafting beautiful software since a decade and half. He’s now building a data science platform, rorodata, which he recently co-founded. He regularly conducts advanced programming courses through Pipal Academy. He is co-author of web.py, a micro web framework in Python. He has worked at Strand Life Sciences and Internet Archive.