Машинное обучение все больше проникает в жизнь человека, помогает ему автоматизировать многие рутинные задачи и справиться с тем, чего раньше достичь было невозможно. Создает, настраивает и развивает модели машинного обучения ML-инженер. В этой статье разберемся, в каких сферах нужны такие специалисты, что от них требуется и сколько они зарабатывают.
Кто такой инженер по машинному обучению
В каких сферах востребованы инженеры по машинному обучению
Необходимые характеристики, навыки и знания
Кто такой инженер по машинному обучению
Инженер по машинному обучению (Machine Learning Engineer) – это специалист в сфере ИИ, который настраивает системы под выполнение конкретных задач.
Машинное обучение (Machine Learning, ML) призвано упростить и автоматизировать многие задачи человека. Оно позволяет создавать нейросети, способные проанализировать любые данные. Например, это может быть информация о пользователях соцсетей с целью оптимизировать показы рекламы или десятки тысяч комбинаций при игре в шахматы. Искусственный интеллект способен прогнозировать и анализировать быстрее и во многих случаях точнее, чем это сделал бы человек.
Одна из распространенных задач инженера по машинному обучению – создание ботов для общения с клиентами. Среди ярких примеров работы ML-инженеров голосовые боты «Алиса», Siri, Ассистент Google и т. д.
Машинное обучение – подраздел Data Science, ориентированный на решение практических задач. С помощью ML-инженеров бизнес лучше понимает свою аудиторию, формирует персональные предложения, увеличивает продажи и многое другое. При этом могут использоваться каждый раз новые или одни и те же алгоритмы машинного обучения, которые адаптируются под конкретную ситуацию.
В каких сферах востребованы инженеры по машинному обучению
МL – универсальная технология, которая помогает людям в различных сферах жизнедеятельности. Она помогает вам выбрать фильм на Кинопоиске, она же управляет «умными» светофорами. ML-специалисты становятся с каждым годом все более востребованными. По запросу ML-engineer/ML-инженер можно найти более 400 вакансий в разных регионах России, используя сайт hh.ru.
Наибольшая потребность в таких специалистах наблюдается в сфере разработки ПО, информационных технологий, финсекторе, науке, маркетинге, торговле и т. д.
Приведем несколько примеров, каким образом и где применяется машинное обучение.
- Банки. Наибольшая находка для банковского сектора – ML при определении, кому выдать кредит. Банковский скоринг обрабатывает огромный объем информации за короткий период времени. Благодаря этому клиенты кредитных организаций получают ответ по своей заявке очень быстро, обычно ожидание длится не более получаса. В большинстве случаев любые задержки связаны с человеческим фактором. Также ML-модели помогают создавать персональные предложения для клиентов банка. Они оценивают кредитную историю и поведение пользователя и рекомендуют, какие условия ему стоит одобрить.
- Медицина. С помощью ИИ ученые решают сложные медицинские задачи, которые ранее не были подвластны человеку. Например, важнейшее открытие 2020 года сделала модель AlphaFold. Этот ИИ сумел смоделировать процесс сворачивания белка, что позволило ученым выдвигать теории, как не давать развиваться инфекциям, некоторым нейродегенеративным заболеваниям (болезни Паркинсона, Альцгеймера и пр.).
- Маркетинг. Персональная лента ВКонтакте, индивидуальный плейлист Яндекс.Музыки – все это примеры рекомендательной работы машинного обучения. Еще один маркетинговый пример – магазины, в которых нет продавцов и касс. Машинное обучение в этом случае отслеживает перемещение товаров на полках, соотносит с корзиной пользователя в приложении, помогает оформить покупку. Такое решение в начале 2022 года реализовал в Москве ВкусВилл: все обслуживание посетителей выполнял ИИ.
- Сельское хозяйство. Машинное обучение помогает агрономам анализировать почву, определять оптимальную дозу удобрений, прогнозировать урожайность и даже надои молока.
Задачи специалиста
В зависимости от того, в какой компании работает специалист, его задачи могут различаться. Перечислим, что обычно делает ML-инженер.
- Сбор и подготовка данных. Для качественной работы искусственного интеллекта нужно постоянно поставлять ему большое количество данных. Причем это не может быть массив неструктурированной информации, ее нужно специально размечать. Вы можете обучить нейросеть отличать легковые автомобили от грузовиков, если дадите ей очень большое количество фотографий, на которых подписано, что есть что. То есть для качественной работы машинному обучению сначала нужна классификация. Вручную собирать и размечать данные очень сложно и долго. Чтобы ИИ научился различать тот или иной объект, нужны сотни тысяч изображений в разных ракурсах и с разным освещением. «ВКонтакте», например, начал показывать пользователям запись формата «Это Иван Иванов?» и просьбой отметить человека на изображении. Это помогает нейросети обучаться и лучше распознавать лица.
- Построение ML-моделей для обработки данных. Один из примеров таких задач – создание умных лент для соцсетей. Система персонально отслеживает лайки, комментарии, реакции, предпочтения в подписках на сообщества, интересы друзей и пр. Учитываются даже похожие профили совершенно незнакомых вам людей. Все это помогает показывать пользователю потенциально интересные для него записи, музыку, новости. Алгоритмы обучаются динамически. Если человек подписался на несвойственную себе группу ВКонтакте или просмотрел необычный товар, рекомендации тоже постепенно изменятся.
ML-модели программируются под практические задачи, причем некоторые из них могут быть довольно простыми. Алгоритм, который будет предсказывать предпочтения туристов, займет около 20 строк кода. А огромная нейросеть DeepCoder, которая копирует и смешивает куски кода для создания новых программ, требует большого объема кода. Описанная технология называется программным синтезом.
Необходимые характеристики, навыки и знания
Опишем, что должен уметь и знать специалист по машинному обучению, чтобы добиться хороших результатов в своей работе и расти по грейдам.
Математические знания. Чтобы успешно работать в этой сфере, понадобятся знания линейной алгебры, теории вероятностей, прикладной статистики. Когда инженер создает модель машинного обучения, он может использовать байесовские сети, марковский процесс принятия решений, условные вероятности и другие математические инструменты. Пригодится знание дисперсионного анализа и опыт в проверке статистических гипотез.
Умение моделировать данные. Чем лучше специалист способен моделировать данные, тем эффективнее будет обучаться алгоритм. Обычно от кандидата требуют знаний в области шаблонов моделирования, итеративного обучения, оценки точности работы ИИ.
Программирование. Самые популярные языки программирования в машинном обучении – Python и R, однако только их не хватит, чтобы эффективно решать задачи. Поскольку инженеру придется много работать с данными, необходимо знать SQL или NoSQL (в зависимости от требований работодателя). В работе с машинным обучением применяются различные специфические для этой области фреймворки. Например, это PyTorch, Apache Spark, TensorFlow. Также нужно уметь работать с определенными библиотеками, такими как NumPy, scikit-learn, Pandas, Keras. Как мы говорили выше, работа инженера по машинному обучению связана с научными изысканиями, поэтому не будет лишним пакет программ MATLAB.
Аналитический склад ума. Машинное обучение можно назвать близкой к науке сферой, где приходится постоянно выдвигать гипотезы, проводить тесты, опровергать или подтверждать догадки. Это монотонная и кропотливая работа, которая требует непрерывного анализа своих действий и результатов.
Логическое мышление. Инженер должен разбить задачу на части, разработать алгоритм ее решения. Например, вопрос «как лучше управлять светофорами» можно раздробить на идентификацию автомобилей, подсчет их количества, определение плотности трафика, определение оптимальных интервалов для переключения сигналов и пр. Инженерам все это требуется описать. Но бывают простые и элегантные решения с минимумом рутины. Например, определить качество контента можно с помощью огромного штата людей, которые будут оценивать записи, а можно просто добавить кнопку лайка, чтобы аудитория все решала сама, и собирать данные абсолютно бесплатно.
Английский язык. Знание английского откроет возможности для общения с профессиональным коммьюнити, чтения технической документации и профильной литературы.
Средняя зарплата
ML-специалисты нужны многим крупным IT-компаниям. Яндекс, Тинькофф, Сбер и многие другие выкладывают свои вакансии на hh.ru и других площадках в поисках профессионалов. К сожалению, работодатели редко указывают зарплаты, поэтому сложно делать выводы об оплате труда. Специалисты по машинному обучению традиционно для IT делятся на грейды Junior, Middle и Senior.
Junior. Специалист с опытом около 1 года. Стандартные требования для кандидата – работа с библиотеками для обработки данных и знание систем управлениям БД. Заработок такого программиста варьируется от 40 до 80 тыс. рублей в зависимости от региона, где он устраивается на работу.
Middle. Это ML-инженер с опытом 2-5 лет. Он хорошо ориентируется в Big Data, умеет писать код на R или Python, управляет промышленными хранилищами данных. Одно из важных требований: владение статистическими инструментами (SPSS, SAS Data Miner и т. д.). В Москве минимальная зарплата таких специалистов от 100 тыс. рублей, в регионах – от 70 тыс. рублей.
Senior. Профессионал с опытом около 5-7 лет на профильных проектах и успешными крупными кейсами. Обычно от такого специалиста требуют уверенного знания R и Python, баз SQL/CQL, отличного знания архитектуры нейросетей, использования системы управления БД Cassandra, приложения Spark Streaming вместе с Apache Spark и т. д. В регионах инженеры высокого уровня зарабатывают от 120 тыс. рублей. В Москве зарплаты намного выше – от 200 тыс. руб.
Некоторые компании ищут ML Team Lead – это Senior-специалисты, которые управляют командами и возглавляют целые подразделения машинного обучения. Эта позиция требует мощных soft-скиллов – организации, общения, мотивирования и пр.
Обратим ваше внимание на то, что часто ML-инженера в вакансиях смешивают с профессией Data Engineer. Уточняйте условия работы и задачи при отклике на предложения.
Если вы пользуетесь сервисом click.ru, вы можете бесплатно приобрести обучающий курс по ML и другим направлениям на маркетплейсе маркетинговых инструментов. Запускайте кампании, зарабатывайте баллы и оплачивайте ими подписки на сервисы коллтрекинга, CMS-системы и т. д. А участники нашей партнерской программы еще и возвращают часть потраченных на рекламу средств.