Инженер по машинному обучению (MLE) — это новая инженерная должность, появившаяся несколько лет назад, когда резко возрос спрос на систематический и эффективный подход к разработке решений на основе машинного обучения (ML).
MLE гарантирует, что модели ML будут запущены в производство эффективно и результативно. В то же время человек упрощает измерение влияния операционной эффективности модели с точки зрения ее стоимости, времени безотказной работы и показателей рентабельности инвестиций, которые могут определить уровень успеха (или неудачи) проекта. В некотором смысле эта роль стремится ускорить выполнение проекта машинного обучения в 10 раз.
Предполагается, что MLE поддерживает MLOps, что является новым поведением, которое разделяет родословную с DevOps с точки зрения философского требования большей автоматизации. С помощью MLOps MLE должны облегчить использование экспертов-людей в качестве винтиков в механизме ML и упростить их назначение на должности архитекторов и операторов.
Система ML — это программная система, в основе которой лежит обучение модели и вывод. Такая система работает эффективно и надежно, если в ее жизненном цикле применяются лучшие практики DevOps, Data Engineering и Data Science. Примеры таких передовых практик включают следующее:
- Непрерывная интеграция и развертывание кода приложения и артефактов модели
- Внедрение микросервисной архитектуры, сохраняя при этом верность сложному характеру приложения.
- Быстрые сбои в коде, данных и других важных проблемах во время выполнения
- Принятие инфраструктуры как кода
- Автоматическая оркестровка запланированных заданий
- Мониторинг данных, модели, заданий и инфраструктуры
- Внедрение эффективной технической коммуникации
- Внедрение эффективного технического управления проектами
- Принятие повторяемого процесса выпуска через код, данные и версии модели
- Обновляйте и выпускайте чаще
Ключевой вопрос, на который должен ответить MLE, заключается в том, как освоить вышеуказанные методы с помощью платформы Cloud-Native. Проверьте следующие платформы для вдохновения:
- Облачные платформы машинного обучения: AWS Sagemaker, Azure ML Studio и GCP Vertex AI Platform.
- Контейнерные рабочие процессы, включающие контейнеры Docker, Kubernetes, частные и общедоступные реестры контейнеров.
- Бессерверные технологии: AWS Lambda, Облачные функции Google, Функции Azure.
- Специализированное оборудование для машинного обучения: GPU, Google TPU, Apple A14, AWS Inferentia.
- Платформы и инструменты для работы с большими данными: Databricks, Snowflake, Amazon EMR, Azure Synapse Analytics, Google Big Query.
Существуют сертификаты, предназначенные для задач, выполняемых инженерами машинного обучения. Например:
- Google: Сертификат Professional Machine Learning Engineer
- Azure: Сертифицировано Microsoft: специалист по исследованию данных Azure
- AWS: Сертифицированный специалист по машинному обучению AWS,
- DeepLearning.AI: Специализация «Инженерия машинного обучения для производства (MLOPs)
В последующих работах я более подробно рассмотрю поднятые здесь вопросы. Между тем, если вы рассматриваете это на следующем этапе карьерного роста, вы можете начать с сертификационного обучения. Обучение недостаточно, чтобы стать им, но это хорошее начало. Некоторая практика с реальными проблемами является обязательной. Если у вас есть возможность получить что-то в команде проекта ML, даже если это не роль MLE, воспользуйтесь этой возможностью.