Чтобы подготовить ваши конвейеры машинного обучения к производству, вам необходимо сделать следующее:
- Предоставьте вычислительные ресурсы для ваших конвейеров
- Реализуйте ведение журнала, мониторинг и оповещение
Предоставление вычислительных ресурсов
Для работы конвейеров машинного обучения требуются вычислительные ресурсы, такие как оперативная память, процессоры и графические процессоры/TPU. Без достаточных вычислительных мощностей конвейеры не смогут работать. Поэтому убедитесь, что у вас достаточно квоты для обеспечения ресурсов, необходимых вашим конвейерам для работы в рабочей среде.
Конвейеры обслуживания, обучения и проверки . Для этих конвейеров требуются TPU, GPU или CPU. В зависимости от вашего варианта использования обучение и обслуживание могут выполняться на разном оборудовании или на одном. Например, обучение может выполняться на CPU, а обслуживание — на TPU, и наоборот. Как правило, обучение выполняется на более мощном оборудовании, а обслуживание — на меньшем.
При выборе оборудования обратите внимание на следующее:
- Можно ли тренироваться на менее дорогом оборудовании?
- Приведет ли переход на другое оборудование к повышению производительности?
- Каков размер модели и какое оборудование оптимизирует ее производительность?
- Какое оборудование идеально подойдет с учетом архитектуры вашей модели?
Конвейеры данных . Конвейеры данных требуют квоты на ОЗУ и ЦП.Вам необходимо оценить, какая квота нужна вашему конвейеру для генерации обучающих и тестовых наборов данных.
Вы можете не выделять квоту для каждого конвейера. Вместо этого вы можете выделить квоту, которую конвейеры совместно используют. В таких случаях убедитесь, что у вас достаточно квоты для работы всех конвейеров, и настройте мониторинг и корректировки, чтобы предотвратить использование всей квоты одним ошибочным конвейером.
Оценка квоты
Чтобы оценить квоту, необходимую для конвейеров данных и обучения, найдите похожие проекты и опирайтесь на них. Чтобы оценить квоту обслуживания, попробуйте спрогнозировать количество запросов в секунду. Эти методы дают базовые данные. По мере создания прототипа решения на этапе экспериментов вы будете получать более точную оценку квоты.
При оценке квоты не забывайте учитывать квоту не только для ваших производственных конвейеров, но и для текущих экспериментов.
Проверьте свое понимание
Ведение журнала, мониторинг и оповещение
Журналирование и мониторинг поведения производственной модели имеют решающее значение. Надёжная инфраструктура мониторинга гарантирует, что ваши модели предоставляют надёжные и высококачественные прогнозы.
Эффективные методы ведения журналов и мониторинга помогают заблаговременно выявлять проблемы в процессах машинного обучения и минимизировать потенциальное влияние на бизнес. При возникновении проблем члены вашей команды уведомляются об этом с помощью оповещений, а подробные журналы облегчают диагностику первопричины проблемы.
Вам следует реализовать ведение журнала и мониторинг для обнаружения следующих проблем с конвейерами машинного обучения:
Трубопровод | Монитор |
---|---|
Обслуживание |
|
Данные |
|
Обучение |
|
Проверка |
|
Вам также понадобится регистрация, мониторинг и оповещение по следующим параметрам:
- Задержка . Сколько времени занимает предоставление прогноза?
- Сбои . Модель перестала выдавать прогнозы?
Проверьте свое понимание
Развертывание модели
Для развертывания модели вам необходимо задокументировать следующее:
- Для начала внедрения и расширения масштабов внедрения требуются разрешения.
- Как запустить модель в производство.
- Где развертывается модель, например, если есть промежуточные или канареечные среды.
- Что делать, если развертывание не удалось.
- Как откатить модель, уже находящуюся в производстве.
После автоматизации обучения модели вам потребуется автоматизировать валидацию и развертывание. Автоматизация развертываний распределяет ответственность и снижает вероятность того, что один человек станет узким местом в процессе развертывания. Это также снижает количество потенциальных ошибок, повышает эффективность и надежность, а также обеспечивает ротацию дежурных специалистов и поддержку SRE.
Обычно новые модели развертываются для подгруппы пользователей, чтобы убедиться, что модель работает так, как ожидалось. Если всё в порядке, развертывание продолжается. Если нет, развертывание откатывается, и начинается диагностика и отладка проблем.