Комплексное управление жизненным циклом машинного обучения с помощью MLflow на блоках данных

Databricks — это облачная платформа обработки данных, обработки данных и машинного обучения, основанная на архитектуре Lakehouse. Это новая архитектура управления данными, сочетающая в себе преимущества озер и хранилищ данных.

Управляемый MLflow — это служба, построенная на платформе MLflow с открытым исходным кодом, разработанной Databricks. Сервис позволяет управлять всем жизненным циклом машинного обучения с надежностью, безопасностью и масштабируемостью, подходящими для корпоративных проектов. Он предоставляет интегрированную среду для отслеживания и защиты обучения модели машинного обучения и проектов машинного обучения, работающих в рабочей среде. Давайте углубимся в тему.

официальная документация:https://docs.databricks.com/mlflow/index.html

Преимущества:

  1. Разработка моделей.Ускорьте и упростите управление жизненным циклом машинного обучения с помощью стандартизированной платформы для разработки готовых к производству моделей машинного обучения. С помощью управляемых рецептов MLflow вы можете запускать проекты машинного обучения, с легкостью выполнять быстрые итерации и поставлять высококачественные модели. модели для серийного производства.
  2. Отслеживание экспериментов. Проводите эксперименты с любой библиотекой машинного обучения, фреймворком или языком и автоматически отслеживайте параметры, показатели, код и модели каждого эксперимента. Используя MLflow в Databricks, вы можете безопасно обмениваться результатами экспериментов, управлять ими и сравнивать их с соответствующими артефактами и версиями кода.
  3. Управление моделями.Используйте единое центральное место для обнаружения моделей машинного обучения и обмена ими, совместно работайте над их переходом от экспериментов к онлайн-тестированию и производству, интегрируйте с рабочими процессами утверждения и управления и конвейерами непрерывной интеграции и непрерывной интеграции, а также отслеживайте развертывание машинного обучения и их производительность. Реестр моделей MLflow облегчает обмен опытом и знаниями, а также помогает вам сохранять контроль.
  4. Развертывание модели. Быстрое развертывание производственных моделей для пакетного вывода на Apache Spark™ или в виде REST API с помощью встроенной интеграции с контейнерами Docker, Azure ML или Amazon SageMaker. С помощью Managed MLflow на Databricks вы можете эксплуатировать и отслеживать производственные модели с помощью планировщика заданий Databricks и автоматически управляемых кластеров для масштабирования в зависимости от потребностей бизнеса.

1. Учетная запись Databricks

Поскольку версия сообщества блоков данных бесплатна, каждый может зарегистрироваться сегодня, и это лучший способ начать работу с блоками данных. Azure, которая поставляется с платной версией после окончания пробного периода (14 дней). Таким образом, мы можем создать учетную запись databricks в облаке.

Databricks на AWS позволяет хранить все данные S3 и управлять ими на простой открытой платформе Lakehouse, которая сочетает в себе лучшее из хранилищ данных и озер данных, чтобы вы могли унифицировать все свои аналитические и ИИ-рабочие нагрузки.

Databricks в Google Cloud обеспечивает преимущества открытого исходного кода в сочетании с управляемым портфелем облачной аналитики и продуктов искусственного интеллекта. Это дает клиентам выбор и гибкость для управления инфраструктурой и доступа к данным с помощью необходимых им инструментов.

Azure Databricks предоставляет последние версии Apache Spark и позволяет легко интегрироваться с библиотеками с открытым исходным кодом. Разворачивайте кластеры и быстро стройте в полностью управляемой среде Apache Spark с глобальным масштабом и доступностью Azure.

2. Записная книжка Databricks и рабочая область

Как только мы войдем в версию сообщества databricks, появится панель ниже, из которой мы можем создать блокнот и запустить несколько экспериментов.

Используйте «Создать» в левой строке меню, чтобы создать блокнот. После того, как мы откроем или создадим блокнот, он должен быть прикреплен к кластеру, чтобы начать его запуск, и его можно просмотреть в правом верхнем углу следующим образом:

Затем его можно проверить с помощью интегрированного сервиса Mlflow. Откройте набор запущенных экспериментов следующим образом:

На изображении выше показаны все эксперименты и их детали, такие как гиперпараметры, используемые на каждом этапе проверки, тест AUC и т. д.

3. Детали эксперимента MLflow

мы можем просмотреть и сравнить запуски на странице сведений об эксперименте MLflow, доступной через значок внешней ссылки в верхней части боковой панели Эксперимент.

На странице сведений об эксперименте нажмите значок "+", чтобы развернуть родительский запуск, затем выберите все запуски, кроме родительского, и нажмите Сравнить. Вы можете визуализировать различные прогоны, используя график с параллельными координатами, который показывает влияние различных значений параметров на метрику.

Отсюда мы можем сравнить разные тренировочные прогоны и визуализировать их, чтобы лучше понять.

4. Сервировочные модели

Модели обслуживания могут быть сложными, поскольку требуют запуска отдельной системы обслуживания, такой как Kubernetes, к которой разработчики машинного обучения могут не иметь доступа. Более того, разработчики должны быть осторожны при обновлении версий используемых там моделей по мере разработки новых моделей и перенаправления запросов в нужную модель.

Databricks MLflow Model Serving решает эту проблему за счет интеграции с реестром моделей. Реестр моделей может хранить модели из всех библиотек машинного обучения (TensorFlow, scikit-learn и т. д.) и позволяет хранить несколько версий модели, просматривать их и продвигать на разные этапы жизненного цикла, такие как подготовка и производство.

Подробнее: https://www.databricks.com/blog/2020/06/25/announcing-mlflow-model-serving-on-databricks.html

когда мы завершим или захотим просмотреть детали моделей MLflow , нажмите на конкретную модель в экспериментальном интерфейсе, откроется страница, как показано ниже:

Сделайте прогноз с помощью искры и pandas df. Мы также можем зарегистрировать его в реестре моделей для контроля версий и развернуть в качестве конечной точки REST для обслуживания в реальном времени.

Реестр моделей MLflow — это центр совместной работы, где команды могут обмениваться моделями ML, работать вместе от экспериментов до онлайн-тестирования и производства, интегрироваться с рабочими процессами утверждения и управления, а также отслеживать развертывания ML и их производительность.

Заключение

Эта статья поможет вам начать работу с блоками данных и узнать, как мы можем использовать интегрированную службу MLflow из блоков данных. Отслеживание, управление и оптимизация моделей — медленный процесс. Продолжайте экспериментировать с MLFlow, со временем вы станете лучше управлять моделями.

Вот код записной книжки с набором данных, который мы можем использовать для начала работы с блоками данных и MLflow. мы также можем загрузить эту записную книжку для быстрого старта с databricks. И установить необходимые пакеты рекомендуется при первом использовании.

Источник: сообщество Databricks.



Отслеживайте обучение машинному обучению без проблем!

Спасибо за прочтение

Это все на данный момент. До скорого! Заботиться. Если вы поддержите мою работу, не забудьте хлопнуть в ладоши. Если у вас есть какие-либо вопросы, дайте мне знать в разделе комментариев.

Свяжитесь со мной в Linkedin

Найди меня на Github