Перейти к содержимому

Ml engineer кто это

  • автор:

Сколько зарабатывает специалист по машинному обучению: обзор зарплат и вакансий в 2021

Привет, Хабр! Мы продолжаем свою серию аналитических статей о рынке зарплат и вакансий в IT. И сегодня на очереди ML-инженер, или специалист по машинному обучению, тем более, что 23 марта Skillfactory запускает новый поток продвинутого курса Machine Learning и Deep Learning.

Machine Learning Engineer – специальность № 1 в разработке и проектировании сложных систем, которая в декабре 2020 года занимала 38,54 % вакансий отрасли и примерно 9 % всех вакансий на российском рынке IT. Так давайте разберёмся, сколько на самом деле получают специалисты по машинному обучению, как попасть в ML и куда можно развиваться. Поехали!

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

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

Machine Learning Engineer – это эксперт в области искусственного интеллекта. Именно он разрабатывает алгоритмы, по которым «думает» компьютер.

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

А ещё специалист по машинному обучению создает ботов, которые общаются с клиентами. Так что именно им нужно говорить спасибо за «Бот, позови оператора». «Алиса», Siri и голосовой помощник Олег, – это, кстати, тоже детище ML-инженеров.

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

Основные компетенции специалиста ML-Engineer

Что требуют работодатели от ML-Engineer

Пул навыков довольно большой. Мы проанализировали свыше 350 вакансий и заметили, что в большинстве из них чётко разделены компетенции специалиста по Data Science и ML. Но требования к вакансиям всё равно очень схожие.

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

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

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

Базис программирования. Python упоминается в абсолютном большинстве вакансий – примерно 92 % всех, но также работодатели требуют знания R, Java, C++, Scala. Также необходимы навыки использования библиотек вроде pandas, OpenCV, Numpy, Eigen, NLTK, Spacy, scikit-learn или других.

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

SQL. В 73 % вакансий требуют знания SQL, но очень много вакансий, в которых необходимы навыки в NoSQL СУБД.

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

Гибкие методологии разработки проектов. Примерно в трети вакансий упоминаются Agile, Scrum, Kanban и другие гибкие методологии. Опыт работы с ними считается плюсом, но не обязателен.

В целом требования в вакансии ML-инженера и дата-сайентиста довольно сильно пересекаются. Компании малого и среднего бизнеса не делают между ними практически никакой разницы и часто ищут сразу «Data Scientist / ML-Engineer».

Софт-скилы предсказуемы. Они с минимальными расхождениями копируют требования из вакансий Data Scientist и Data Analyst:

  • аналитический склад мышления, логика;
  • коммуникативность;
  • инициативность;
  • внимательность к деталям.

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

Зарплаты и вакансии в России и не только

Подходим к самому интересному. По состоянию на 04.03.2021 и данным с hh.ru, в России имеются 1052 вакансии, которые содержат упоминания ML или машинного обучения.

Но больше половины из них – это пересечение Python-девелопера с навыками в ML и дата-сайентиста, который должен хотя бы в общих чертах понимать, как работает машинное обучение.

Непосредственно к машинному обучению относится чуть больше 500 вакансий. За 2020 год востребованность специальности выросла более чем в 2 раза и продолжает расти.

Большинство вакансий открыто в Москве – 55 %. Примерно 17,5 % размещены для Санкт-Петербурга. Примерно 24,5 % разбросаны по другим крупным городам России с населением выше 500 000 человек. Количество вакансий в населённых пунктах меньше 200 000 жителей не превышает 2 %.

В целом локации и востребованность коррелируют с отраслями Data Science и Data Analyst. Основной работодатель – московские компании и международные бренды, у которых есть офис в Москве.

Основная проблема – 80 % компаний не указывает вилку зарплат или хотя бы примерный уровень, на который может рассчитывать соискатель.

Мы проанализировали 200 вакансий к открытыми предложениями по зарплате. Результаты довольно неплохие. Медиана проходит по точке в 165 000 рублей. Это уровень месячной зарплаты, на который реально может рассчитывать специалист с 1–2-летним опытом в ML.

Junior ML-engineer или специалист, который хочет попасть в машинное обучение из смежных отраслей, может рассчитывать на оплату от 80 тысяч рублей.

Опытный сеньор может зарабатывать от 200 000 рублей. И это далеко не предел. В крупных международных компаниях отделы ML сегодня растут очень быстро, и специалист топового уровня может рассчитывать на зарплату 330 000 рублей.

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

Даже если компания понимает, зачем ей нужен ML, то с зарплатами в регионах не очень. Есть предложения для джунов от 25 000 рублей, а выше 80 000 уже считается отличной зарплатой для профи.

Зато на международном рынке всё хорошо у специалистов по машинному обучению.

По данным salary.com, годовая зарплата ML-инженера в США составляет 120 000 долларов по медиане. Это 10 000 долларов в месяц или, в переводе на деревянные, 730 000 рублей.

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

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

Откуда прийти и куда расти специалисту по машинному обучению

ML-инженер – не очень дружелюбная специальность для новичков. В неё можно попасть «с нуля», но для этого нужна как минимум крепкая математическая база. В идеале – математическое или экономическое высшее образование. И даже в этом случае нужно быть готовым к сложностям – изучать придётся очень много всего.

Для успешного продвижения и роста нужно понимать, как работает сфера Data Science целиком. Поэтому идеальные стартовые площадки для перехода в ML – это дата-сайентист и дата-аналитик.

Также в машинное обучение могут перейти разработчики на Python. Для этого нужно будет разобраться с основными ML-библиотеками.

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

ML-инженер — универсальный специалист, подобный швейцарскому ножу. Для желающих стать таким специалистов, у нас есть специальный продвинутый курс Machine Learning и Deep Learning. А промокод HABR даст скидку 50%.

Узнайте, как прокачаться и в других специальностях или освоить их с нуля:

  • Профессия Data Scientist
  • Профессия Data Analyst
  • Курс по Data Engineering

ПРОФЕССИИ

  • Профессия Java-разработчик
  • Профессия QA-инженер на JAVA
  • Профессия Frontend-разработчик
  • Профессия Этичный хакер
  • Профессия C++ разработчик
  • Профессия Разработчик игр на Unity
  • Профессия Веб-разработчик
  • Профессия iOS-разработчик с нуля
  • Профессия Android-разработчик с нуля

КУРСЫ

  • Курс по Machine Learning
  • Математика и Machine Learning для Data Science
  • Математика для Data Science
  • Курс «Python для веб-разработки»
  • Курс «Алгоритмы и структуры данных»
  • Курс по аналитике данных
  • Курс по DevOps

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

Фото: Shutterstock

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

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

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

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

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

Фото:Unsplash

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

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

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

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

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

Фото:Shutterstock

Второй тип компаний, которые нуждаются в 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-инженера.

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

Изначально компьютеры выполняли задачи, алгоритм решения которых был понятен человеку. Позже стало понятно, что машины могут находить решения, алгоритм которых неизвестен человеку. Прототип искусственного интеллекта создали в 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.

Специалист по машинному обучению (ML-специалист)

Специалист по машинному обучению (ML-специалист)

ML Engineer занимается развертыванием, тренировкой и последующей поддержкой моделей машинного обучения в продакшене. Эта сравнительно новая профессия привлекает многих высокими заработками, но подходит она лишь людям со способностью к логическому и структурному мышлению. В нее часто приходят из Data Scientist’ов. Кстати, недавно центр профориентации ПрофГид разработал точный тест на профориентацию, который сам расскажет, какие профессии вам подходят, даст заключение о вашем типе личности и интеллекте.

Зачем учить машину

Машинное обучение (дословно от machine learning, ML) – область, тесно связанная с наукой о данных (Big Data) и искусственным интеллектом (ИИ). Его специфика – в использовании математических моделей данных, которые помогают компьютеру (точнее ПО) самостоятельно обучаться – анализировать закономерности и строить корреляции без (или с минимальным участием) человека.

Как узнать, подходит ли вам профессия «Специалист по машинному обучению (ML-специалист)»?

Тест на профориентацию

Современная сфера machine learning охватывает 3 основные предметные области:

  • Мечтаешь создать свою игру?

Мечтаешь создать свою игру?
Воплоти мечту в реальность вместе с XYZ School!

Черная пятница в Skillbox: месяц инвестиций в себя!

Черная пятница в Skillbox: месяц инвестиций в себя!
Получи скидку, курс в подарок и гарантию трудоустройства, чтобы стать востребованным специалистом.

  • обработка письменных текстов и устной речи (для дальнейшего использования в чат-ботах, голосовых помощниках и т. д.)
  • компьютерное зрение (простейший пример – системы видеонаблюдения);
  • машинное обучение и анализ данных в коммерческих задачах.

Наглядные результаты машинного обучения присутствуют в разных секторах и отраслях:

  • автомобилестроении (беспилотные автомобили, разработка оптимальных маршрутов);
  • банковском деле (прогнозирование объемов изменения вкладов, защита от мошенничества);
  • электронной коммерции (чат-боты, помощники при покупке);
  • сфере развлечений (подстроенные под предпочтения рекомендации Pinterest, ленты фильмов в онлайн-кинотеатрах, новости в соцсетях);
  • здравоохранении (диагностика патологий, выбор оптимального пути лечения);
  • промышленности (определение брака);
  • агроиндустрии (системы «умного полива» растений на полях).
  • Новогодняя акция! Скидки до 60% и «Тайный Санта»

Новогодняя акция! Скидки до 60% и «Тайный Санта»

Всеми любимый «Тайный Санта» здесь: те, кто приобрел у нас курс, получат курс в подарок и смогут подарить мини-курс своему другу.

Яндекс.Практикум, скидки 20%

Яндекс.Практикум, скидки 20%
Приходите учиться любой профессии со скидкой 20% в честь сами знаете чего!

Скидки 70% и подарки на сумму до 260 000 ₽

Скидки 70% и подарки на сумму до 260 000 ₽
Покупаете один курс — получаете два. Год английского от Skyeng +1 профессия в подарок.

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

Читайте также

Профессия «Специалист по кибербезопасности»

Что делает ML Engineer

Любой компьютер способен обработать данные, но анализировать их может, лишь когда вручную прописаны все закономерности. В машинном обучении ПО самостоятельно анализирует закономерности и строит корреляции. Задача ML Engineer’а – создать алгоритм для его обучения и оценки. Для этого он:

  • снабжает машину входными сведениями – собирает и обрабатывает информацию из разных источников (тексты, изображения, таблицы, видео и т. д.);
  • делает датасет – приводит данные в единый формат;
  • прогнозирует, какие именно данные из набора информации понадобятся для анализа, «очищает» материал – убирает ошибки, которые могут повлиять на точность результата;
  • программирует и тренирует ML Model – алгоритм, с помощью которого компьютер (точнее ПО) учится находить взаимосвязи между наборами разных данных, делать по ним прогнозы и принимать решения без человеческого посредничества (например, рекомендовать товары в интернет-магазине).

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

Основная задача ML Engineer’а не ограничивается изобретением алгоритма, по которому будет «думать» компьютер. Потребность в его услугах обычно возникает в крупных компаниях, использующих или планирующих использовать алгоритмы искусственного интеллекта в своих проектах.

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

  1. Определить задачу и перевести ее на технический язык. Например, необходимо увеличить продажи онлайн-магазина за счет предложения сопутствующих текущему заказу товаров. Техническая реализация этой продуктовой задачи – создание движка рекомендаций, который сам будет подбирать товары, способные заинтересовать покупателя.
  2. Снабдить систему относящимися к обучению наборами информации, оценить и преобразовать в обучающие данные. В случае с примером из пункта 1 это данные о списке продуктов в профиле конкретного пользователя, которые часто покупают в одной корзине разные пользователи, или описание разных пользователей, покупающих различные товары.
  3. Установить правила для анализа наборов данных и распознания повторов – на что должен обратить внимание алгоритм.
  4. Обучить систему на имеющихся данных – дать ей задачи, проверить ее эффективность и соответствие результатам, которые ожидает получить бизнес.
  5. Оптимизировать и комбинировать алгоритмы до тех пор, пока они не станут правильно выполнять желаемые задачи.
  6. Интегрировать обученную модель в продакшен – подключить ее к продукту, посмотреть на ее работу с реальными данными. Результат в нашем примере – персональная лента у каждого посетителя интернет-магазина.
  7. Улучшить работу ML-модели – ускорить, повысить эффективность, точность.

ML Engineer также отвечает за эксплуатацию готовой модели – алгоритм не должен ломаться и «падать», должен подстраиваться под изменения данных.

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

Как стать ML Engineer’ом

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

Профильное образование

Профессия ML Engineer’а предусматривает получение степени магистра по математике или компьютерным наукам в техническом университете. Желательно, чтобы он входил в число ведущих по направлению. Для работы наряду с математикой и программированием придется освоить и ряд других наук – физику, нейрофизиологию, биологию и даже психологию человека, ведь машина должна выдавать понятные человеку реакции.

В западных топ-компаниях предпочитают брать на работу выпускников Computer Science – факультета ассоциации зарубежных вузов Ivy League, целиком и полностью посвященного программированию. Подойдут и смежные специальности, например, прикладная математика. Гарвард далеко и дорого, но в наших МФТИ, ИТМО, МГУ, ННГУ, СТАНКИНе, МИРЭА, МТУСИ, Бауманке, Политехе Петра Великого и многих других университетах программистов и математиков учат не хуже, и уже открыты программы подготовки ML-специалистов.

Опыт

Начинать без него сложно, для успешного старта надо понимать, как в целом работает сфера Data Science. Часто получить работу можно лишь при наличии опыта Data Scientist или разработчика на Python.

Есть несколько вариантов, как накопить опыт:

  1. Первый – поискать стажировки. Зачастую занимающиеся machine learning компании (в особенности стартапы) открыты талантам, даже из числа новичков. Можно отправить им свою заявку, даже если объявления о стажировках на сайте не было. Вполне вероятно, что инициатива принесет опыт, а возможно, и первую работу.
  2. Другие варианты – участвовать в конкурсах по программированию или хакатонах («хакер» + «марафон», форумы для разработчиков в определенной области); создать личный проект на GitHub; открыть и вести внешкольный кружок по machine learning (а школьникам, которые интересуются направлением, настоятельно рекомендуем их посещать).
  3. Также получить первый опыт можно на профильных курсах.

Курсы

Желательно, чтобы их формат предусматривал наличие учителя, домашних заданий, сроков и контроля выполнения. Немало качественно структурированных курсов по направлению можно найти на образовательных платформах Coursera, Udemy, Pluralsight).

Кто такой специалист по машинному обучению

Кто такой специалист по машинному обучению

Виктория Тюфякова

Виктория Тюфякова Ментор на курсе по Data Science, автор вебинаров по Machine Learning.

Проекты машинного обучения пронизывают практически все сферы нашей жизни. Учить ботов отвечать как человек или предугадывать музыкальные предпочтения — это увлекательно, но не так просто. Вместе с Викторией Тюфяковой, ментором на курсе по Data Science, разбираемся, с какой базой можно идти в машинное обучение и какие языки популярны в сфере, кроме Python.

Чем занимается ML-специалист

Специалист по машинному обучению (ML-специалист) с помощью алгоритмов строит модели, которые способны обучаться самостоятельно на различных наборах данных, от табличных данных до картинок и текстов. Он выявляет сложные закономерности в массивах данных, чтобы модель точнее прогнозировала результат, а также помогает автоматизировать процессы принятия решений для трудных задач на практике. Машинное обучение — это подраздел искусственного интеллекта (artificial intelligence), в который входят также глубокое обучение (deep learning), нейронные сети. Главное отличие ML-специалиста от дата-сайентиста в том, что первый вдобавок ко всему имеет более сильные навыки разработки и может вывести модель в продакшн, например встроить в существующий продукт или упаковать в новый.

Освойте профессию «Data Scientist»
Data Scientist

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

картинка - 2023-03-14T190938.211

Профессия / 24 месяца
Data Scientist
Решайте амбициозные задачи с помощью нейросетей
5 491 ₽/мес 9 983 ₽/мес

Group 1321314349 (2)

Где он нужен

  • Транспорт. С помощью моделей можно тренировать беспилотные машины, определять препятствия, пробки на дороге, строить оптимальные маршруты или рекомендовать удобные места посадки.
  • Ритейл. Можно планировать поставки, персонифицировать рекламу и скидочные предложения или оценивать эффективность промоакций.
  • Здравоохранение. На основе результатов анализов можно диагностировать патологии, ставить более точные диагнозы, выбирать оптимальный путь лечения.
  • Финансы. Методы машинного обучения помогают банкам быстрее принимать решения о выдаче кредитов, прогнозировать изменения объемов вкладов, а обработка естественного языка позволяет настраивать чат-боты и виртуальных ассистентов.
  • Промышленность. Можно прогнозировать, когда оборудование выйдет из строя, или находить брак.
  • Развлечения. Благодаря алгоритмам в игровой сфере можно создавать более реальные аватары, предсказывать следующий шаг, чтобы выиграть или проиграть, а также создавать 3D-модели для VR-очков. Ленты фильмов в онлайн-кинотеатрах и новостей в соцсетях подстраиваются под наши предпочтения тоже благодаря машинному обучению.

Машинное обучение используют как известные мировые бизнесы, вроде Amazon, Google, Netflix, Apple, так и крупные российские компании и банки: Билайн, Тинькофф, «Спортмастер», «Лента», а также небольшие стартапы.

Что ему нужно знать

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

Облако компетенций ML-специалиста

Так как ML-специалист постоянно работает с данными, ему нужно знать SQL, уметь писать запросы к базам данных и работать с хранилищами данных.

Чаще всего ML-специалисты используют Python (или R) и библиотеки: Pandas, NumPy, Sklearn, Keras. Для рекомендательных систем и нейронных сетей подходит фреймворк TensorFlow, а для обработки естественного языка специалисты пользуются PyTorch.

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

Нередко среди навыков можно встретить и языки C или C++. Дело в том, что они быстрее обрабатывают большие объемы данных, чем Python, а для задач машинного обучения скорость обучения бывает очень важна. Также на них можно развертывать модели с MATLAB — это пакет программ, который используют для ML в научной среде.

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

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

Виды машинного обучения

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

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

Станьте дата-сайентистом и решайте амбициозные задачи с помощью нейросетей

Обучение с учителем

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

– классификации. Модель должна определить категорию анализируемых объектов. Например, можно отделять картинки с котами от картинок с собаками или выявлять мошеннические действия клиента банка;

– регрессии. В таких задачах на основе временного ряда можно в краткосрочной или даже долгосрочной перспективе прогнозировать значения, например, курса доллара.

Обучение без учителя

Модели не подаются правильные ответы, поэтому она сама выстраивает взаимосвязи между данными и интерпретирует их. Самые популярные задачи:

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

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

Обучение с подкреплением

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

Перспективы и зарплаты ML-специалистов

Машинное обучение с каждым годом все глубже проникает во все сферы человеческой деятельности, мы пользуемся им ежедневно, например когда ищем информацию в поисковиках. Как отмечает Надежда Зуева, сооснователь Deep Learning School на базе МФТИ, все больше сервисов используют технологии машинного обучения, что влечет за собой увеличение рабочих мест.

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

таблица основных категорий в ML-инженерии

По данным компании Gartner, в 2022 году мировой доход в сфере увеличится на 21,3%. 48% руководителей IT-организаций уже внедряют технологии машинного обучения или планируют сделать это в течение 2022 года.

На hh.ru на декабрь 2021 года было около 1600 вакансий по запросу ML. При этом самая низкая зарплата среди этих вакансий — 40 тыс. рублей для джуниора. Однако в среднем зарплаты колеблются от 150 до 250 тыс. рублей. Синьорам с опытом работы от трех лет в сфере платят от 400 тыс. рублей.

количество вакансий ML-специалистов

Однако количество специалистов практически не увеличивается, в сфере заметен дефицит квалифицированных сотрудников.

график роста количества резюме ML, дата сайентистов и анализаторов данных

Как новичку получить работу

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

Такую задачу можно оформить в кейс и выложить на своем GitHub. Таким образом можно собрать портфолио, чтобы представить свои навыки на собеседовании. Чем подробнее кейс, тем больше вероятность, что вас возьмут на работу, потому что будет видно, что вы постарались углубиться в тему.

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

С чего начать

Книги

Если вы только заинтересовались машинным обучением, можно начать с книг, чтобы понять, насколько вам легко разбираться в базовых понятиях:

Обширная библиотека с английскими и русскими книгами по машинному обучению и искусственному интеллекту также есть в telegram-канале «Машинное обучение».

YouTube

Канал TensorFlow с пояснительными роликами о машинном обучении и записями конференций.

Канал Jon Krohn, в котором особое внимание уделяется и математике.

Пятичасовой ролик о машинном обучении на Python с нуля.

Открытый курс по машинному обучению от ШАД.

Обучаться самостоятельно

Если вы уже владеете базовыми математическими навыками и готовы самостоятельно изучать языки и библиотеки, можно ориентироваться на готовые roadmap, чтобы структурировать и не забыть всю информацию, которую нужно знать.

роадмап ML-инженера

Коллекция на GitHub со списком необходимых навыков, курсов, компетенций.

Сообщества

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

Курсы

Можно начать с бесплатных, всегда выручает Coursera: короткие ознакомительные программы предлагают как российские вузы (НИУ ВШЭ, МФТИ), банки, так и множество зарубежных компаний и институтов от Amazon до Стэнфорда.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *