Специалистам по Machine Learning платят больше, чем разработчикам: как им стать, нужна ли математика и другие ответы от эксперта

Вікторія Пушкіна

На канале основателя школы программирования FoxmindEd Сергея Немчинского вышел стрим с Павлом Галушко. Павел — Tech Lead команды разработки для машинного обучения в Namecheap. На стриме он ответил на самые актуальные вопросы про Machine Learning. Причем (что редко бывает) — кратко и понятно.

Highload публикует эти ответы.

Почему Machine Learning сейчас на взлете?

Потому что эта технология становится нормальной, повсеместной. Это не будущее, это то, что уже происходит.

Чем занимается Machine Learner?

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

Вообще, Machine Learners делятся на две касты:

  1. те, кто придумывают модели;
  2. те, кто их использует (так же, как мы используем придуманные математиками формулы).

Первые — это ученые в сфере машинного обучения. Вторые — инженеры. 

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

Как инженеры Machine Learning взаимодействуют с учеными?

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

По запросу ‘machine learning’ в Google Scholar — 5 млн научных работ / Google Scholar

Работа в индустрии — это только применение? Что делать, если хочешь придумывать, но не готов получать копейки, как в науке?

Сейчас есть очень большие гранты на создание новых моделей Machine Learning. Их финансирует Google, Amazon и другие крупные компании. Они же забирают себе гениальных ученых, которые пишут для них нейронные сети. Так что на Западе в этой сфере все нормально с деньгами.

Но, кстати, такие ученые очень редко пишут хороший код и не умеют делать на основе этих нейронок хорошие сервисы.

Стоит ли лезть в Machine Learning без знания математики?

Попробуй, вдруг получится 🙂 Но вообще, обычно математика нужна. В основном, такие разделы как статистика, матанализ, численные методы, линейная алгебра. Вообще, Machine Learning — это статистика XXI века.

Какие знания еще (кроме математики) нужны Machine Learner?

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

Какие визуальные среды использует Machine Learner?

Во-первых, Jupyter Notebook — веб-интерпретатор Python. Еще можно использовать IDE для Python PyCharm.

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

Использование библиотек Python для визуализации данных / GitHub

Чем занимается тестировщик в Machine Learning?

В Machine Learning есть весь нормальный процесс веб-девелопмента. Соответственно, Machine Learning QA делает все, что делает веб-тестировщик. Плюс дополнительно он проверяет насколько адекватно модель отдает данные и насколько хорошо вообще подходит к задаче.

Кому больше платят: разработчикам или Machine Learning инженерам?

Довольно долго Machine Learners получали меньше, но сейчас зарплаты выровнялись и даже начинают превышать зарплаты разработчиков. Не как DevOps — но близко.

Хороший Machine Learner может очень много получать.

Зарплата Java-разработчика и Machine Learning инженера в США / Данные Indeed
Зарплата Java-разработчика и Machine Learning инженера в США / Данные Indeed

У кого работа сложнее: у enterprise-разработчика или инженера Machine Learning?

В Machine Learning выше порог входа. Необходимый уровень знания математики здесь — второй-третий курс мехмата.

Нужен ли матанализ в enterprise?

Мнение Павла: В Business Intelligence — да. Это чистый матанализ. Например, часто нужно с его помощью высчитывать KPI. Кроме того, многие enterprises используют модели машинного обучения. Раньше это была экзотика, а сейчас они везде — с его помощью выясняют, какую рекламу сделать, какой продукт взлетит и т.д. Но обычному разработчику в 99% матанализ не нужен.

Мнение Сергея: За 20 лет в разработке и работе в enterprise я с матанализом не сталкивался.

Data Scientist / Machine Learner / AI Engineer — в чем разница?

AI Engineer — это из области научных исследований. Потому что мы даже до сих пор точно не знаем, что такое интеллект. Когда узнаем — сможем его создать. Вообще это максимально сложно, поэтому этим занимаются профессора и кандидаты наук. При этом платят там не очень много.

Machine Learner и Big Data Scientist (именно Scientist, потому что Big Data Engineer — это очень дорого и сложно; привет, Scala, длинные пайплайны и большая цена ошибки) это очень часто одно и то же.

Когда нейронные сети будут обучать тех, кто их создал?

Они уже обучают. Например, великие мастера китайской логической игры го смотрят игры нейронок, чтобы научиться играть лучше.

Где искать комьюнити и практиковаться в Machine Learning?

Идите на Kaggle.

Останні статті

Что такое прокси-сервер: пояснение простыми словами, зачем нужны прокси

Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…

21.11.2024

Что такое PWA приложение? Зачем необходимо прогрессивное веб-приложение

Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…

19.11.2024

Как создать игру на телефоне: программирование с помощью конструктора

Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…

17.11.2024

Google Bard: эффективный аналог ChatGPT

В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…

14.11.2024

Скрипт и программирование: что это такое простыми словами

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

12.11.2024

Дедлайн в разработке: что это такое простыми словами

Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…

11.11.2024