Что востребовано в Data Science в 2018 году
Портал KDnuggets ежегодно проводит опрос среди читателей, желая выяснить, какие инструменты программирования используют специалисты в той или иной области. В Data Science голоса разделились следующим образом:
В опросе смешалось всё: языки, приложения, пакеты, библиотеки. Но несмотря на хаос, распределение красноречиво говорит о том, за что надо взять на вооружение в наступившем году, если вы хотите достигнуть высот в Data Science. Давайте остановимся на каждом пункте чуть подробнее.
Python
Использует: 52,6 % всех опрошенных.
Динамика роста: +15 % за последний год.
Самодостаточность (процент опрошенных, кто пользуется только этим инструментом): 0,2 %.
Python показывает хорошую динамику: если в прошлом году он уступал первое место R, то в этом – перегнал своего главного конкурента. Востребованным язык делает его простота и большое количество библиотек, лидером – универсальность. Это можно проследить на примере других представителей рейтинга, среди которых «профильные» Tensorflow, scikit-learn, Anaconda.
R
Использует: 52,1 %.
Динамика роста: +6,4 %.
Самодостаточность: 3,3 %.
До прошлого года R возглавлял рейтинг наиболее используемых в Data Science языков. Причина схожа с Python – благодаря простому синтаксису, по сути системе команд, с R очень легко работать даже далёкому от программирования человеку.
SQL Language
Использует: 34,9 %.
Динамика роста: -1,8 %.
Самодостаточность: 0 %.
Некогда главный инструмент для взаимодействия с базами данных постепенно утрачивает авторитет. Главная причина – конкуренты, которые постоянно обрастают новыми функциями и библиотеками. SQL же всё такой же простой инструмент для взаимодействия с БД, с которым приходится прощаться, когда речь заходит о действительно больших данных.
RapidMiner
Использует: 32,8 %.
Динамика роста: +0,7 %.
Самодостаточность: 13,6%.
Самый высокий рейтинг самодостаточности в рейтинге понятен каждому, кто представляет, что такое RapidMiner. Это электронный конструктор, позволяющий любому учёному или математику, не зная программирования, при помощи блоков рассчитать любые данные, построить модели, составить таблицы, импортировать и экспортировать данные. Огромная популярность обусловлена тем, что это, пожалуй, самый совершенный Open Source проект в Data Science, в то время как закрытые аналоги (LabView, Simulink) требуют огромных затрат.
Excel
Использует: 28,1 %.
Динамика роста: -16 %.
Самодостаточность: 0,1 %.
Главное отличие начинающего специалиста Data Science от рядового юзера – представление о том, какие данные можно называть большими. Excel в этой области лишь один из вспомогательных инструментов, далеко не самый удобный. И кажется, что с каждым годом его функциональность лишь падает. Тем не менее, более четверти опрошенных используют его для простых операций – фильтрации, сортировки, просмотра таблиц, создания простых макросов.
Spark
Использует: 22,7 %.
Динамика роста: +5,3 %.
Самодостаточность: 0,2 %.
Фреймворк, работающий на Java Virtual Machine, поддерживает языки Java, Python, Scala и R. Вы можете прикрутить надстройки для машинного обучения, создания графов или обработки потоковых данных. Больше подойдёт уже готовым программистам, с хорошим знанием одного из профильных языков, которым требуется обрабатывать большие выборки.
Anaconda
Использует: 21,8 %.
Динамика роста: +37 %.
Самодостаточность: 0,8 %.
Отличный дистрибутив, содержащий все базовые библиотеки Python, в том числе предназначенные для обработки и визуализации данных. При этом Anaconda – продукт общего пользования, а не инструмент Data Science, поэтому рассчитывать на какие-то бонусы в работе не стоит.
Tensorflow
Использует: 20,2 %.
Динамика роста: +195 %.
Самодостаточность: 0 %.
Запущенная в 2015 году программная платформа от Google является одним из самых стремительно развивающихся продуктов в области. Предназначен для работы с нейронными сетями глубинного обучения, но, в отличие от конкурентов, прост и понятен в использовании. Позволяет создавать отдельные кодовые блоки на Python, Haskell, Java, Go или C++, графически объединять их в системы, управлять входными и выходными данными.
Scikit-learn
Использует: 19,5 %.
Динамика роста: +13 %.
Самодостаточность: 0 %.
Python-библиотека, направленная на машинное обучения. Расширяет возможности двух других библиотек – NumPy и SciPy, поэтому предварительно придётся освоить их. Scikit содержит специализированные функций для перебора, фильтрации, классификации, позволяющих реализовать сложные алгоритмы всего в нескольких строках кода.
Tableau
Использует: 19,4 %.
Динамика роста: +5 %.
Самодостаточность: 0,4 %.
Tableau – бизнес-инструмент для создания аналитических отчётов, графиков и гистограмм. В своей сфере – одно из самых производительных решений, позволяющее оперативно выкладывать данные на сервер или сайт, управлять ботами, организовывать рассылки и многое другое. И всё это внутри продукта.
KNIME
Использует: 19,1 %.
Динамика роста: + 6,3 %.
Самодостаточность: 2,4 %.
Аналог RapidMiner, позволяющий любому человеку, не знающему программирование, да и вообще не очень опытному пользователю компьютера, при помощи блоков и стрелочек выполнять сложные математические операции. Имеет значительные ограничения в настройках готовых блоков, но позволяет создавать свои скрипты в R или Python. Поэтому следующим шагом в развитии станет изучение этих языков.
Помимо участников этого рейтинга стоит обратить внимание на другой – с самыми прогрессирующими в плане популярности инструментами Data Science. Выглядит он так:
Tool |
% change |
2017 % usage |
2016 % usage |
Microsoft, CNTK |
294% |
3.4% |
0.9% |
Tensorflow |
195% |
20.2% |
6.8% |
Microsoft Power BI |
84% |
10.2% |
5.6% |
Alteryx |
76% |
5.3% |
3.0% |
SQL on Hadoop tools |
42% |
10.3% |
7.3% |
Microsoft other ML/Data Science tools |
40% |
2.2% |
1.6% |
Anaconda |
37% |
21.8% |
16.0% |
Caffe |
32% |
3.1% |
2.3% |
Orange |
30% |
4.0% |
3.1% |
DL4J |
30% |
2.2% |
1.7% |
Other Deep Learning Tools |
30% |
4.8% |
3.7% |
Microsoft Azure Machine Learning |
26% |
6.4% |
5.1% |
Некоторые из них вполне могут стать must-know завтра.