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

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

Рассмотрение вопроса о том, чтобы у модели был путь к производству.

1. Жизненный цикл разработки машинного обучения (MLDC) сильно отличается от жизненного цикла разработки программного обеспечения.

  • Жизненный цикл разработки модели трудно спланировать с точки зрения управления проектом.
  • Как правило, включает более длительные циклы экспериментов, чем стандартный гибкий процесс разработки программного обеспечения.
  • Разработка моделей машинного обучения включает в себя такие задачи с данными, как разработка функций и подготовка данных.
  • Также есть код обработки данных
  • Новые входные данные и артефакты, которые следует учитывать при управлении версиями
  • Дополнительная конвейерная задача для производства
  • Зависимости, которые могут быть немного сложнее

2. Модель может быть небольшой частью общего решения.

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

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

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

Теперь, когда у нас есть все соображения, давайте начнем рабочий процесс.

Рабочий процесс машинного обучения

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

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

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

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

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

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

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

Затем, наконец, для мониторинга модели вы хотите отслеживать стандартные метрики, такие как использование процессора, графического процессора или памяти.