Continuous integration and continuous deployment (CI/CD)

Machine Learning end-to-end

Joshua Stapleton

Machine Learning Engineer

CI/CD in the ML lifecycle

Deployment phase of machine learning lifecycle

Machine Learning end-to-end

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

Machine Learning end-to-end

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
Machine Learning end-to-end

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
Machine Learning end-to-end

Alternatives to EB (1)

Azure Machine Learning:

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

Alternatives to EB (2)

GCP App Engine:

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

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
Machine Learning end-to-end

Alternatives to EB (4)

Many, many more!

Machine Learning end-to-end

Let's practice!

Machine Learning end-to-end

Preparing Video For Download...