Что такое дата сайнс
Большой гид по Data Science для начинающих: термины, применение, образование и вход в профессию
Наши друзья из «Цеха» опубликовали пошаговую инструкцию для начинающих в сфере Data Science от Елены Герасимовой, руководителя направления «Аналитика и Data Science» в Нетологии. Делимся с вами.
О чём речь
Data Science — деятельность, связанная с анализом данных и поиском лучших решений на их основе. Раньше подобными задачами занимались специалисты по математике и статистике. Затем на помощь пришел искусственный интеллект, что позволило включить в методы анализа оптимизацию и информатику. Этот новый подход оказался намного эффективнее.
Как строится процесс? Всё начинается со сбора больших массивов структурированных и неструктурированных данных и их преобразования в удобный для восприятия формат. Дальше используется визуализация, работа со статистикой и аналитические методы — машинного и глубокого обучения, вероятностный анализ и прогнозные модели, нейронные сети и их применение для решения актуальных задач.
Пять главных терминов, которые нужно запомнить
Искусственный интеллект, машинное обучение, глубокое обучение и наука о данных — основные и самые популярные термины. Они близки, но не эквивалентны друг другу. На старте важно разобраться, чем они отличаются.
Искусственный интеллект (Artificial Intelligence) — область, посвящённая созданию интеллектуальных систем, работающих и действующих как люди. Её возникновение связано с появлением машин Алана Тьюринга в 1936 году. Несмотря на долгую историю развития, искусственный интеллект пока не способен полностью заменить человека в большинстве областей. А конкуренция ИИ с людьми в шахматах и шифрование данных — две стороны одной медали.
Машинное обучение (Machine learning) — создание инструмента для извлечения знаний из данных. Модели ML обучаются на данных самостоятельно или поэтапно: обучение с учителем на подготовленных человеком данных и без учителя — работа со стихийными, зашумленными данными.
Глубокое обучение (Deep learning) — создание многослойных нейронных сетей в областях, где требуется более продвинутый или быстрый анализ и традиционное машинное обучение не справляется. «Глубина» обеспечивается некоторым количеством скрытых слоев нейронов в сети, которые проводят математические вычисления.
Большие данные (Big Data) — работа с большим объёмом часто неструктурированных данных. Специфика сферы — это инструменты и системы, способные выдерживать высокие нагрузки.
Наука об анализе данных (Data Science) — в основе области лежит наделение смыслом массивов данных, визуализация, сбор идей и принятие решений на основе этих данных. Специалисты по анализу данных используют некоторые методы машинного обучения и Big Data: облачные вычисления, инструменты для создания виртуальной среды разработки и многое другое.
Где применяется Data Science
Пять основных этапов в работе с данными
Сбор. Поиск каналов, где можно собирать данные, и выбор методов их получения.
Проверка. Валидация, нивелирование аномалий, которые не влияют на результат и мешают дальнейшему анализу.
Анализ. Изучение данных, подтверждение предположений.
Визуализация. Представление информации в понятном для восприятия виде: графики, диаграммы.
Реакция. Принятие решений на основе данных. Например, изменение маркетинговой стратегии, увеличение бюджета компании.
Руководитель направления «Аналитика и Data Science» в Нетологии
Профессия
Data
Scientist
Образование. Шесть шагов на пути к Data Scientist
Путь к этой профессии труден: невозможно овладеть всеми инструментами за месяц или даже год. Придётся постоянно учиться, делать маленькие шаги каждый день, ошибаться и пытаться вновь.
Шаг 1. Статистика, математика, линейная алгебра
Для серьезного понимания Data Science понадобится фундаментальный курс по теории вероятностей (математический анализ как необходимый инструмент в теории вероятностей), линейной алгебре и математической статистике.
Фундаментальные математические знания важны, чтобы анализировать результаты применения алгоритмов обработки данных. Сильные инженеры в машинном обучении без такого образования есть, но это скорее исключение.
Что почитать
«Элементы статистического обучения», Тревор Хасти, Роберт Тибширани и Джером Фридман — если после учебы в университете осталось много пробелов. Классические разделы машинного обучения представлены в терминах математической статистики со строгими математическими вычислениями.
«Глубокое обучение», Ян Гудфеллоу. Лучшая книга о математических принципах, лежащих в основе нейронных сетей.
«Нейронные сети и глубокое обучение», Майкл Нильсен. Для знакомства с основными принципами.
Полное руководство по математике и статистике для Data Science. Крутое и нескучное пошаговое руководство, которое поможет сориентироваться в математике и статистике.
Введение в статистику для Data Science поможет понять центральную предельную теорему. Оно охватывает генеральные совокупности, выборки и их распределение, содержит полезные видеоматериалы.
Полное руководство для начинающих по линейной алгебре для специалистов по анализу данных. Всё, что необходимо знать о линейной алгебре.
Линейная алгебра для Data Scientists. Интересная статья, знакомящая с основами линейной алгебры.
Шаг 2. Программирование
Большим преимуществом будет знакомство с основами программирования. Вы можете немного упростить себе задачу: начните изучать один язык и сосредоточьтесь на всех нюансах его синтаксиса.
При выборе языка обратите внимание на Python. Во-первых, он идеален для новичков, его синтаксис относительно прост. Во-вторых, Python многофункционален и востребован на рынке труда.
Что почитать
«Автоматизация рутинных задач с помощью Python: практическое руководство для начинающих». Практическое руководство для тех, кто учится с нуля. Достаточно прочесть главу «Манипулирование строками» и выполнить практические задания из нее.
Codecademy — здесь вы научитесь хорошему общему синтаксису.
Легкий способ выучить Python 3 — блестящий мануал, в котором объясняются основы.
Dataquest поможет освоить синтаксис.
После того, как изучите основы Python, познакомьтесь с основными библиотеками:
Машинное обучение и глубокое обучение:
Обработка естественного языка:
Web scraping (Работа с web):
курс
Python
для анализа данных
Шаг 3. Машинное обучение
Компьютеры обучаются действовать самостоятельно, нам больше не нужно писать подробные инструкции для выполнения определённых задач. Поэтому машинное обучение имеет большое значение для практически любой области, но прежде всего будет хорошо работать там, где есть Data Science.
Первый шаг в изучении машинного обучения — знакомство с тремя его основными формами.
1) Обучение с учителем — наиболее развитая форма машинного обучения. Идея в том, чтобы на основе исторических данных, для которых нам известны «правильные» значения (целевые метки), построить функцию, предсказывающую целевые метки для новых данных. Исторические данные промаркированы. Маркировка (отнесение к какому-либо классу) означает, что у вас есть особое выходное значение для каждой строки данных. В этом и заключается суть алгоритма.
2) Обучение без учителя. У нас нет промаркированных переменных, а есть много необработанных данных. Это позволяет идентифицировать то, что называется закономерностями в исторических входных данных, а также сделать интересные выводы из общей перспективы. Итак, выходные данные здесь отсутствуют, есть только шаблон, видимый в неконтролируемом наборе входных данных. Прелесть обучения без учителя в том, что оно поддается многочисленным комбинациям шаблонов, поэтому такие алгоритмы сложнее.
3) Обучение с подкреплением применяется, когда у вас есть алгоритм с примерами, в которых отсутствует маркировка, как при неконтролируемом обучении. Однако вы можете дополнить пример положительными или отрицательными откликами в соответствии с решениями, предлагаемыми алгоритмом. Обучение с подкреплением связано с приложениями, для которых алгоритм должен принимать решения, имеющие последствия. Это похоже на обучение методом проб и ошибок. Интересный пример обучения с подкреплением — когда компьютеры учатся самостоятельно играть в видеоигры.
Что почитать
Визуализация в машинном обучении. Отличная визуализация, которая поможет понять, как используется машинное обучение.
Шаг 4. Data Mining (анализ данных) и визуализация данных
Data Mining — важный исследовательский процесс. Он включает анализ скрытых моделей данных в соответствии с различными вариантами перевода в полезную информацию, которая собирается и формируется в хранилищах данных для облегчения принятия деловых решений, призванных сократить расходы и увеличить доход.
Что почитать и посмотреть
Как работает анализ данных. Отличное видео с доходчивым объяснением анализа данных.
«Работа уборщика данных — главное препятствие для анализа» — интересная статья, в которой подробно рассматривается важность анализа данных в области Data Science.
Шаг 5. Практический опыт
Заниматься исключительно теорией не очень интересно, важно попробовать свои силы на практике. Вот несколько хороших вариантов для этого.
Используйте Kaggle. Здесь проходят соревнования по анализу данных. Существует большое количество открытых массивов данных, которые можно анализировать и публиковать свои результаты. Кроме того, вы можете смотреть скрипты, опубликованные другими участниками и учиться на успешном опыте.
Шаг 6. Подтверждение квалификации
После того, как вы изучите всё, что необходимо для анализа данных, и попробуете свои силы в открытых соревнованиях, начинайте искать работу. Преимуществом станет независимое подтверждение вашей квалификации.
Последний совет: не будьте копией копий, найдите свой путь. Любой может стать Data Scientist. В том числе самостоятельно. В свободном доступе есть всё необходимое: онлайн-курсы, книги, соревнования для практики.
Но не стоит приходить в сферу только из-за моды. Что мы слышим о Data Science: это круто, это самая привлекательная работа XXI века. Если это основной стимул для вас, его вряд ли хватит надолго. Чтобы добиться успеха, важно получать удовольствие от процесса.
курс
Чем занимается специалист по Data Science и как начать работать в этой области?
Специалист в области Data Science строит на основе данных модели, которые помогают принимать решения в науке, бизнесе и повседневной жизни. Он может работать с неструктурированными массивами информации в разных сферах: от выявления элементарных частиц в экспериментах на БАК, анализа метеорологических факторов, анализа данных о перемещениях автотранспорта до исследования финансовых операций, поисковых запросов, поведения пользователей в Интернете.
В результате получаются модели, которые прогнозируют погоду, загруженность дорог, спрос на товары, находят снимки, где могут оказаться следы нужных элементарных частиц, выдают решения о предоставлении кредита, могут рекомендовать товар, книгу, фильм, музыку.
Анна Чувилина, автор и менеджер программы «Аналитик данных» Яндекс.Практикума, рассказала, какие задачи решает специалист в области Data Science или датасаентист, в чем состоит его работа и чем он отличается от аналитика данных.
Что такое Data Science?
Data Science — это применение научных методов при работе с данными, чтобы найти нужное решение. В широком смысле, естественные науки основаны на Data Science. Например, биолог проводит эксперименты и анализирует результаты для проверки своих гипотез. Он должен уметь обобщать частные наблюдения, исключать случайности и делать верные выводы.
Датасаентист работает с данными так же, как ученый в любой другой сфере. Он использует математическую статистику, логические принципы и современные инструменты визуализации, чтобы получить результат.
Сбор данных — это способ измерить процессы вокруг нас. А научные методы позволяют расшифровать большие массивы данных, найти в них закономерности и применить для решения конкретной задачи.
Кто такой специалист по Data Science?
Датасаентист обрабатывает массивы данных, находит в них новые связи и закономерности, используя алгоритмы машинного обучения, и строит модели. Модель — это алгоритм, который можно использовать для решения бизнес-задач.
Например, в Яндекс.Такси модели прогнозируют спрос, подбирают оптимальный маршрут, контролируют усталость водителя. В результате стоимость поездки снижается, а качество растет. В банках модели помогают точнее принимать решения о выдаче кредита, в страховых компаниях — оценивают вероятность наступления страхового случая, в онлайн-коммерции — увеличивают конверсию маркетинговых предложений.
Глобальные поисковые системы, рекомендательные сервисы, голосовые помощники, автономные поезда и автомобили, сервисы распознавания лиц — все это создано с участием датасаентистов.
Анализ данных — это часть работы датасаентиста. Но результат его труда — это модель, код, написанный на основе анализа. В этом главное отличие между датасаентистом и аналитиком данных. Первый — это инженер, который решает задачу бизнеса как техническую. Второй — бизнес-аналитик, больше погруженный в бизнес-составляющую задачи. Он изучает потребности, анализирует данные, тестирует гипотезы и визуализирует результат.
«Датасаентист решает задачи с помощью машинного обучения, например распознавание изображений или предсказание расхода материала на производстве. Результат его работы — работающая модель по техническому заданию, которая будет решать бизнес-задачу», — Анна Чувилина, автор и менеджер программы «Аналитик данных» в Яндекс.Практикуме.
Специалист по Data Science проходит те же карьерные ступени, что и другие профессионалы в IT: джуниор, мидл, тимлид или сеньор. В среднем, каждая ступень занимает от года до двух. Более опытный специалист лучше понимает бизнес-задачи и может предложить лучшее решение для них. Чем выше уровень, тем меньше датасаентист сфокусирован только на технических задачах. Он может оценивать проект и его смысловую составляющую.
Задачи специалиста по Data Science
Задачи различаются от компании к компании. В крупных корпорациях датасаентист работает с несколькими направлениями. Например, для банка он может решать задачу кредитной оценки и заниматься процессами распознавания речи.
Этапы работы над задачей у датасаентистов из разных сфер похожи:
Каждая новая итерация позволяет лучше понять проблемы бизнеса, уточнить решение. Поэтому каждый этап повторяется снова и снова для развития модели и обновления данных.
Data Science работает и для стартапов, и для крупных корпораций. В первых специалисты работают в одиночку или небольшими командами над отдельными задачами, а во вторых — реализуют долгосрочные проекты в связке с бизнес-аналитиками, аналитиками данных, разработчиками, инфраструктурными администраторами, дизайнерами и менеджерами.
Руководитель проекта с аналитиками берёт на себя большую часть работы: общается с бизнесом, собирает требования, формирует техническое задание. В зависимости от уровня и принципов работы в компании, специалист по Data Science участвует в переговорах или получает задачи от руководителя проекта и аналитиков.
Следующий этап — сбор данных. Если в компании не налажены процессы для получения данных, датасаентист решает и эту задачу. Он внедряет инструменты, которые помогают автоматически получать и предварительно очищать, структурировать нужную информацию.
Разметка данных — это тоже способ навести в них порядок. Каждой записи присваивается метка, по которой можно определять класс данных: это спам или нет, клиент платежеспособен или недостаточно. Для этой задачи редко используют алгоритмы, метки проставляют вручную. Качественно размеченные данные имеют большую ценность.
«Со стороны заказчика часто присылаются первые данные, которые не готовы для анализа. Специалист их изучает и пытается понять взаимосвязи внутри данных. Для этого часто используется пайплайн — стандартная последовательность действий для процесса анализа данных, которая у каждого своя. Во время ‘‘просмотра’’ у специалиста возникают гипотезы относительно данных, которые он потом будет проверять», — говорит Анна Чувилина, автор и менеджер программы «Аналитик данных» в Яндекс.Практикум.
Во время обработки данные переводятся в формат, удобный для машинного обучения, чтобы запустить первое, «пробное» обучение. Оно должно подтвердить или опровергнуть гипотезы о данных, которые есть у специалиста по Data Science. Если гипотезы не подтверждаются, работа с этим набором данных прекращается. Если одна или несколько гипотез окажутся жизнеспособными — на выходе получается первая версии модели. Её можно назвать baseline-моделью или базовой, относительно которой на следующих итерациях можно искать улучшения в качестве работы модели. Это минимально работающий продукт, который можно показать, протестировать и развивать дальше.
Вместе с моделированием или перед ним выбирают метрики для оценки эффективности модели. Как правило, это две категории: метрики для бизнеса и технические. Бизнес-метрики отвечают на вопрос «каков экономический эффект от работы данной модели?» Технические определяют качество модели, например, точность предсказаний.
Модель оценивают на контролируемость и безопасность. Например, для задач медицинской диагностики это решающий фактор. Когда модель готова и протестирована, то её встраивают в производственный процесс (например, кредитный конвейер) или продукт (например, мобильное приложение). Она начинает приносить пользу в реальной жизни.
Ошибки в моделях могут дорого стоит компании. Например, неверная скоринговая модель создаст ситуацию, когда ненадежные заемщики массово не смогут возвращать кредиты. В результате банк понесёт убытки.
Что нужно для старта
Знание математической статистики, базовые навыки программирования и анализа данных нужны для входа в любую сферу, где может быть занят датасаентист. Следующие этапы потребуют более глубоких знаний. Набор необходимых скиллов и инструментов будет во многом зависеть от задач конкретной компании.
«Для решения простых задач и попадания на уровень джуниора достаточно базовых знаний машинного обучения, математического аппарата и программирования. От специалиста уровня мидл и сеньор уже требуется умение тонко настраивать параметры, которые влияют на общее качество результата. Список разделов из высшей математики и понимание математической постановки каждой модели на этому уровне на порядок выше, чем для джуниора» — Анна Чувилина, автор и менеджер программы «Аналитик данных» в Яндекс.Практикум.
Как правило, в Data Science используют SQL, Python, для сложных вычислений — C/C++. Хороший уровень английского поможет быстрее расти за счет чтения профессиональной литературы и общения с другими профессионалами отрасли.
Бэкграунд разработчика хорошо подходит для переквалификации в датасаентисты. Разработчики знают языки программирования, разбираются в алгоритмах и имеют представление о принципах работы инструментов в ИТ. В таком случае переход в новую специальность займет несколько месяцев. Важные конкурентные преимущества, доступные профессионалам из других сфер: лучшее понимание предметной области, сильные коммуникативные навыки.
От начинающего специалиста по Data Science работодатель ждёт:
Опыт работы с реальными бизнес-проектами для работодателя важнее, чем ученая степень или профильное высшее образование. Дипломы сильных вузов и тематические научные работы ценятся больше при выборе привлеченных консультантов на стратегические проекты. А по практическому опыту выбирают датасаентиста для решения ежедневных задач компании.
Перед датасаентистом не стоит задача охватить все области математического знания или освоить каждый программный инструмент, который можно применить для анализа данных и построения модели. Над масштабными и сложными проектами обычно работают группы специалистов. Здесь навыки и знания каждого дополняют общий инструментарий. Чтобы стартовать в профессии достаточно любить программирование, математику и не бояться сложных задач.
Кто такой Data Scientist?
Дата-сайентист (он же Data Scientist, специалист по Data Science) может найти себе работу в любой сфере: от розничной торговли до астрофизики. Потому что именно он — настоящий повелитель больших данных. Вместе с автором кейсов для курса по Data Science Глебом Синяковым разбираемся, почему в современном мире всем так нужны дата-сайентисты.
Чем занимается Data Scientist?
Data Scientist применяет методы науки о данных (Data Science) для обработки больших объемов информации. Он строит и тестирует математические модели поведения данных. Это помогает найти в них закономерности или спрогнозировать будущие значения. Например, по данным о спросе на товары в прошлом, дата-сайентист поможет компании спрогнозировать продажи в следующем году. Модели строят с помощью алгоритмов машинного обучения, а с базами данных работают через SQL.
Где нужен и какие задачи решает Data Scientist?
Дата-сайентисты работают везде, где есть большие объемы информации: чаще всего это крупный бизнес, стартапы и научные организации. Поскольку методы работы с данными универсальны, специалистам открыты любые сферы: от розничной торговли и банков до метеорологии и химии. В науке они помогают совершать важные открытия: проводят сложные исследования, например, строят и обучают нейронные сети для молекулярной биологии, изучают гамма-излучения или анализируют ДНК.
В крупных компаниях дата-сайентист — это человек, который нужен всем отделам:
В стартапах они помогают разрабатывать технологии, которые выводят продукт на новый уровень: TikTok использует машинное обучение, чтобы рекомендовать контент, а MSQRD, который купил Facebook, — технологии по распознаванию лица и искусственный интеллект.
Пример задачи:
Если дата-сайентисту нужно спрогнозировать спрос на новую коллекцию кроссовок, то он:
Что ему нужно знать?
Дата-сайентист должен хорошо знать математику: линейную алгебру, теорию вероятности, статистику, математический анализ. Математические модели позволяют найти в данных закономерности и прогнозировать их значения в будущем. А чтобы применять эти модели на практике, нужно программировать на Python, уметь работать с SQL и библиотеками (набор готовых функций, объектов и подпрограмм) и фреймворками (ПО, объединяющее готовые компоненты большого программного проекта) для машинного обучения (например, NumPy и Scikit-learn). Для более сложных задач дата-сайентистам нужен язык С или C++.
Результаты анализа данных нужно уметь визуализировать, например, с помощью библиотек Seaborn, Plotly или Matplotlib.