Неперервна інтеграція та неперервне розгортання (CI/CD)

End-to-End Machine Learning

Joshua Stapleton

Machine Learning Engineer

CI/CD у життєвому циклі ML

Етап розгортання у життєвому циклі машинного навчання

End-to-End Machine Learning

Принципи CI/CD

Continuous Integration (CI)

  • Регулярне злиття до центрального репозиторію
  • Часто з автоматичним тестуванням для виявлення багів

Continuous Integration як оновлювана хмара

Continuous Deployment (CD)

  • Автоматичне розгортання оновлень кодової бази в продакшн
  • Зазвичай поєднується з CI

Continuous Deployment у вигляді ракети

End-to-End Machine Learning

CI/CD у машинному навчанні

CI/CD критично важливі для продакшну й ітерацій

  • Напр.: автоматизуйте включення нових даних пацієнтів
  • Допомагає уникати дрейфу даних

 

CI/CD у ML:

  • Регулярно перевчайте моделі
  • Тестуйте продуктивність
  • Автоматизоване розгортання за правилами
End-to-End Machine Learning

CI/CD з AWS Elastic Beanstalk

AWS Elastic Beanstalk (EB):

  • Повністю керований сервіс для розгортання й масштабування застосунків і сервісів
  • Install EB
eb init

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

Альтернативи EB (1)

Azure Machine Learning:

  • Сервіси для оцінювання в реальному часі
  • Керовані обчислювальні ресурси для тренування
  • Моніторинг продуктивності у продакшн-середовищах
End-to-End Machine Learning

Альтернативи EB (2)

GCP App Engine:

  • Подібна альтернатива до AWS EB або Azure Machine Learning
End-to-End Machine Learning

Альтернативи EB (3)

Kubernetes:

  • Відкрита система оркестрації контейнерів
  • Автоматизує розгортання, масштабування та керування контейнеризованими застосунками
  • Сумісний із кількома основними хмарними платформами
  • Крутіша крива навчання, зате більше контролю
End-to-End Machine Learning

Альтернативи EB (4)

Їх ще дуже багато!

End-to-End Machine Learning

Давайте потренуємось!

End-to-End Machine Learning

Preparing Video For Download...