Учитель для робота: чем занимается ML-инженер

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

Об эксперте: Юлия Молчанова, специалист по машинному обучению в компании «Газпром-Медиа Дата» и автор модулей курса Data Science.

Рекомендации на YouTube, Google-переводчик, чат-бот в банковском приложении — мы взаимодействуем с искусственным интеллектом практически каждый день. Чтобы алгоритм был полезным для бизнеса и конечного потребителя, для начала его нужно научить учиться. Этим занимается ML-инженер.

Кто такой ML-инженер

ML-инженер или Machine Learning Engineer — это специалист, который создает и обучает алгоритмы работы с большими данными. ML-инженер работает в сфере Data Science рядом с дата-сайентистом, дата-аналитиком и дата-инженером.

Задачи ML-инженера — сугубо практические. Он учит компьютер находить взаимосвязи данных и на их основе принимать решения. Именно ML-инженеров стоит благодарить за «умные ленты» в социальных сетях, алгоритмы рекомендаций на музыкальных стримингах, которые подбирают контент под наши интересы. Сервисы перевода типа Google Translate и боты-помощники типа Олега банка «Тинькофф» и Алисы «Яндекса» — тоже частично заслуга ML-инженеров.

Фото:Unsplash
Индустрия 4.0 Что такое машинное обучение и как оно работает

Чем занимается ML-инженер

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

Чтобы создать модель, подходящую под задачи бизнеса, ML-инженер проводит эксперименты: обучает модель на данных, дает ей задачи, проверяет, насколько она эффективна и соответствует заданным бизнесом результатам (ML-метрикам). Например, если цель алгоритма — распознавать растения по фотографии, ключевой метрикой будет количество правильных ответов: когда алгоритм точно распознает каучуковый фикус и отличает его от других видов фикуса по внешним признакам.

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

Юлия Мочалова, специалист по машинному обучению в компании «Газпром-Медиа Дата»:

«Профессия ML-инженера включает в себя как аналитическую, так и инженерную деятельность. В широком смысле задача ML-инженера — создать полный цикл жизнедеятельности данных от обработки признаков из разных источников и построения модели, до выкатки ее в продакшн и настройки автоматизированного периодического запуска. Например, ML-инженер может написать пайплайн на основе данных о поведении пользователя сети, чтобы прогнозировать его интерес к покупке того или иного товара.

Мой обычный рабочий день состоит из задач по разработке новых моделей или улучшению существующих. Помимо этого в день проходит 1–2 встречи с командой и обсуждение текущих проблем и успехов. Также я уделяю время тому, чтобы осваивать новые инструменты. Последний изученный — новая версия фреймворка для распределенных вычислений Apache Spark».

Тренды профессии

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

Фото:Shutterstock
Индустрия 4.0 Кастомизация, ассистенты, скорость: как меняется банкинг для бизнеса

Второй тип компаний, которые нуждаются в ML-инженерах, не могут существовать без машинного обучения. На ML построен основной функционал их продукта. Пример такого сервиса — переводчик Google Translate, который постоянно копит базу и совершенствуется. В этом сегменте ML-инженер может поработать над SaaS-системами и мобильными приложениями, созданием алгоритмов для роботов и систем автопилотирования.

Рост количества данных и необходимость использовать их на пользу бизнесу привели к резкому всплеску спроса на инженеров по машинному обучению. По итогам 2021 года ML-инженеры заняли второе место в рейтинге специалистов, которых не хватает мировой IT-индустрии. Для востребованных специалистов всегда создают привлекательные условия, в том числе зарплатные. По данным исследовательского сервиса Glassdoor, средняя зарплата ML-инженера — $123 тыс. в год. Это чуть больше $10 тыс. в месяц.

Зарплаты ML-инженеров варьируются от $67 000 в год до $228 000 в год, в среднем специалисты получают $123 296
Зарплаты ML-инженеров варьируются от $67 000 в год до $228 000 в год, в среднем специалисты получают $123 296 (Фото: Glassdoor)

В России медианная зарплата специалистов — ₽165 тыс., джуниоры получают от ₽80 тыс., мидлы — от ₽200 тыс., а сеньоры — до ₽330 тыс.

Юлия Мочалова:

«Один из плюсов профессии: работать можно практически в любых сферах. Применять алгоритмы и настраивать автоматизированные процессы анализа данных можно в любых компаниях, где есть данные и желание извлечь из них пользу (прибыль). Сегодня вы можете работать в ритейле, а затем уйти в биоинформатику».

В 2022 году LinkedIn включил профессию ML-инженера в список наиболее перспективных. Сейчас на на hh.ru доступно более двух тысяч вакансий ML-инженера.

Востребованная профессия с гарантией трудоустройства — курсы ProductStar

Откуда пришла профессия

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

Прототип искусственного интеллекта создали в 1946 году, а термин «машинное обучение» появился в 1959 году. Компьютеры с тех пор постоянно совершенствуются. Искусственный интеллект даже смог обыграть известного шахматиста: в 1997 году Гарри Каспаров проиграл суперкомпьютеру Deep Blue. Ученые убедились, что машины можно обучать, так и появилась профессия Machine Learning Engineer как ответвление в области Data Science.

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

Какие навыки нужны ML-инженеру

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

Hard skills

  • Математическая база: понимание векторов и матриц, производных, теории вероятности и статистики.
  • Знание Python. Именно на нем чаще всего пишут модели для машинного обучения.
  • Умение работать с фреймворками Tensorflow, PyTorch.
  • Алгоритмическое мышление: понимать, как работают разные типы алгоритмов и структуры данных. Это поможет писать собственные алгоритмы.
  • Навыки работы с Flask, Docker, Pip, PyTest. Это сервисы создания и развертывания веб-приложений. Понадобятся, когда готовые ML-модели нужно будет преобразовать в продукт для тестирования, а позже — эксплуатации.

Soft skills

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

Юлия Мочалова:

«ML-инженеру в работе часто приходится учиться и решать нетиповые задачи. Например, получить данные из нового источника, для этого могут понадобиться определенные библиотеки и инструменты. Например, я недавно изучала особенности чтения данных из Kafka. Также можно столкнуться с необходимостью реализовать и применить непопулярный алгоритм из статьи. В первом случае помогает, как ни странно, умение гуглить и иногда опыт коллег. Во втором — отлично пригождается математическая база, позволяющая разбираться в формулах и применять их к данным.

Основными навыками для ML-инженера является умение программировать на одном из популярных языков, сейчас это Python. Отличным дополнением станет опыт в backend-разработке, знание технологий для распределенной обработки данных (MapReduce, Spark/PySpark) и конечно, уверенное знание SQL. Важные софт-скиллы: умение работать в команде, креативность и гибкость в подходе к задачам, так как они могут быть разными даже в рамках одного проекта».

Как стать ML-инженером

Machine Learning Engineer — это профессия, которую сложно освоить с нуля. Хорошему инженеру нужна как минимум серьезная база математики, поэтому чаще всего в ML приходят из смежных специальностей: дата-инженер, дата-сайентист, дата-аналитик.

Набор инструментов и навыков ML-инженера очень широк, чтобы их освоить нужно много времени и мотивации. Понять, насколько эта работа может быть вам интересна, можно на бесплатных базовых курсах, например, на Stepik или Mooc.

Погрузиться в работу с фреймворками можно на YouTube-канале TensorFlow, а добрать базовые знания в высшей математике для программистов — у Джона Крона (видео на английском). За актуальными проектами, курсами и мероприятиями можно следить в профессиональных сообществах, таких как ods.ai и Kaggle.

Юлия Мочалова:

«С точки зрения вертикального роста, ML-инженер может стать тимлидом или вырасти до руководителя продукта. Перспектива горизонтального развития — дата инженер. Если машинное обучение наскучит, всегда можно заняться организацией хранения и обработки данных в чистом виде, работая с хранилищами и настраивая ETL-процессы».

Чтобы понять, насколько вам это интересно, можно попробовать пройти бесплатные курсы, например, «Анализ данных с использованием Python» от Coursera.

Специалистов в области искусственного интеллекта готовят в московских МТУСИ, РГГУ, МФТИ. Здесь можно получить необходимые знания — по статистике, математике, информатике, программированию. Но чтобы войти в профессию, лучше окончить специализированные курсы, например, по языку программирования Python.

Обновлено 26.11.2024
Главная Лента Подписаться Поделиться
Закрыть