Логотип Зефирнет

Обзор MLOps с инструментами с открытым исходным кодом

Дата:

Эта статья была опубликована в рамках Блогатон по Data Science.

Ядром проекта по науке о данных являются данные и их использование для построения прогностических моделей, и все заинтересованы и сосредоточены на создании модели машинного обучения, которая даст нам почти идеальный результат, имитирующий реальный бизнес-сценарий. Пытаясь достичь такого результата, многие склонны игнорировать различные другие аспекты проекта по науке о данных, особенно операционные аспекты. Поскольку проекты машинного обучения носят итеративный характер, отслеживание всех факторов, конфигураций и результатов само по себе может стать очень сложной задачей.

С ростом и рассредоточенностью групп специалистов по обработке и анализу данных эффективное сотрудничество между командами становится критически важным. Инструменты с открытым исходным кодом, которые мы рассмотрим в этом блоге, а именно Студия ДВК и МЛФлоу поможет нам решить некоторые из этих проблем, автоматически отслеживая изменения/результаты каждой итерации. Чтобы добавить больше, оба инструмента дают нам очень интерактивный пользовательский интерфейс, где результаты аккуратно демонстрируются и, конечно же, пользовательский интерфейс настраивается !!.

Любые предпосылки?

Все, что нам нужно, это основы машинного обучения, Python и учетная запись контроля версий, например: Github. В этом блоге Kaggle's Набор данных по сердечно-сосудистым заболеваниям в Южной Африке будет использоваться для проведения наших экспериментов. Нашей целевой переменной будет ИБС (ишемическая болезнь сердца).

Внимание: мы будем использовать один и тот же набор данных и строить одну и ту же модель для простоты как для вариантов использования DVC Studio, так и для MLflow. Наша цель — понять особенности обоих инструментов, а не тонко настроить построение модели.

Студия ДВК

DVC — это инструмент/библиотека с открытым исходным кодом, которую можно подключить к инструментам контроля версий, таким как Github, Gitlab, Bitbucket и т. д., для импорта проектов машинного обучения для экспериментов и отслеживания. В студии есть пользовательский интерфейс для отслеживания экспериментов/показателей. Чтобы узнать больше о DVC, изучите его функции.

Установка и настройка: Ассоциация пип установить dvc должно подойти для установки. Дополнительные сведения об установке версии для Windows см. установить ДВК. Вы можете скачать/клонировать код с Github для быстрой справки. Вы можете скачать/клонировать код с Github для быстрой справки.

Мы загрузим набор данных, разделим его, а затем выполним шаг построения модели. Весь код/файлы можно найти в папке src — пропустим пошаговое руководство по коду в этом разделе, чтобы сделать блог относительно коротким. Вы можете получить доступ к полному коду и пошаговому руководству из Блог.

Прежде чем двигаться дальше, давайте взглянем на то, как эксперимент и KPI отслеживаются в DVC.

Студия DVC для MLOps
Отслеживание экспериментов в DVC

Источник: Автор

Как вы могли заметить выше, вывод находится в консоли, определенно не интерактивной, а как насчет графиков, которые так важны для моделей ML? Есть ли способ отфильтровать результаты по определенному порогу? например: если нам нужно просмотреть эксперименты с точностью выше 0.7. Единственный способ — написать фрагмент кода для фильтрации этих конкретных данных. Вот где студия DVC делает это очень простым и интерактивным. Мы рассмотрим пользовательский интерфейс в следующих разделах.

Студия ДВК: Настройте студию DVC, выполнив следующие шаги.

Шаг 1: Перейти к URL-адресу https://studio.iterative.ai, Войдите в свой Github, и вы сможете увидеть Добавить представление в правом верхнем углу экрана.

Шаг 2: Репозиторий GitHub, который у нас есть, должен быть сопоставлен со студией DVC, нажав на Настройте параметры интеграции с Git.

Шаг 3: после завершения шага 2 откроется раздел Git Integrations. Выберите репозиторий и предоставьте доступ.

Раздел интеграции с Git | млн операций в секунду
Карта и предоставление переменного тока

Источник: Автор

Шаг 4: после сопоставления репо будет доступно для создания представления, как показано ниже.

Добавить вид | млн операций в секунду
Создание представления для репозитория DVC

Источник: Автор

Шаг 5: После выполнения вышеуказанных шагов нажмите на репозиторий и откройте трекер.

репо и открытый трекер | млн операций в секунду
Пользовательский интерфейс трекера экспериментов в студии DVC

Источник: Автор

Сравнение моделей: Выберите понравившиеся модели и нажмите Сравнить для просмотра результатов.

Сравнение моделей
Сравнение моделей

Источник: Автор

Проведите эксперименты:  Есть два способа проведения экспериментов.

1. Внесите все изменения и загрузите код в репозиторий Github. Студия DVC автоматически извлекает метрики из студии для отслеживания.

2. Другой способ — внести изменения в пользовательский интерфейс студии DVC, провести эксперименты, а затем отправить их на Github.

Млфлоу

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

Настройка рабочей среды:

Вы можете получить доступ к репозиторию кода для загрузки/клонирования из Github. Установите mlflow и другие библиотеки для построения модели, настройте файл конфигурации для улучшения читабельности кода. Файлы можно найти в разделе Млфлоу папку.

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

Метрика пути Старый Новый Изменить логистическую точность reportscores.json 0.62069 0.65517 0.03448 reportscores.json roc_auc 0.65093 0.72764 0.07671 reportscores.json test_score 62.06897 65.51724 3.44828 reportscores.json train_score 71.96532 74.27746 2.31214

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

mlflow ui## Вот вывод INFO:waitress:Serving on http://127.0.0.1:5000

URL-адрес принадлежит локальному хосту, щелкнув URL-адрес, мы сможем просмотреть результаты в пользовательском интерфейсе. Пользовательский интерфейс очень удобен, и можно легко перемещаться и изучать соответствующие показатели. Раздел, выделенный красным прямоугольником ниже, показывает отслеживание показателей, которые нас интересуют.

МФЛоу

Пользовательский интерфейс трекера экспериментов MLflow

Источник: Автор

Закрытие Примечание

В этом блоге мы рассмотрели обзор MLOps и реализовали его с помощью инструментов с открытым исходным кодом, а именно Студия ДВК и Млфлоу. Эти инструменты MLOps упрощают отслеживание изменений и производительности модели, поэтому мы можем больше сосредоточиться на настройке предметной области и производительности модели.

MLOps будет продолжать развиваться в будущем с добавлением новых функций к инструментам, которые значительно облегчат жизнь командам по обработке и анализу данных в управлении операционной стороной проектов машинного обучения.

Если вам понравился блог, то вот статьи по MLOps. Продолжайте экспериментировать!

DevOps и MLops

Отслеживание экспериментов машинного обучения с DVC

My LinkedIn & Github

Рекомендации

https://dvc.org/

https://www.mlflow.org/docs/latest/quickstart.html

Источник: https://www.analyticsvidhya.com/blog/2022/01/overview-of-mlops-with-open-source-tools/

Spot_img

Последняя разведка

Spot_img

Чат с нами

Всем привет! Могу я чем-нибудь помочь?