Home Машинное обучение Создайте рабочий процесс утверждения и продвижения модельного реестра Amazon SageMaker с участием человека. | DeepTech

Создайте рабочий процесс утверждения и продвижения модельного реестра Amazon SageMaker с участием человека. | DeepTech

0
Создайте рабочий процесс утверждения и продвижения модельного реестра Amazon SageMaker с участием человека.
 | DeepTech

Этот пост написан в соавторстве с Джаядипом Паббисетти, старшим специалистом по разработке данных в Merck, и Прабакараном Матайяном, старшим инженером по машинному обучению в Tiger Analytics.

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

Разработчик модели обычно начинает работать в отдельной среде разработки машинного обучения в Amazon SageMaker. Когда модель обучена и готова к использованию, ее необходимо утвердить после регистрации в реестре моделей Amazon SageMaker. В этом посте мы обсуждаем, как команда AWS AI/ML сотрудничала с командой Merck Human Health IT MLOps для создания решения, которое использует автоматизированный рабочий процесс для утверждения и продвижения модели ML с вмешательством человека посередине.

Обзор решения

В этом посте основное внимание уделяется решению рабочего процесса, которое может использоваться в жизненном цикле разработки модели ML между конвейером обучения и конвейером вывода. Решение обеспечивает масштабируемый рабочий процесс для MLOps, поддерживающий процесс утверждения и продвижения модели ML с участием человека. Модель ML, зарегистрированная специалистом по обработке данных, должна быть рассмотрена и одобрена утверждающим лицом, прежде чем она будет использоваться для конвейера вывода и на следующем уровне среды (тестирование, UAT или производственная среда). В решении используются AWS Lambda, Amazon API Gateway, Amazon EventBridge и SageMaker для автоматизации рабочего процесса с вмешательством человека в середине процесса. На следующей диаграмме архитектуры показан общий дизайн системы, используемые сервисы AWS и рабочий процесс утверждения и продвижения моделей машинного обучения с участием человека от разработки до производства.

Архитектура утверждения модели

Рабочий процесс включает в себя следующие этапы:

  1. Конвейер обучения разрабатывает и регистрирует модель в реестре моделей SageMaker. На данный момент статус модели PendingManualApproval.
  2. EventBridge отслеживает события изменения статуса, чтобы автоматически предпринимать действия с помощью простых правил.
  3. Правило события регистрации модели EventBridge вызывает функцию Lambda, которая создает электронное письмо со ссылкой для утверждения или отклонения зарегистрированной модели.
  4. Утверждающий получает электронное письмо со ссылкой для просмотра и утверждения или отклонения модели.
  5. Утверждающее лицо утверждает модель, перейдя по ссылке в электронном письме на конечную точку шлюза API.
  6. API Gateway вызывает функцию Lambda для инициации обновления модели.
  7. Реестр моделей обновляется в соответствии со статусом модели (Approved для среды разработки, но PendingManualApproval для тестирования, UAT и производства).
  8. Сведения о модели хранятся в хранилище параметров AWS — возможности AWS Systems Manager, включая версию модели, утвержденную целевую среду и пакет модели.
  9. Конвейер вывода извлекает модель, одобренную для целевой среды, из хранилища параметров.
  10. Уведомление после вывода. Функция Lambda собирает метрики пакетного вывода и отправляет электронное письмо утверждающему лицу для продвижения модели в следующую среду.

Предварительные условия

Рабочий процесс в этой статье предполагает, что среда для конвейера обучения настроена в SageMaker вместе с другими ресурсами. Входными данными для конвейера обучения является набор данных функций. Подробности создания функций не включены в этот пост, но он посвящен регистрации, утверждению и продвижению моделей ML после их обучения. Модель регистрируется в реестре моделей и управляется системой мониторинга в Amazon SageMaker Model Monitor, позволяющей обнаруживать любые отклонения и переходить к переобучению в случае отклонения модели.

Детали рабочего процесса

Рабочий процесс утверждения начинается с модели, разработанной на основе конвейера обучения. Когда ученые, работающие с данными, разрабатывают модель, они регистрируют ее в реестре моделей SageMaker со статусом модели PendingManualApproval. EventBridge отслеживает SageMaker на предмет события регистрации модели и запускает правило события, которое вызывает функцию Lambda. Функция Lambda динамически создает электронное письмо для утверждения модели со ссылкой на конечную точку API-шлюза на другую функцию Lambda. Когда утверждающий переходит по ссылке для утверждения модели, API Gateway передает действие утверждения функции Lambda, которая обновляет реестр моделей SageMaker и атрибуты модели в хранилище параметров. Утверждающий должен пройти проверку подлинности и входить в группу утверждающих, управляемую Active Directory. Первоначальное одобрение помечает модель как Approved для разработчиков, но PendingManualApproval для тестирования, UAT и производства. Атрибуты модели, сохраненные в хранилище параметров, включают версию модели, пакет модели и утвержденную целевую среду.

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

Ниже приведена последовательность событий и шагов реализации рабочего процесса утверждения/продвижения модели ML от создания модели до ее производства. Модель продвигается из среды разработки в среду тестирования, UAT и производственную среду с явным одобрением человека на каждом этапе.

Начнем с конвейера обучения, который готов к разработке модели. Версия модели начинается с 0 в реестре моделей SageMaker.

версия реестра модели 0

  1. Конвейер обучения SageMaker разрабатывает и регистрирует модель в реестре моделей SageMaker. Версия модели 1 зарегистрирована и начинается с Ожидает одобрения вручную положение дел.реестр моделей, версия 1Метаданные реестра моделей имеют четыре настраиваемых поля для сред: dev, test, uatи prod.нижняя часть реестра моделей
  2. EventBridge отслеживает изменение статуса в реестре моделей SageMaker, чтобы автоматически предпринимать действия с помощью простых правил.Шаблон событий EventBridgeШина событий EventBridge и правила
  3. Правило события регистрации модели вызывает функцию Lambda, которая создает электронное письмо со ссылкой для утверждения или отклонения зарегистрированной модели.лямбда и шлюз APIпеременные среды лямбда
  4. Утверждающий получает электронное письмо со ссылкой для просмотра и утверждения (или отклонения) модели.электронное письмо с утверждением модели
  5. Утверждающее лицо утверждает модель, перейдя по ссылке на конечную точку API-шлюза в электронном письме.Утверждение модели API-шлюзаДетали маршрута шлюза APIПодробности интеграции маршрутов API GW
  6. API Gateway вызывает функцию Lambda для инициации обновления модели.
  7. Реестр моделей SageMaker обновляется в соответствии со статусом модели.Пример кода лямбда-функции
  8. Подробная информация о модели хранится в хранилище параметров, включая версию модели, утвержденную целевую среду и пакет модели.одобрена модельная версия 1Пользовательские метаданные реестра моделей
  9. Конвейер вывода извлекает модель, одобренную для целевой среды, из хранилища параметров.
  10. Уведомление после вывода. Функция Lambda собирает метрики пакетного вывода и отправляет электронное письмо утверждающему лицу для продвижения модели в следующую среду.
  11. Утверждающее лицо утверждает повышение модели на следующий уровень, перейдя по ссылке на конечную точку шлюза API, которая запускает функцию Lambda для обновления реестра моделей и хранилища параметров SageMaker.

Полная история версий и утверждений модели сохраняется для просмотра в хранилище параметров.

сведения о выпуске утверждения моделиатрибуты модели в хранилище параметров

Заключение

Большой жизненный цикл разработки модели ML требует масштабируемого процесса утверждения модели ML. В этом посте мы рассказали о реализации рабочего процесса реестра, утверждения и продвижения моделей машинного обучения с участием человека с использованием реестра моделей SageMaker, EventBridge, API Gateway и Lambda. Если вы рассматриваете процесс разработки масштабируемой модели машинного обучения для своей платформы MLOps, вы можете выполнить шаги, описанные в этом посте, чтобы реализовать аналогичный рабочий процесс.


Об авторах

Том Ким является старшим архитектором решений в AWS, где он помогает своим клиентам достигать бизнес-целей путем разработки решений на AWS. Он имеет обширный опыт в архитектуре и эксплуатации корпоративных систем в нескольких отраслях, особенно в здравоохранении и науках о жизни. Том постоянно изучает новые технологии, которые приводят к желаемым бизнес-результатам для клиентов – например, AI/ML, GenAI и анализ данных. Ему также нравится путешествовать по новым местам и играть на новых полях для гольфа, когда у него есть время.

Портрет ШармикиШамика Ариявансаработает старшим архитектором решений AI/ML в подразделении здравоохранения и медико-биологических наук в Amazon Web Services (AWS), специализируется на генеративном искусственном интеллекте, уделяя особое внимание обучению модели большого языка (LLM), оптимизации вывода и MLOps (машинное обучение). Операции). Он помогает клиентам внедрять передовой генеративный искусственный интеллект в свои проекты, обеспечивая надежные процессы обучения, эффективные механизмы вывода и оптимизированные методы MLOps для эффективных и масштабируемых решений искусственного интеллекта. Помимо своих профессиональных обязательств, Шамика страстно занимается лыжным спортом и приключениями на бездорожье.

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

Прабакаран Матаян является старшим инженером по машинному обучению в компании Tiger Analytics LLC, где он помогает своим клиентам достигать их бизнес-целей, предоставляя решения для построения моделей, обучения, проверки, мониторинга, CICD и улучшения решений машинного обучения на AWS. Прабакаран постоянно изучает новые технологии, которые приводят к желаемым бизнес-результатам для клиентов, например, AI/ML, GenAI, GPT и LLM. Ему также нравится играть в крикет, когда у него есть время.

LEAVE A REPLY

Please enter your comment!
Please enter your name here