Кто занимается машинным обучением и что сейчас популярно в Data Science? Результаты опроса среди пользователей Kaggle
Привет, Хабр! В августе 2017 года платформа для проведения соревнований по машинному обучению Kaggle провела опрос среди более чем 16 000 респондентов с целью узнать, в каком состоянии сейчас находится анализ данных и машинное обучение. Результаты были выложены в открытый доступ, поэтому мы решили проанализировать, чем отечественный Data Science отличается от зарубежного, как выглядит типичный пользователь Kaggle в России и в мире, и, наконец, какие алгоритмы и фреймворки наиболее популярны.
В опросе приняли участие 16 716 респондентов из 171 страны. Количество участников опроса из России составило 578 человек.
Кто пользуется Kaggle?
Что из себя представляет типичный участник соревнований по машинному обучению? Сперва посмотрим на распределение возраста пользователей Kaggle в мире и в России:
Как видно на гистограммах, в большинстве своем пользователями Kaggle являются люди в возрасте от 20 до 40 лет, хотя, конечно, имеется и немалое количество пользователей в преклонном возрасте, что не может не вызывать восхищения, учитывая, насколько молода и динамична эта область. В сравнении с остальным миром в нашей стране машинным обучением увлекаются люди, которые чуть моложе: медианный возраст респондентов равен 28, тогда как во всем мире — 30 лет.
Теперь взглянем на гендерную структуру пользователей платформы:
Как и ожидалось, мужчин, занимающихся анализом данных в мире, так же, как и в России, все еще большинство.
Сколько зарабатывают пользователи Kaggle?
Сегодня анализ данных привлекает все больше и больше людей. Это неудивительно, ведь помимо инновационного характера и наличия огромного количества интересных задач, эта область может похвастать одними из самых высоких зарплат не только среди IT-профессий, но и на всем рынке труда. Проверим, так ли это:
Во-первых, видим, что модой плотности распределения является интервал от 0 до 15 тыс. долл. в год, то есть наиболее часто встречаются зарплаты именно в этом диапазоне — 869 человек из 4 351 (те, кто предоставили свои данные по заработку) или около 20%. Если говорить о медианном значении, то оно равно 54 тыс. долл. в год — выше, чем в большинстве стран мире. К примеру, официальная средняя зарплата в США за 2016 год была равна 44 тыс. долл. в год. Наконец, отметим, что есть и некоторое количество людей, которые зарабатывают значительно больше, чем основная масса: максимальный оклад в выборке равен 699 тыс. долл. в год!
Видимо, специалисты по работе с данными могут рассчитывать на вполне достойную оплату труда в мире. А какова ситуация в России по сравнению с другими странами?
Boxplot — отличный способ сравнивать распределения. Наглядно видно, что по заработной плате специалиста по машинному обучению нам пока не сравниться ни с немцами, ни тем более с американцами: медиана по нашей стране равна 17,5 тыс. долл. или 1,05 млн руб. в год, в то время как в Германии и США эти значения составляют 72 и 107 тыс. долл. соответственно. Страной же, в которой заработная плата в области анализа данных сопоставима с нашей, является Индия. Ситуацию не скрашивает и тот факт, что из 976 человек с окладом более чем 100 тыс. долл. в год лишь 3 россиянина, когда в той же Индии их 11.
Также интересно посмотреть, какие должности занимают пользователи Kaggle в своих компаниях:
Как и ожидалось, в топ-2 наиболее распространенных профессий на Kaggle, как во всем мире, так и в России вошли Data Scientist и Software Engineer. Однако, в то время как в целом на Kaggle data scientist-ов на 40% больше, чем разработчиков, в нашей стране ситуация обратная, что несколько необычно: software engineer-ов, участвующих в соревнованиях по машинному обучению ничуть не меньше, чем data scientist-ов.
Стоит отметить, что заработная плата по должностям коррелирует с этим «рейтингом популярности»: представители наиболее популярных на Kaggle должностей превосходят своих коллег не только по количеству, но и по оплате труда. Так, среди всех участников опроса data scientist-ы получают значительно больше разработчиков, но в России — наоборот: несмотря на непрекращающийся рост популярности, отечественные data scientist-ы пока не могут похвастать тем же, что и их иностранные «тезки».
Далее бэкграунд и уровень образования «кэгглеров»:
Неудивительно, что в топе находятся люди с бэкграундом в Computer Science, математике и статистике, а также имеющие образование в области инженерии и физики. Говоря об уровне образования пользователей платформы, видим, что большая их часть имеют диплом магистра, затем идут бакалавры, и, наконец, немалую долю занимают доктора наук.
Кстати, как уровень образования влияет на заработную плату в сфере анализа данных?
Таким образом, диплом магистра не дает существенного преимущества перед степенью бакалавра, в то время как PhD в среднем могут рассчитывать на более высокий оклад. Отличный стимул для тех, кто хочет заниматься наукой, но сомневается, идти ли за степенью или после окончания магистратуры сразу начинать строить карьеру.
Какие алгоритмы и инструменты наиболее популярны в анализе данных сейчас?
Начнем с алгоритмов:
Классика жива и все еще в тренде: линейную и логистическую регрессии чаще всего применяют в своей работе участники соревнований от Kaggle. За ними следуют деревья решений, случайные леса и нейронные сети. Главное отличие нашей страны от остального мира в этом аспекте заключается в том, что градиентный бустинг у нас намного более популярен, тогда как за рубежом вместо него предпочитают использовать SVM или байесовские классификаторы. Предлагайте в комментариях ваши версии, почему это так.
Теперь перейдем к инструментарию:
На данный момент без владения Python и SQL невозможно представить себе хорошего data scientist-а, что и подтверждается результатами опроса. Помимо них в топ-5 по популярности входят Jupyter Notebooks, библиотека глубокого обучения TensorFlow и R. Последний, кстати, в России не пользуется такой же популярностью, как за рубежом.
Наконец, посмотрим, какие направления в анализе данных являются наиболее популярными в индустрии?
Ожидаемо, наиболее популярным направлением в мире и в России стало обучение с учителем. Также в индустрии широко используется анализ временных рядов, обучение без учителя, обработка естественного языка и выявление выбросов, а, к примеру, широко обсуждаемому в последнее время обучению с подкреплением пока не было найдено достаточно широкое практическое применение.
Данные можно скачать тут, а несколько других отчетов посмотреть тут.
Конечно, все, кто интересуются анализом данных, рано или поздно захотят участвовать соревнованиях по машинному обучению на Kaggle. Именно поэтому мы в Newprolab в рамках программы «Специалист по большим данным» даем участникам возможность попробовать свои силы в таких соревнованиях, и оба проекта на программе позволяют это сделать: в первом из них участники соревнуются в наилучшем прогнозировании пола и возрастной категории пользователей интернета, только имея их логи посещения, а во втором проекте пытаются добиться максимального результата рекомендательной системы с точки зрения метрики NDCG. Набор в восьмую группу уже идет, а для early birds есть 15% скидка. Вся информация о программе здесь.