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

Теперь команда специалистов по обработке и анализу данных должна обладать навыками CI/CD, чтобы поддерживать непрерывный вывод с помощью циклов переобучения и автоматизированного повторного развертывания моделей. К сожалению, многие специалисты по машинному обучению по-прежнему вынуждены выполнять многие производственные задачи вручную, и это сокращает время, которое они могут потратить на то, чтобы повысить ценность бизнеса, а также создать риск.

Опираясь на наш опыт работы с крупными и мелкими клиентами по всему миру и объединяя передовые практики, Microsoft разработала ускоритель решений, который делает именно то, о чем говорит само слово, — ускоряет переход наших клиентов к производству.

Ключевыми столпами этого акселератора решений являются простота и разделение обязанностей, а это означает, что мы намерены сделать так, чтобы специалисты по данным, инженеры по машинному обучению и ИТ-команды не нуждались в значительном повышении квалификации, прежде чем они смогут выполнять MLOps. Например, специалистам по обработке и анализу данных просто нужно сосредоточиться на сценариях обучения и логического вывода, и MLOps будет «просто работать» для них при условии, что они будут следовать шаблону, заданному ускорителем. Хотя мы обеспечиваем разделение работы между инженерами машинного обучения и специалистами по данным, ускоритель объединяет компоненты простым способом, который обеим ролям легко понять и внедрить MLOps.

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

Команда проекта акселератора собрала и оценила более двадцати существующих активов MLOps, включая кодовую базу, масштабируемую емкость и требования клиентов, чтобы переопределить следующее поколение MLOps в Microsoft. Многие старые подходы MLOps включали немасштабируемые или устаревшие сценарии для конкретных клиентов, которые не обеспечивали модульность технологии. С помощью MLOps v2 мы переводим классическое машинное обучение, обработку естественного языка и компьютерное зрение на новый и более быстрый уровень для наших клиентов. Ускоритель решений является модульным, что позволяет включать такие строительные блоки, как Responsible AI и Feature Store.

В целом ускоритель решений MLOps v2 служит отправной точкой для реализации MLOps в Azure. Акселераторы решений позволяют клиентам запускать проекты, которые выполняют их на 80 %, но обеспечивают адаптируемость и настройку для каждого уникального проекта. Это набор повторяемых, автоматизированных и совместных рабочих процессов с передовыми практиками, которые позволяют командам специалистов по машинному обучению быстро и легко внедрять свои модели машинного обучения в рабочую среду. Вы можете узнать больше о MLOps здесь:

Млопс с машинным обучением Azure

Руководство по внедрению облачной среды

Как: операции машинного обучения

Млопс вызовы

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

Ускоритель решений MLOps V2

MLOps v2 предлагает шаблонный подход к этим проблемам при развертывании сквозного процесса Data Science и фокусируется на повышении эффективности для каждого из следующих.

Люди:

  • Объедините работу организации в репозиторий проектов, организованный по ролям.
  • Каждый раз, когда вносятся изменения, работа автоматически создается и тестируется, а ошибки обнаруживаются быстрее.
  • Код, данные, модели и конвейеры обучения используются совместно для ускорения внедрения инноваций.

Процесс:

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

Платформа:

  • Контролируйте конвейеры, инфраструктуру и продукты в производстве и узнавайте, когда они ведут себя не так, как ожидалось.

Цели акселератора решений:

  • Простота
  • Модульность
  • Повторяемость
  • Сотрудничество
  • Готовность предприятия

Ускоритель MLOps v2 состоит из нескольких шаблонов, основанных на архитектуре шаблонов, которые можно повторно использовать, а также установить «Cookie-Cutter-подход» для процесса начальной загрузки, чтобы сократить этот процесс с дней до часов или минут. Процесс начальной загрузки инкапсулирует ключевые решения MLOps, такие как компоненты репозитория, структура репозитория, связь между разработкой модели и ее развертыванием, а также выбор технологий для каждого этапа процесса обработки данных.

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

  • Заголовочный репозиторий MLOps V2, который служит фабрикой проектов для начальной загрузки новых проектов MLOps с выбранными вами шаблонами.
  • Репозиторий шаблонов MLOps, который развертывает базовые конвейеры MLOps с использованием выбранной вами инфраструктуры и инструментов CI/CD.
  • Репозиторий шаблонов проектов, который развертывает ресурсы и инфраструктуру AzureML для поддержки желаемого сценария машинного обучения.

Рисунок 1. Архитектура репозитория MLOps V2

Архитектурные шаблоны

Общий архитектурный шаблон MLOps, который развертывает ускоритель решений, состоит из четырех широких элементов: Data Estate, Administration & Setup, Model Development и Model Deployment, представляющих высокоуровневые фазы жизненного цикла MLOps для заданного сценария обработки данных, взаимосвязей и поток процессов между этими элементами и персонажи, связанные с владением этими элементами.

Рисунок 2 ниже иллюстрирует архитектуру MLOps V2 для сценария классического машинного обучения на табличных данных вместе с объяснением каждого из основных элементов, а также составных элементов внутри и между ними.

Рис. 2. Классическая архитектура машинного обучения AzureML

1. Недвижимость данных

Этот элемент иллюстрирует состояние данных организации, а также потенциальные источники данных и цели для проекта по науке о данных. Инженеры данных являются основными владельцами этого элемента жизненного цикла MLOps v2. Платформы данных Azure на этой диаграмме не являются ни исчерпывающими, ни предписывающими. Источники данных и целевые объекты, представляющие рекомендуемые передовые методы на основе сценария использования клиента, отмечены зеленой галочкой.

2. Администрирование и настройка

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

* Создание репозиториев исходного кода проекта
* Создание рабочих областей машинного обучения с использованием Bicep, ARM или Terraform
* Создание или изменение наборов данных и вычислительных ресурсов, которые используются для разработки и развертывания моделей
* Определение пользователей команды проекта, их ролей и средств управления доступом к другим ресурсам
* Создание конвейеров CI/CD
* Создание мониторов для сбора и уведомления метрик модели и инфраструктуры

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

3. Разработка модели (внутренний цикл)

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

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

4. Реестры машинного обучения

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

Персонажи, связанные с этим этапом, обычно являются инженерами по машинному обучению.

5. Развертывание модели (внешний цикл)

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

Персонажи, связанные с этим этапом, в основном инженеры по машинному обучению.

6. Постановка и тестирование

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

7. Развертывание производства

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

8. Мониторинг

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

9. Мониторинг данных и моделей: события и действия

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

10. Мониторинг инфраструктуры: события и действия

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

Доступны дополнительные архитектуры, адаптированные для сценариев использования Компьютерное зрение и Обработка естественного языка. Информация об этих архитектурах доступна в Центре архитектуры Azure. Архитектуры для сценариев Azure ML + Databricks и IoT (Интернет вещей) Edge находятся в разработке.

Технические модели

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

Таблица. Элементы, отмеченные синим цветом, в настоящее время доступны в репозитории.

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

Начиная

Чтобы познакомить специалистов по данным и инженеров по машинному обучению с концепциями и технологиями DevOps, используемыми в ускорителе MLOps v2, этим летом на MSLearn есть практические материалы о том, как автоматизировать обучение и развертывание моделей с помощью GitHub Actions. Microsoft Learn предлагает самостоятельный и практический онлайн-контент, позволяющий ознакомиться с современными технологиями.

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

Поскольку этот проект продолжает развиваться, команда MLOps V2 будет выступать в течение следующего месяца на нескольких мероприятиях, чтобы сообщать об обновлениях и новостях, чтобы пользователи MLOps v2 были в курсе прогресса, достигнутого Microsoft.

Краткое содержание

MLOps v2 — это де-факто решение MLOps для Microsoft в будущем. В соответствии с разработкой Azure Machine Learning v2, MLOps v2 предоставляет вам и вашим клиентам гибкость, безопасность, модульность, простоту использования и масштабируемость для быстрого перехода к продукту с вашим ИИ. MLOps v2 не только объединяет операции машинного обучения в Microsoft, но и устанавливает новые инновационные стандарты для любой рабочей нагрузки ИИ. Двигаясь вперед, MLOps v2 является обязательным для использования для любого проекта AI / ML, который переопределяет ваше путешествие в области ИИ.

Для получения дополнительной информации, пожалуйста, присоединитесь к вебинару ODSC & Microsoft — ускоритель Microsoft для MLOps, который состоится 15 сентября: https://app.aiplus.training/courses/Microsofts-Accelerator-for-MLOps.

Ресурсы

Основной репозиторий заголовков MLOps V2:Azure/mlops-v2: ускорители решений Azure MLOps (v2). (github.com)

Репозиторий шаблонов проектов MLOps V2: Azure/mlops-project-template (github.com)

Репозиторий шаблонов MLOps V2 CI/CD: Azure/mlops-templates (github.com)

Сборка демо-версии MLOps V2: mlops-v2/QUICKSTART.md на главном · Azure/mlops-v2 (github.com)

Центр архитектуры Azure: Операции машинного обучения (MLOps) v2 — Центр архитектуры Azure | Документы Майкрософт

Концепции MLOps для практического обучения MSLearn: mslearn-mlops (microsoftlearning.github.io)

Скотт Доноху: Я старший архитектор облачных решений, специализирующийся на обеспечении успеха клиентов с помощью машинного обучения и искусственного интеллекта в Azure.

Сету Чокши: Я старший технический руководитель, новатор и специалист в области машинного обучения и искусственного интеллекта. Я руководил и внедрял продукты машинного обучения в различных компаниях.

Первоначально опубликовано на OpenDataScience.com

Читайте другие статьи по науке о данных на OpenDataScience.com, включая учебные пособия и руководства от начального до продвинутого уровня! Подпишитесь на нашу еженедельную рассылку здесь и получайте последние новости каждый четверг. Вы также можете пройти обучение по науке о данных по запросу, где бы вы ни находились, с нашей платформой Ai+ Training. Подпишитесь также на нашу быстрорастущую публикацию на Medium, ODSC Journal, и узнайте, как стать писателем.