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

Мне было сложно менять профессию. У меня было смутное представление как о собственной квалификации, так и о рассматриваемых мной вакансиях. Кроме того, у меня не было ни одного знакомого дата-сайентиста, к которому можно было бы обратиться за советом.

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

В чем разница между дата-аналитиком и дата-сайентистом?

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

Навыки дата-аналитика и дата-сайентиста

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

Differentiating data analyst and data scientist skills (dwcdn.net)

Таблица составлена автором

Опирайтесь на текущие аналитические навыки

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

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

Какие типы данных вы анализировали?

  • Качественные или количественные?
  • Текстовые или числовые?
  • Номинальные, порядковые или категориальные?
  • Дискретные или непрерывные?
  • Потоковые (живые) или архивные?
  • Структурированные, полуструктурированные или неструктурированные?
  • Данные временных рядов или геолокации?
  • Пользовательские или операционные?

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

  • Получение данных из различных источников (из баз данных, Google Таблиц, файлов Excel).
  • Очистка данных (стандартизация, удаление выбросов, объединение данных в Excel путем вертикального просмотра, конструирование признаков).
  • Анализ данных (сводные таблицы, графики, SQL-запросы, R/Python, SPSS).
  • Обмен полученными результатами (с внутренними и внешними заинтересованными сторонами).
  • Составление рекомендаций и принятие решений, основанных на данных.

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

  • С помощью презентаций PowerPoint и письменных отчетов?
  • На семинарах и совещаниях?

В какой бизнес-структуре или научной сфере вы работали?

  • Финансовые услуги: страхование, инвестирование, бухгалтерский учет, аудит.
  • Медицинское обслуживание: общественное здравоохранение, эпидемиология, вирусология, клинические исследования.
  • Академические науки: физика, химия, биология, генетика, статистика.

Анализируя вышеуказанную информацию, обращайте внимание на детали.

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

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


Как изучить основы науки о данных

Онлайн-платформы

Этот вариант подойдет для новичков в программировании. Начните с изучения языка программирования, Python или R, прежде чем пробовать свои силы в реальной науке о данных.

YouTube

При ограниченном бюджете (и не только) можно воспользоваться YouTube. Вот несколько ресурсов.

  • 3blue1brown: множество видео по математике и статистике, гайды по нейронным сетям.
  • Programming with Mosh: полные курсы и небольшие тематические видео для начинающих инженеров-программистов.
  • Sentdex: Python, визуализация данных, машинное обучение и глубокое обучение.

Бесплатные университетские онлайн-курсы

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

Тем не менее, выбирая онлайн-занятия по освоению конкретных навыков и технологий, можно глубже погрузиться в предмет. На этих курсах, организованных по определенной образовательной программе, преподают профессора ведущих университетов мира.

Вот несколько отличных примеров:

  • Supervised Machine Learning: Regression and Classification (Контролируемое машинное обучение: регрессия и классификация). Контролируемое МО  —  оптимальная основа для изучения более продвинутых концепций, таких как глубокое обучение.
  • Harvard University CS50 (от Гарвардского университета)  —  согласно данным freeCodeCamp, это один из самых популярных в мире вводных курсов по информатике.
  • Stanford University CS101 (от Стэнфордского университета)  —  курс по информатике для самостоятельного изучения, не требующий опыта.
  • Stanford University CS329S (от Стэнфордского университета)  —  курс, который ведет Чип Гуэн (Chip Huyen), мастер в сфере MLOps, обучающий созданию развертываемых, надежных и масштабируемых систем машинного обучения.

Выполняйте реальные проекты в области науки о данных

Конкуренция за вакансии даже младших дата-сайентистов очень высока. Поэтому важен реальный опыт. Демонстрация навыков программирования с помощью оригинального кода (а не копии классификатора Titanic) выделит вас среди других. Это позволит вам проявить свои навыки написания кода, аналитики и решения проблем, а также творческий подход.

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

Волонтерство

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

Создание проекта на текущей работе

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

Создайте портфолио по науке о данных

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

Сайт

На данный момент вам не нужны доменные имена и хостинг. Чтобы быстро и бесплатно создать онлайн-проект, используйте GitHub Pages и datascienceportfol.io. Я выбрала последний для своего портфолио, потому что это был самый быстрый вариант, не требующий писать код.

Проекты

Создавайте небольшие проекты и обновляйте их со временем. Начните с проекта по очистке данных или визуализации и дойдите до создания модели. Вот несколько идей для новичка:

  • веб-скрейпинг;
  • анализ эмоциональной окраски высказываний;
  • анализ временных рядов;
  • бинарный классификатор;
  • регрессионная модель;
  • выделение тем текстов на естественном языке;
  • автоматическое реферирование текстов.

Присоединитесь к сообществу дата-сайентистов

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

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

Участие в проектах с открытым исходным кодом  —  еще один способ получить реальный опыт и повысить уровень своих навыков программирования и инженерного мастерства. Попробуйте внести вклад в разработку инструментов, которыми вы пользуетесь чаще всего, например Pandas, NumPy и scikit-learn. И помните: разработка и поддержка этих пакетов, осуществляемые почти исключительно на добровольных началах, обеспечивают нас работой.

Стоит ли получать степень магистра в области науки о данных?

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

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


Необходимый минимум навыков дата-сайентиста

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

Вот что писал об этом Себастьян Рамирес (Sebastián Ramírez), создатель FastAPI:

“Вчера я видел вакансию. Требовалось более 4 лет опыта работы с FastAPI. Я не смог бы оставить отклик, так как прошло лишь более полутора лет с тех пор, как я создал эту технологию. Возможно, пора уже переосмыслить идею о том, что “годы работы = квалификация”?”

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

Вот несколько примеров.

  • Если вы знаете R, предположите, что вы можете выучить Python.
  • Если вы создавали регрессионные модели, предположите, что сможете разрабатывать модели XGBoost.
  • Если у вас есть опыт работы с MySQL, предположите, что справитесь с SQLite.

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

Программирование

Git

  • Создание новых репозиториев.
  • Клонирование уже созданных репозиториев.
  • Проверка новых веток.
  • Коммитинг и пушинг изменений в коде.

Управление средой (Python)

  • Настройка виртуальной среды (с помощью virtualenv, conda).
  • Установка новых пакетов.
  • Работа с файлами requirements.txt.

SQL

  • Выборка и фильтрация данных, объединение данных из нескольких таблиц.
  • Все остальное делайте в Pandas!

Python

  • Чтение, запись данных локально.
  • Генерация списков.
  • Типы данных.
  • Написание пользовательских функций.
  • Парсинг строк.
  • scikit-learn:

 — разделение данных на обучающий и тестовый наборы;

 — обучение, оценка моделей;

 — прогнозирование.

  • Pandas:

 — агрегация данных;

 — слияние, объединение;

 — удаление дубликатов;

 — разбиение на подмножества данных;

 — сортировка по столбцам;

 — создание новых столбцов с помощью функций apply и lambda.

  • Matplotlib или Plotly:

 — гистограммы, графики плотности;

 — диаграммы рассеяния;

 — столбиковые диаграммы;

 — карты интенсивности.

  • Основы НЛП:

 — токенизация;

 — выделение слов, лемматизация;

 — TF-IDF.

Инструменты статистического анализа и визуализации

Исследование данных

  • Эксплораторный анализ данных (EDA).
  • Корреляционные графики (для определения важности признаков и выявления сопутствующих переменных).
  • Анализ распределений данных и выявление асимметрии.
  • Агрегирование данных.
  • Очистка данных (см. “Навыки работы с Python”).
  • Обработка отсутствующих значений и выбросов.
  • Структуризация данных с сохранением взаимосвязей между ними (перед созданием модели).
  • Выявление количества данных, достаточного для создания модели.

Статистика

  • Меры центральной тенденции (среднее значение, медиана, мода, стандартное отклонение).
  • Т-тест для определения статистической значимости.

Визуализация

  • Графики (гистограмма, диаграмма плотности, диаграмма рассеяния, карта интенсивности).
  • Линия наибольшего соответствия (для регрессий).
  • ROC-кривые.

Машинное обучение

Создание модели

  • Определение цели —  нужно ли создавать модель МО?
  • Конструирование признаков.
  • Контролируемое обучение:

 — линейная регрессия;

 — логистическая регрессия;

 — модели CART/дерево решений (полезны для тестирования кода).

  • Неконтролируемое обучение:

 — кластеризация, тематические модели;

 — работа с несбалансированностью классов для моделей с несколькими метками.

Оценка модели

  • Тестирование модели на факт переподгонки.
  • Сохранение модели в виде pickle-файлов, их загрузка и проведение расчетов.
  • Оценка модели с помощью метрик матрицы погрешностей (AUC, точности, отклика, правильности и т.д.).
  • Анализ распределений прогнозируемых вероятностей.

Заключение

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

Вот краткое изложение моих главных советов для дата-аналитиков, которые хотят стать дата-сайентистами.

  • Определите свой текущий набор навыков, выяснив, с какими типами данных вы работали.
  • Обучающие онлайн-платформы  —  самый быстрый способ овладеть R и Python, если у вас нет опыта написания кода.
  • Изучите бесплатные ресурсы, такие как онлайн-курсы, видео на YouTube, репозитории GitHub и блоги, прежде чем задумываться о получении высшего образования.
  • Участие в практических проектах  —  самый эффективный способ одновременно развивать технические и личные навыки (причем бесплатно).
  • Попробуйте записаться на волонтерство в организации, работающие с данными, или внести вклад в проекты с открытым исходным кодом, чтобы получить реальный опыт.
  • Если вы отвечаете всем требованиям конкретной вакансии, вы уже сверхквалифицированный специалист.

Желаю удачи, на каком бы этапе пути к профессии дата-сайентиста вы ни находились! Ознакомьтесь с моей памяткой по ресурсам в области науки о данных и ссылкой ниже, где вы найдете соответствующие материалы.

Изображение и содержание подготовлены автором. Нажмите здесь, чтобы скачать

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

Читайте нас в TelegramVK и Дзен


Перевод статьи Mary Newhauser: Making the Jump from Data Analyst to Data Scientist in 2023

Предыдущая статьяРеализация масштабируемого и гибкого пользовательского экрана с несколькими переключателями на Swift
Следующая статьяK8s: топология подов