Дата скиенсист что это
Знакомимся с Data Science: от новичка до специалиста
Несколько лет назад Harvard Business Review назвал Data Scientist наиболее сексуальной профессией века. С тех пор её «сексуальность» только росла, а потребность в специалистах увеличивается по экспоненте. В 2016 году Data Scientist вошла в топ-25 лучших вакансий на территории Соединённых Штатов по версии Glassdoor. На Россию тенденция тоже распространяется, хоть и не в таких больших масштабах. Однако, потребность в квалифицированных кадрах всё же растёт.
реклама
Что такое Data Science – кто такой Data Scientist
Чтобы понять, кто такой Data Scientist, нужно сначала дать определение самой профессии. Называется она Data Science. В последнее время термин стал очень популярным, и вы часто можете встречать его, бороздя просторы всемирной паутины.
реклама
Так вот, Data Science – работа с большими данными. Отметим, что термин «большие данные» уже прочно укоренился, хотя изначально использовался английский вариант – Big Data. Большие данные представляют собой огромные объёмы неструктурированной информации, для обработки которой требуется математическая статистика и машинное обучение.
Специалист, который занимается этим, называется Data Scientist. Его задачей является анализ больших данных, на основе которых можно сделать прогноз в зависимости от поставленной задачи. В конченом счёте финальным продуктом Data Scientist’a является создание прогнозной модели – алгоритма для оперативного поиска наиболее подходящего решения поставленной задачи.
Вы могли не знать, но с результатами работы специалистов в сфере Data Science вы встречаетесь по несколько раз в день. Например, когда слушаете музыку в YouTube Music, Spotify или Deezer. В этих стриминговых сервисах алгоритмы, написанные дата сайентистами, подбирают композиции, наиболее соответствующие вашим вкусовым предпочтениям. Так же само рекомендуются видеоролики в соответствующих сервисах и списки пользователей, с которыми вы можете быть знакомы, в социальных сетях.
Где работает Data Scientist
реклама
Если вы не хотите применять свои умения только для того, чтобы помогать людям быстрее находить одноклассников и учить программное обеспечение рекомендовать к прослушиванию Eisbrecher после Rammstein – не переживайте. Есть ещё немало областей, в которых можно применить свои таланты.
Например, в транспортной компании Data Scientist позволяет найти оптимальный маршрут передвижения, а на производстве созданные модели могут помочь спрогнозировать сбои в работе. Страховым компаниям дата сайентисты помогают рассчитать вероятность страхового случая, а в сельском хозяйстве делают прогноз по урожаю и ищут способы наиболее эффективного использования с/х угодий. Кроме того, на базе алгоритмов в медицине оборудование может автоматически ставить диагнозы пациентам.
реклама
Несмотря на то, что специалистов в Data Science становится всё больше, количество высококвалифицированных кадров всё ещё не соответствует спросу на них. Это приводит к росту оплаты труда. Заработная плата зависит от опыта работы. Например, специалисты, которые уже имели дело с большими массивами данными, а в их арсенале есть глубокие знания и навыки построения математических моделей, могут получать в Москве свыше 100 000 рублей ежемесячно. Для дата сайентистов без опыта зарплата стартует примерно 70 000 рублей в столице Российской Федерации.
Само собой, российские зарплаты ни в какое сравнение не идут с американскими. Например, хороший специалист с опытом в Соединённых Штата может получать свыше 130 000 долларов в год, т.е. порядка 11 000 долларов в месяц.
Пройти курс обучения Data Science с нуля
На сегодняшний день при наличии большого желания расти в области анализа больших данных не составляет никакого труда пройти курсы по Data Science. В России есть масса возможностей на любой кошелёк и вкус. Например, программа GeekBrains, разработанная совместно с NVIDIA и «МегаФон», обучает Data Science с нуля.
Для прохождения курса студентам будет достаточно школьных знаний, а онлайн-университет обеспечит всеми необходимыми ресурсами и инструментарием. В рамках программы обучающиеся будут ознакомлены с нейронными сетями и технологиями машинного обучения.
Программа в GeekBrains подойдёт как начинающим аналитикам, предоставив толчок для карьерного роста, так и для практикующих специалистов, желающих перейти в более востребованное направление. Курс состоит из 262 часов обучающего контента, 534 часов практики, 2-4 еженедельных семинаров и гарантирует трудоустройство.
Обучение разделено на четверти. С октября по декабрь студенты занимаются изучением основ языка Python, осваивают операционную систему Linux, создают сервера в облачных сервисах AWS. Также в список целей входит обучение SQL.
Во второй четверти студенты продолжают изучать библиотеки Python для Data Science, а также начинают решать задачи по комбинаторике, изучают методы проверки статистических гипотез и знакомятся с особенностями открытых данных. В третьей четверти придётся уделить внимание математике. В течение трёх месяцев нужно детально изучить математические аспекты алгоритмов, которым находится применения в Data Science.
Последний этап первого года уделён машинному обучению, а его программа разработана совместно с «МегаФон». Студентам даётся три месяца, в течение которых нужно научиться решать бизнес задачи, применяя машинное обучение. Также в рамках четвёртой четверти обучения удастся изучить реализацию рекомендательных систем.
Второй год обучения начинается с изучения нейронных сетей. Студенты решают задачи ML с данными из социальных сетей и др., а также на практике знакомятся с Tensorflow, Keras и PyTorch. Наконец, во второй четверти второго года изучаются продвинутые архитектуры нейронных сетей, компьютерное зрение и нейролингвистическое программирование.
Заключение
В целом, Data Scientist – профессия, которая требует как теоретических знаний, так и практических навыков. Причём вряд ли вам удастся обойтись опытом лишь одной профессии. Чтобы освоить Data Scientist, придётся приложить немало усилий и времени, но в конечном счёте это должно будет окупиться сполна.
Первые полтора года опыта в профессии вы можете получить на курсе «Data Science с нуля». После прохождения которого вы также получите полную поддержку при трудоустройстве, начиная от помощи в составлении резюме до подготовки к собеседованию.
Обзор профессии Data Scientist
Data Scientist — это эксперт по аналитическим данным, который обладает техническими навыками для решения сложных задач, а также любопытством, которое помогает эти задачи ставить. Они частично математики, частично компьютерные ученые и частично трендспоттеры.
Данные PayScale
В России цифра составляет от 60-70 тысяч рублей в месяц для совсем «зеленых» новичков и доходит до 220 для опытных специалистов.
Как сказал DJ Patil, бывший главный научный сотрудник отдела научно-технической политики Соединенных Штатов, — «Data scientist — это специалист с уникальным сплавом навыков, который делает удивительные находки и воплощает фантастические истории — и все это благодаря данным».
Чем на самом деле занимаются специалисты по Big Data? Они постоянно сталкиваются с ограничениями — техническими, методологическими и любыми иными — и находят пути для новых решений. Совершают открытия, анализируя и прогнозируя. В Data Science есть место и творчеству: специалисты изобретают элегантные решения сложных задач, а также качественно визуализируют информацию, делать шаблоны понятными и убедительными.
Пример из жизни Data Scientist: «Джонатант Голдман, физик из Стэнфорда, устроился на работу в социальную сеть LinkedIn, и начал заниматься чем-то, что нельзя было измерить в KPI или посмотреть на конечный результат: сайт, исправление бага, внедрение фичи. Пока команда разработчиков ломала голову над тем, как модернизировать сайт и справиться с наплывом посетителей, Голдман строил прогностическую модель, которая подсказывала владельцу аккаунта LinkedIn, кто еще из пользователей сайта может оказаться его знакомым. Убедив руководство компании опробовать его новую модель, Голдман приносит соцсети миллионы новых просмотров и значительно ускоряет ее рост».
Нет определенного описания этой профессии — все зависит от сферы применения навыков работы с данными. Однако, есть вещи, которыми занимается любой Data Scientist:
Итак, вы уже поняли, что Data Scientist — человек, умеющий не только добывать и анализировать, но и обрабатывать большие массивы данных, совершая поистине волшебство с помощью множества инструментов. Если вы хотите заняться Data Science по-настоящему, то заготовьте не просто Excel, но и знания по Python, учебник по математическому анализу, и готовьтесь учиться.
Ну, и в конце мы просто хотели вас порадовать. Вот полезные ссылки. Первая — с 51 бесплатной книгой, связанной с Data Science. А вот крупнейшее Data Science сообщество. Еще есть отличный учебник Петера Флаха «Машинное обучение. Наука и искусство построения алгоритмов, которые извлекают знания из данных», переведенный на русский язык.
Все что вы (не) хотели знать о Data Science
Всем привет! Меня зовут Михаил Дьячков, и в Ситимобил я занимаюсь анализом данных и машинным обучением. Сегодня я хочу поговорить о Data Science: что же это вообще такое в глазах кандидатов, работодателей и экспертов; о несовпадении ожиданий, грейдах и собеседованиях, а также о том, какие задачи решают дата саентисты в Ситимобил.
Что такое Data Science?
Пожалуй, самое лаконичное определение, которое мне удалось найти в интернете:
Data science (Наука о данных) — это дисциплина, которая позволяет сделать данные полезными.
Я думаю, что если найти пересечение различных определений что же такое Data Science, то им будет лишь одно слово — данные. Всё это говорит о том, что широта применения Data Science огромна. Согласитесь, но ведь в этом нет ничего хорошего ни для кого: ни для вас, ни для бизнеса. Эта широта не дает никакой информации о вашей потенциальной деятельности. Ведь с данными можно делать всё, что угодно. Можно строить сложные отчеты или «шатать» таблички с помощью SQL. Можно предсказывать спрос на такси константой или строить сложные математические модели динамического ценообразования. А еще можно настроить поточную обработку данных для высоконагруженных сервисов, работающих в режиме реального времени.
А вообще, причем здесь слово «наука»? Безусловно, под капотом у Data Science серьезнейший математический аппарат: теория оптимизации, линейная алгебра, математическая статистика и другие области математики. Но настоящим академическим трудом занимаются единицы. Бизнесу нужны не научные труды, а решение проблем. Лишь гиганты могут позволить себе штат сотрудников, которые будут только и делать, что изучать и писать научные труды, придумывать новые и улучшать текущие алгоритмы и методы машинного обучения.
К сожалению, многие эксперты в этой области на разных мероприятиях зачастую связывают Data Science в первую очередь с построением моделей с помощью алгоритмов машинного обучения и довольно редко рассказывают самое важное, по-моему, — откуда возникла потребность в той или иной задаче, как она была сформулирована на «математическом языке», как это всё реализовано в эксплуатации, как провести честный эксперимент, чтобы правильно оценить бизнес-эффект.
Кто такой Data Scientist?
Когда мы поняли, что ничего не поняли, стоит поговорить о data scientist’ах — специалистах по анализу данных.
Data Scientist в глазах потенциального работодателя
Одни считают, что эта должность подразумевает построение нейросетей в Jupyter Notebook’e. Другие ждут от таких специалистов, что те придут и будут закрывать все задачи «под ключ». А третьи просто хотят иметь в штате таких модных ребят. Такое разное понимание должности или непонимание вовсе может навредить при найме и вам, как кандидату, и компании.
Очень хорошую аналогию с Computer Science привел Валерий Бабушкин в своем докладе «Почему вы никогда не наймете дата саентиста». Постараюсь кратко ее передать.
Computer Science — некоторая область тесно связанных между собой дисциплин, но при этом почему-то никто не ищет на работу Computer Scientist’a. На работу ищут разработчика, тестировщика, DevOps’ов, архитекторов. Даже разработчика ищут frontend- и backend-разработчиков, вплоть до того, что ищут backend-разработчика на C++. Почему это хорошо? Потому что даже из названия вакансии на 90 % понятно, чем будет занят backend-разработчик на C++. Это дает довольно много информации и снижает энтропию. А если вы вдруг ищете Computer Scientist’a, то по-русски это что, компьютерщик? Это что-то из девяностых или нулевых. «У нас сломался принтер, позовите компьютерщика».
Из всего этого вырисовывается проблема. Если сходить на 10 собеседований, даже не обязательно в разные компании, в которых ищут Data Scientist’a, то вы поймете, что на каждом собеседовании от вас будут ожидать совершенно разного, и в конечном итоге у вас будут совершенно разные задачи. Где-то вам предложат в рамках ИИ-трансформации 200 Excel-файлов. В другом месте предложат поднять кластер на несколько петабайт. На третьем собеседовании вам расскажут, что ожидают от вас визуализацию метрик в Tableau. На четвёртом вас попросят построить real-time рекомендательную систему, которая будет работать под нагрузкой в несколько тысяч запросов в секунду. На пятом собеседовании будут задачи по компьютерному зрению, а на шестом придётся писать сложные SQL-скрипты. В седьмой компании вас заставят читать статьи, строить красивые Jupyter notebook’и и писать какие-то прогнозы. А где-то ещё и собрать эти расчеты в Docker-контейнер, и с помощью Kubernetes развернуть свой сервис на много машин.
Но проходит какое-то время и наступает суровая реальность: оказывается, что прежде чем обучать модели и подбирать гиперпараметры, нужно сделать очень много чего. Например, пообщаться с бизнесом и понять, какая же у них на самом деле головная боль, затем сформулировать эту боль на математическом языке, найти данные для задачи, очистить их, подумать над признаками, собрать модели, обернуть всё это в MLflow, положить в Docker-контейнер, оценить потенциальные нагрузки и отправить в эксплуатацию. Это можно сравнить с ситуацией, когда у вас спрашивают: «Ягоду будете?», вы отвечаете: «Да» и получаете арбуз — это ведь тоже ягода.
Как решать проблему несовпадения ожиданий?
Алексей Натекин в своем докладе «Чем отличаются data analyst, data engineer и data scientist» нарисовал картинку с распределением Дирихле, то есть с вероятностью вероятностей.
Предположим, что в Data Science существуют три основные компетенции:
Математика. Теоретические знания алгоритмов машинного обучения, и математическая статистика для проверки разных статистических гипотез и обработки результатов, а также любые другие фундаментальные знания, которые будут важны в вашей предметной области.
Разработка. Всё, что связано с разработкой, инженерными составляющими проекта, DevOps, SysOps, SRE, и прочее.
Предметная область. Навыки коммуникации с коллегами и бизнесом, чтобы понимать, какую проблему они хотят решить, на какие вопросы ответить.
И Data Scientist в этой парадигме — это некоторое наблюдение из нашего распределения Дирихле. Но с помощью этого распределения можно ввести несколько новых должностей, которые будут давать более ясное представление о вашей потенциальной деятельности. Рассмотрим несколько из них.
Если вы ищете работу на позицию Machine Learning Engineer, то, скорее всего, будете заниматься введением в эксплуатацию моделей машинного обучения и поддерживать их в актуальном состоянии. Для этого вам потребуются навыки и знания в области алгоритмов машинного обучения, ну и, конечно, разработки.
Если вы аналитик данных, то, вероятно, вы будете заниматься проверкой статистических гипотез, проектировать и проводить эксперименты. Для этого вам требуются фундаментальные знания математической статистики, а также необходимо держать руку на пульсе бизнеса.
Дата-инженер — это человек, который занимается ETL-процессами, архитектурой хранилища, составляет витрины и поддерживает их, организовывает потоковую обработку данных.
Machine Learning Researcher занимается исследовательской работой. Пишет и изучает статьи, придумывает новые математические методы. Таких позиций в России довольно мало, да и встречаются они, как правило, в крупных компаниях, которые могут себе это позволить.
Аналитик — это человек, который отвечает на вопросы бизнеса, и его плотность вероятности приходится на предметную область.
Наконец, DevOps максимально сосредоточен на разработке и развёртывании вашего кода в продакшене.
Junior/Middle/Senior/Team Lead/.
Попробуем коротко сформулировать профиль человека, который будет находиться на каждом из грейдов в мире Data Science. Не стоит забывать, что от компании к компании уровень компетенций для каждого из грейдов может довольно сильно отличаться.
Junior Data Scientist
Умеет реализовать полный DS-пайплайн: «приготовить» данные, обучить модель, измерить ее качество.
Делает только то, что ему сказали.
Нуждается в постоянной опеке и контроле.
Middle Data Scientist
Имеет подтвержденный на практике результат, например, построил и внедрил модель оттока клиентов, которая экономит компании N млн. руб в год.
Может обсуждать бизнес-постановку задачи.
В меру самостоятельный.
Senior Data Scientist
Имеет более обширный опыт по сравнению с мидлом.
Может самостоятельно формулировать и решать задачи.
Имеет опыт наставничества или готов быть ментором.
Обладает высоким уровнем эмоционального интеллекта.
Уровень технических компетенций выше мидла.
Если у middle ребят возникают проблемы с ростом и развитием, то зачастую это связано с
не готовностью брать ответственность и инициативу на себя и доводить дело до конца
неумением находить общий язык с бизнес заказчиками и смежниками
недостаточным уровнем эмоционального интеллекта и/или отсутствия понимания его важности в рабочей деятельности
А дальше уже сложнее, потому что тимлид может руководить как командой из 2-3 человек, так и несколькими отделами. Вот примеры «уровней» тимлида:
Эксперт, который отвечает за конкретные участки DS-пайплайна. Работает в соответствие с поставленными перед ним задачами. Координирует работу нескольких младших коллег.
Ставит задачи экспертам в соответствии с заданным планом и координирует их работу. Несет ответственность за конкретное направление DS в компании.
Отвечает за продукт/проект/направление, имеющие большое значение для крупной компании. Определяет требования к команде и составляет планы в соответствии с заданным направлением действий.
Отвечает за стратегически важный продукт/проект/направление в крупной компании. Руководит большой командой data scientist’ов и аналитиков. Задает команде направление действий, оценивает сроки и затраты, отвечает за результаты проектов.
Чем выше ваш уровень, тем больше ответственности и тем сложнее направление R&D. А значит, и больше ваша зарплата.
Но всё же можно выделить характерные отличия тимлида. Безусловно, этот человек должен обладать техническими навыками (hard skills): он знает, как сделать так, чтобы «всё заработало», может ответить на специфичные для продукта вопросы, знает, как работает продукт. А еще тимлид планирует и формулирует задачи (впоследствии «продаёт»), раскладывает их на составляющие, напрямую общается с бизнесом, работает с командой, занимается развитием и ростом своих ребят. Для тимлида важно думать и жить в терминах продукта и бизнеса, быть проактивным и доводить дело до конца.
Подготовка к собеседованию
Я за свою карьеру провел немало собеседований и могу дать несколько советов начинающим специалистам, что нужно обязательно сделать перед отправкой резюме в компанию и собеседованием.
Прежде чем откликаться на вакансию, внимательно прочитайте её описание до конца. Казалось бы, что за дурацкий совет. Но, как показывает практика, очень многие не делают даже этого. И на собеседовании порой возникают неловкие моменты.
Попробуйте поискать информацию о вашей потенциальной компании. Было бы здорово иметь представление о ней и о продукте.
Ознакомьтесь со списком ожидаемых знаний и навыков. Ответьте себе на вопрос, пересекаетесь ли вы с этим списком, и если да, то насколько глубоко.
Определите для себя, на какую зарплату вы претендуете. Если не можете ответить, то можно посмотреть актуальные вакансии с вилками в сообществе OpenDataScience в канале #_jobs, и таким образом оценить текущее состояние рынка.
Займитесь своим резюме. Его структура и выделение ваших ключевых особенностей, навыков и результатов очень важны при просмотре работодателем.
Не нервничайте. Проходить собеседования тоже нужно уметь, и тут без опыта никуда.
Что будет на собеседовании
Беседа будет строится вокруг:
Вашего опыта, подтвержденного результатом. Важно понимать, как ваш проект повлиял на бизнес, а не как вы повысили auc roc на 2 %.
Ваших знаний о моделях и алгоритмах машинного обучения. Причем вряд ли на собеседовании на позицию, где предстоит заниматься задачами динамического ценообразования, вас будут спрашивать о глубоких нейронных сетях, которые решают задачи сегментации изображений.
Метрик оценки качества моделей (как оффлайн, так и онлайн).
Статистических критериев и всего, что каким-то образом связано с проведением экспериментов.
Программирования, например, на Python (задача для разминки: реверсировать список).
Возможно, алгоритмов и структур данных, если ваша работа как-то связана с высоконагруженными сервисами.
Технологий, с которыми вы работали и/или с которыми вам предстоит работать.
Culture fit и поведенческой составляющей.
Примеры популярных технических вопросов на собеседовании с начинающим специалистом, ответы на которые, увы, могут дать далеко не все:
Что такое логистическая регрессия и как она работает?
Чем фундаментально отличается градиентный бустинг на деревьях от алгоритма случайного леса?
Как проверить статистическую значимость в АБ-эксперименте?
Какие вы знаете метрики оценки качества в задачах бинарной классификации?
Какие встроенные структуры данных в Python неизменяемы?
На самом собеседовании не стесняйтесь задавать вопросы. Это не экзамен, здесь должен быть диалог. Поинтересуйтесь, какая у вас будет команда, задачи, какие технологии вы будете использовать в работе, какие от вас ожидают результаты, какие глобальные цели у компании.
Как дела обстоят у нас
Мы создаем систему городской мобильности с человеческим отношением к пассажирам и водителям. И хотим сделать это отраслевым стандартом. Хотим встречать и провожать пассажиров в аэропорты и на вокзалы; доставлять важные документы по указанным адресам быстрее курьеров; сделать так, чтобы на такси было не страшно отправить ребёнка в школу или девушку домой после свидания, даем возможность выбрать транспорт — каршеринг, такси или самокат. И даже если нашим пассажиром является котик, то ему должно быть максимально комфортно.
У нас есть большой отдел эффективности платформы (или Marketplace), где в каждом из направлений работают специалисты по обработке и анализу данных.
Ценообразование: правильный и правдоподобный предрасчет цены для клиента на предстоящую поездку. Мы разрабатываем алгоритмы, которые тонко настраивают наши цены под специфические региональные и временные условия, а также помогают нам держать вектор оптимального ценового роста и развития
Клиентские мотивации: помогают нам привлекать новых клиентов, удерживать старых и делать нашу цену самой привлекательной на рынке. Основное направление — это разработка алгоритма оптимального распределения бюджета на скидки клиентам для достижения максимального количества поездок. Мы стремимся создать выгодное предложение для каждого клиента, поддержать и ускорить наш рост
Водительские мотивации: одна из главных задач Ситимобил — забота о водителях. Наши алгоритмы создают для них среду, в которой каждый работает эффективно и зарабатывает много. Мы стремимся разработать подход, позволяющий стимулировать водителей к выполнению поездок там, где другие алгоритмы не справляются: возмещаем простой на линии, если нет заказов, и гарантируем стабильность завтрашнего дня для привлечения всё новых и новых водителей.
Динамическое ценообразование: главная задача направления — гарантировать возможность уехать на такси в любое время и в любом месте. Достигается это за счет кратковременного изменения цен, когда желающих уехать больше, чем водителей в определенной гео-зоне.
Распределение заказов: эффективные алгоритмы назначения водителей на заказ уменьшают длительность ожидания и повышают заработок водителей. Задача этого направления — создать масштабируемые механизмы назначения, превосходно работающие как в целом по городам, так и в разрезе каждого тарифа.
Исследование эффективности маркетплейсов: центральное аналитическое направление, задачей которого является анализ эффективного баланса между количеством водителей на линии и пассажирами.
ГЕО сервисы: эффективное использование геоданных помогает различным командам эффективно настраивать свои алгоритмы, которые напрямую зависят от качества этих данных. Мы стремимся создавать такие модели, сервисы и алгоритмы, которые не только повышают качество маршрутизации и гео-поиска, но и напрямую воздействуют на бизнес, а также клиентский опыт.
Специалист по анализу данных (data scientist) может иметь очень широкий спектр обязанностей. Это сложная и увлекательная профессия, требующая самых разных навыков и позволяющая решать очень интересные задачи. Если вас заинтересовали наши направления, то обязательно заходите на нашу публичную страницу с вакансиями и откликайтесь на них.