MLOps c Kubeflow: компоненты ML-конвейера

Kubeflow примеры курсы обучение сравнение MLOps, MLOPS примеры курсы обучение, Kubeflow примеры курсы обучение, курсы MLOps MLFlow Machine Learning DevOps Для дата-инженеров, MLFlow MLOps, обучение инженеров Machine Learning, Школа Больших Данных Учебный Центр Коммерсант

Помимо популярного MLflow от Databrics, специалисты по машинному обучению часто используют другой MLOps-инструмент – Kubeflow, о чем мы писали здесь. Сегодня разберем, как работает это средство, упрощающее разработку и развертывание конвейеров Machine Learning на платформе контейнерной виртуализации Kubernetes.

Что такое конвейеры Kubeflow и как они работают

Как мы уже отмечали, Kubeflow — это система оркестровки контейнеризированных ML-конвейеров, выполняемых в инфраструктуре Kubernetes. Вспомнив типичный MLOps-цикл разработки и развертывания системы Machine Learning, отметим в ней следующие основные шаги: обучение, тестирование и обслуживание. С практической точки зрения все эти шаги связанными, но самостоятельными рабочими процессами, которые могут выполняться изолированно на платформе контейнерной виртуализации Kubernetes.

Ключевым компонентом Kubeflow является платформа Kubeflow Pipelines, которая состоит из следующих модулей:

  • пользовательский интерфейс;
  • интерактивные блокноты Jupyter;
  • ML-конвейеры в контейнерах Docker;
  • Katib для настройки гиперпараметров;
  • модуль управления метаданными;
  • KFServing, который указывает спецификацию на сериализованный файл ML-модели в облачном хранилище, чтобы получить ее в конечной точке HTTP;
  • модуль Knative, который помогает сервису KFServing управлять маршрутизацией трафика и входом в развернутую модель.

Все эти компоненты обеспечивают сквозную оркестровку конвейеров машинного обучения, возможность тестировать множество идей и управлять различными экспериментами с ML-моделями. Благодаря контейнерной структуре MLOps-инженер может повторно использовать все компоненты и конвейеры для быстрого создания решений без необходимости их перестройки. Kubeflow Pipelines доступен как основной компонент Kubeflow или как отдельная установка.

В настоящее время конструктор контейнеров в Kubeflow Pipelines подготавливает учетные данные только для Google Cloud Platform (GCP), но можно хранить образы контейнеров в других реестрах, помимо Google Container Registry, настроив учетные данные для извлечения образа.

ML-конвейер — это описание рабочего процесса машинного обучения, включая все его компоненты и то, как они объединяются в виде графа. Конвейер включает определение входных данных (параметров), необходимых для его запуска, а также входных и выходных данных каждого компонента. Компонент конвейера — это автономный набор пользовательского кода, упакованный в Docker-образ, который выполняет один шаг в конвейере, например, предварительную обработку данных или их преобразование, обучение модели и пр. Компонент похож на функцию тем, что у него есть имя, параметры, возвращаемые значения и тело.

После разработки конвейера MLOps-инженер может загрузить его и поделиться им в пользовательском интерфейсе Kubeflow Pipelines.

Графическое представление в пользовательском интерфейсе Kubeflow Pipelines выполнения конвейера во время выполнения реализуется через графы. На графе показаны шаги, выполненные или выполняемые конвейером, со стрелками, указывающими родительские и дочерние отношения между его компонентами, представленными каждым шагом.

Однократное выполнение конвейера называется запуск. Запуски включают в себя неизменяемый журнал всех проводимых экспериментов, и разработаны так, чтобы быть автономными, чтобы обеспечить воспроизводимость. Можно отслеживать ход выполнения запуска, просмотрев его страницу сведений в пользовательском интерфейсе Kubeflow Pipelines, показывается граф времени выполнения, выходные артефакты и журналы для каждого шага выполнения.

Все ML-конвейеры Kubeflow Pipelines построены с использованием SDK, который предоставляет набор пакетов Python с функциями определения и запуска рабочих процессов машинного обучения.

Как применять эти и другие современные инструменты MLOps в проектах аналитики больших данных, вы узнаете на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:

Я даю свое согласие на обработку персональных данных и соглашаюсь с политикой конфиденциальности.

Источники

  1. https://medium.com/nerd-for-tech/mlops-machine-learning-pipelines-using-kubeflow-fc06508a3f0d
  2. https://www.kubeflow.org/docs/started/introduction/
Поиск по сайту