Continuous integration and continuous deployment (CI/CD)

End-to-End Machine Learning

Joshua Stapleton

Machine Learning Engineer

CI/CD in the ML lifecycle

Deployment phase of machine learning lifecycle

End-to-End Machine Learning

CI/CD principles

Continuous Integration(CI)

  • Regularly merging to central repository
  • Often involves automatic testing for identifying bugs

Continuous Integration as represented by an updating cloud

Continuous Deployment (CD)

  • Automatically deploying updates in codebase to production
  • Often combined with CI

Continuous Deployment as represented by a rocket

End-to-End Machine Learning

CI/CD in machine learning

CI/CD is critical for production / iteration

  • E.g.: automate including new patient data
  • Helps to avoid data drift

 

CI/CD in ML:

  • Regularly retrain models
  • Testing performance
  • Automated, rule-based deployment
End-to-End Machine Learning

CI/CD with AWS Elastic Beanstalk

AWS Elastic Beanstalk (EB):

  • Fully managed service for deployment and scaling of applications + services
  • Install EB
eb init

eb create heart_disease_env
eb deploy
eb open
End-to-End Machine Learning

Alternatives to EB (1)

Azure Machine Learning:

  • Real-time scoring services
  • Managed compute resources for training
  • Performance monitoring in production environments
End-to-End Machine Learning

Alternatives to EB (2)

GCP App Engine:

  • Similar alternative to AWS EB or Azure Machine Learning
End-to-End Machine Learning

Alternatives to EB (3)

Kubernetes:

  • Open-source container orchestration system
  • Automates deployment, scaling, management of containerized applications
  • Compatibility with multiple major cloud platforms
  • Steeper learning curve, but offers greater control
End-to-End Machine Learning

Alternatives to EB (4)

Many, many more!

End-to-End Machine Learning

Let's practice!

End-to-End Machine Learning

Preparing Video For Download...