0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как стать data scientist

Как стать экспертом в Data Science: пошаговый план обучения

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

Выбор языка

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

На начальном этапе можно остановиться на изучении основ:

  • нюансы работы RStudio;
  • библиотеки Rcmdr, rattle и Deducer;
  • типы данных контейнеров, векторы и первичные типы данных;
  • factors, структуры и матрицы.

Быстро разобраться в теории языка R поможет сайт Quick-R.

Python популярен больше: на нём проще научиться писать код и для него написано множество пакетов визуализации данных, машинного обучения, обработки естественного языка и сложного анализа данных.

Что важно освоить в Python:

  • функции, классы, объекты;
  • структуры данных;
  • базовые алгоритмы и библиотеки;
  • качественную отладку и тестирование кода;
  • Jupyter Notebook;
  • Git.

Чтобы освоить базовые понятия Python, у вас уйдёт примерно 4-6 недель при условии, что вы будете тратить на изучение 2-3 часа в день.

Где можно освоить: в Skillfactory.

Библиотеки для Python

NumPy

NumPy — библиотека научных вычислений. От неё зависит почти каждый пакет Python для Data Science или Machine Learning: SciPy (Scientific Python), Matplotlib, Scikit-learn.

NumPy помогает выполнять математические и логические операции: например, в ней содержатся полезные функции для n-массивов и матриц. А ещё библиотека поддерживает многомерные массивы и высокоуровневые математические функции для работы с ними.

Зачем нужно знать математику? Почему компьютер не может сам всё посчитать?

Часто методы машинного обучения используют матрицы для хранения и обработки входных данных. Матрицы, векторные пространства и линейные уравнения — всё это линейная алгебра.

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

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

Что важно освоить:

  • основу линейной алгебры: линейные комбинации, зависимость и независимость, векторные точки и векторное произведение, матричные преобразования, матричное умножение,
  • обратные функции;
  • массивы;
  • обработку математических выражений и статических данных;
    визуализации через Matplotlib, Seaborn или Plotly.

Где можно подтянуть знания по NumPy: официальная документация.

Где можно подтянуть знания по алгебре: Calculus (глава 11), курс по математике для Data Science.

Pandas

Pandas — библиотека с открытым исходным кодом, построенная на NumPy. Она позволяет выполнять быстрый анализ, очистку и подготовку данных. Такой своеобразный Excel для Python.
Библиотека хорошо умеет работать с данными из разных источников: листов Excel, файлов CSV, SQL, веб-страниц.

Что важно освоить:

  • чтение и запись множества различных форматов данных;
  • выбор подмножеств данных;
  • поиск и заполнение недостающих данных;
  • применение операций к независимым группам в данных;
  • преобразование данных в разные формы;
  • объединение нескольких наборов данных вместе;
  • расширенную функциональность временных рядов.

Где можно подтянуть знания по Pandas: Pydata.

Базы данных и сбор информации

Если вы уже знакомы с Python, Pandas и NumPy, можете приступать к изучению работы с базами данных и парсингу информации.

Несмотря на то, что NoSQL и Hadoop уже пустили корни в науку о данных, важно уметь писать и выполнять сложные запросы на SQL.

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

  • добавлять, удалять и извлекать данные из баз данных;
  • выполнять аналитические функции и преобразовывать структуры баз данных;
  • PostgreSQL;
  • MySQL;
  • SQL Server.

Хорошо структурированный курс по работе с SQL можно пройти здесь: SkillFactory.

Парсинг информации

  • уметь использовать методы find и find_all в парсинге страниц с помощью Beautiful Soup;
  • понять, как работает перебор элементов и сохранение переменных в Python;
  • работать с get-запросами и взаимодействовать с API.

Алгоритмы

Быть программистом без знания алгоритмов страшно, а Data Scientist’ом — опасно. Так что если вы уже освоили Python, Pandas, NumPy, SQL и API, пора учиться применять эти технологии для исследований.

Скорость работы хорошего специалиста часто зависит от трёх факторов: от поставленного вопроса, объёма данных и выбранного алгоритма.

Потому на этом этапе важно понять алгоритмы и структуры данных Беллмана-Форда, Дейкстры, двоичного поиска (и двоичные деревья как инструмент), поиска в глубину и ширину.

Машинное обучение и нейронные сети

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

Реальные задачи чаще всего решаются с помощью серьёзных библиотек вроде TensorFlow и Keras.

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

Дополнительно закрепить знания о машинном обучении можно здесь: Машинное обучение от Эндрю Ына.

Заключение

Стать экспертом в Data Science непросто: приходится изучать множество инструментов и быть гибким, чтобы вовремя узнавать о трендах.

Хорошая стратегия — получить базу по Data Science на фундаментальном курсе, а новые инструменты и технологии изучать, решая практические задачи на работе.

Как стать data scientist

Data Science – наука молодая, но очень амбициозная и перспективная. Научившись эффективно обрабатывать данные, она вывела на новый уровень все сферы человеческой деятельности.

Читать еще:  Как мыть аквариум

Грамотный data scientist может принести компании огромную прибыль, поэтому он необычайно востребован на рынке труда. Активный спрос и острый дефицит кадров определили привлекательный уровень зарплат. Получается, что быть аналитиком данных очень выгодно.

Особенно большая потребность в этих специалистах наблюдается в data-зависимых отраслях, например, в финансах. Если вы чувствуете, что анализ финансовой информации – это ваше призвание, смело ступайте на тернистый путь Data Science! Эта статья по шагам проведет вас в мир аналитики, больших данных и умных машин.

Шаг 1. Найдите в себе силы

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

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

А еще вам придется много общаться с коллегами и руководителями. Сначала нужно будет понять задачу, затем разобраться, как ее решить, и наконец лучшим образом представить результаты.

Если вы к этому готовы, замечательно! Делайте следующий шаг.

Шаг 2. Разберитесь в концепциях

Насколько велики «большие» данные (big data), как и зачем их майнить (data maining), при чем здесь нейронные сети (neural network), и чему именно учатся машины (machine learning)?

Data Science полна непонятных терминов, в которых вам придется разобраться. Составьте общее представление с помощью книг и видеоуроков для начинающих.

Очень важно понимать, какие основные этапы обработки должны пройти данные, чтобы их можно было использовать:

    сбор, очистка и предварительная подготовка;

обнаружение закономерностей, прогнозирование;

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

Шаг 3. Постройте фундамент

Анализ данных совершенно немыслим без отличных математических и статистических навыков. Даже великолепное владение инструментами не спасет, если вы не понимаете самой сути аналитики.

Для работы вам точно потребуются знания в области статистического анализа, линейной алгебры, теории вероятностей, многомерного исчисления.

Начать вы можете отсюда:

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

Шаг 4. Научитесь пользоваться инструментами

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

Для успешной работы вам нужно овладеть рядом инструментов, которые помогают:

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

Ниже перечислены основные полезные навыки для каждого этапа.

Базы данных

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

Технологии Big Data

Для работы с большими данными используется Hadoop, позволяющий распределять вычисления на сотни узлов. Полезно будет ознакомиться с Hadoop-экосистемой, моделью MapReduce и сопутствующими технологиями вроде Apache Spark и Apache Flink.

Эти инструменты особенно важны, так как в финансовой сфере работа ведется со многими потоками данных.

UNIX

Иногда с неструктурированными данными удобнее всего работать через UNIX-консоль без зависимости от базы. Поэтому специалисту полезно знать некоторые команды.

Python

Самый популярный язык программирования для Data Science – это дружелюбный Python. На самом деле, он может использоваться на всех этапах обработки данных, так как имеет великолепные средства анализа и инструменты визуализации.

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

Другие технологии

Если вы решите сосредоточиться на первом этапе обработки данных, обратите внимание на такие прогрессивные направления, как распознавание объектов и обработка естественного языка.

Python/SAS/R

Язык программирования R – основной конкурент Python в области анализа данных. Он больше популярен в науке. Библиотеки обоих языков имеют богатейший набор методов для обработки данных.

SAS – еще одна альтернатива. Он чаще всего применяется в задачах прогнозирования.

Если не знаете, какой язык выбрать, взгляните сюда.

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

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

Чтобы стать профи в этом деле, разберитесь с python-библиотекой scikit-learn. Она имеет понятный интерфейс и позволяет тонко настраивать модели.

Для прогнозирования применяются алгоритмы нейронных сетей.

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

Для визуализации создано множество удобных инструментов, с которыми вам следует познакомиться, например:

Читать еще:  Как снять боль при мигрени

Владение этими инструментами даст вам преимущество при устройстве на работу.

Также широко применяется старый добрый Excel.

Шаг 5. Практикуйтесь

Изучив основы, немедленно принимайтесь за практическую работу. Работодатели не станут подпускать к своим ценным данным человека, не имеющего реального опыта.

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

Отличные датасеты можно найти здесь и здесь.

А вот замечательные примеры готовых работ:

Выкладывайте свои решения на github, обсуждайте их на форумах, улучшайте. Все время усложняйте задачи: берите больше данных, делайте лучше, быстрее, эффективнее.

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

Шаг 6. Определитесь со сферой интересов

Теперь, после первого погружения в Data Science, окиньте взглядом всю эту сферу и определитесь, что вам действительно интересно.

Возможно, ваше призвание — машинное обучение и алгоритмическая торговля, или вы виртуозно отбираете ценную информацию из грязных данных. А может быть, ваша дорога ведет в business intelligence и анализ финансовых отчетов.

Это непростой выбор, и вам, возможно, придется сделать несколько попыток. А для начала просто ознакомьтесь с базовыми ролями Data Science и ее основными применениями в финансах.

Наука о данных по ролям

Есть две основополагающие технологии работы с данными:

    ETL (Extract/Transform/Load). Это технические специалисты: инженеры и архитекторы данных, администраторы баз данных. Сфера их ответственности — хранение, извлечение и преобразование информации. Они имеют дело прежде всего с формой.

DAD (Discover/Access/Distill). А это аналитики, для которых важнее содержание. Они ищут и обрабатывают данные разнообразными способами, выявляют взаимосвязи и делают прогнозы.

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

Наука о данных в финансах

В некоторых отраслях специалисты по Data Science особенно востребованы:

  • кредитование — определение платежеспособности заемщика;
  • анализ финансовых рисков;
  • прогнозирование движения рынка;
  • алгоритмическая торговля;
  • обнаружение мошеннических операций.

Посмотрите, как наука о данных применяется в Сбербанке.

Как работать в Data Science без ученой степени

Размышления и рекомендации от Data Scientist Джейсона Юнга

Введение

Привет, я хочу рассказать вам, как стать Data Scientist, не имея диплома (или просто бесплатно). По иронии судьбы, у меня есть диплом, и он даже имеет отношение к Data Science (Магистерская программа в Северо-Западном университете). Но до этого я работал бухгалтером в Deloitte. Странно, да? Я был далек от Data Science и всего технического. Мне приходилось много изучать онлайн самостоятельно после работы и даже во время магистратуры, чтобы догнать однокурсников, так как я пришел не из технической сферы. Как человек, прошедший через все это, могу с уверенностью сказать, что обучение в университете очень помогает, но совсем не обязательно. Мне кажется, раз я побывал по обе стороны — и диплом получил, и онлайн учился — я смогу дать вам особый взгляд. Получение магистерской степени в Data Science — хороший и быстрый способ попасть в эту сферу, но, к счастью, вовсе не единственный, особенно, если вы не хотите тратить $60–90 тысяч на обучение. Однако от вас потребуется строгая самодисциплина.

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

Чем занимается Data Scientist?

Пропустите этот пункт, если вы это уже знаете.

Ну, исходя из моего опыта работы Data Scientist в нескольких компаниях вроде GoDaddy, HERE, и GoGo, Data Scientist решает задачи с помощью машинного обучения в Big Data. Несколько примеров: предсказать вероятность отказа клиента от подписки, выявить ошибки в данных, вычислительный специальный анализ гигабайт и терабайт данных, кластеризация клиентов по смысловым группам, аналитика текста при определении тем в расшифровках чатов онлайн поддержки, расчет предполагаемых доходов, и так далее до бесконечности.

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

Кроме того, как Data Scientist вам нужно будет постоянно учиться и подстраиваться. Так как эта сфера очень быстро развивается, важно всегда держать руку на пульсе и быть в курсе новых методик. Даже сейчас я трачу много времени на обучение.

Что нужно, чтобы стать data scientist (без траты средств)

Бесплатные онлайн-ресурсы.

Тебя привлекает работа в Data Science? Замечательно. Мы живем в прекрасное время, когда все можно изучать бесплатно. Я пытался сосредоточиться на бесплатных или дешевых вариантах — кто не любит бесплатные штуки? Просто это требует усидчивости и упорства. Я разделю весь процесс на три этапа.

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

1 этап: детство

Чтобы быть хорошим Data Scientist, нужно разбираться в программировании, статистике и математике. Я советую посмотреть как минимум это:

  • Университетский курс введения в computer science (в моем случае это был С++).
  • Менее сложные университетские курсы по математике: такие как многовариантные исчисления, дифференциальные уравнения, линеарная алгебра. Это очень поможет вам понимать элементарные математические процессы в глубинном обучении, например, обратное распространение и матричные операции.
  • Университетский курс введения в статистику и вероятности поможет разобраться с R.
Читать еще:  Sgrmbroker exe что это

Прелесть в том, что проходить их можно не только в университете. Чтобы прокачать эти скилы онлайн, я рекомендую:

  • Математика: Многовариантные исчисления, дифференциальные уравнения, линейная алгебра от Khan Academy.
  • Статистика: Статистика в R и введение в Data Science: Специализация по Data Science от Университета Джонса Хопкинса на Coursera.
  • Python: CodeAcademy.com для общего программирования в Python.

Примеры того, на что способны Data Science, можно посмотреть на Kaggle.com, где ребята изучают и соревнуются в Data Science-проектах. Кроме того, на DataCamp.com есть практические пособия по множеству тем в Data Science — и на R, и на Python.

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

2 этап: отрочество

Сейчас вы уже должны лучше разбираться в Data Science и статистических методах. На 2 этапе вам уже хочется пойти дальше и получше разобраться с машинным обучением. Я понял, что онлайн-ресурсы типа Coursera обычно не охватывают тему так же глубоко, как курсы университетского уровня. К счастью, Stanford’s AI Lab выкладывает много классных онлайн-курсов. Так что вы можете смотреть лекции мирового уровня, комментарии к ним и еще много материалов по теме абсолютно бесплатно. Поэтому советую по возможности смотреть курсы на Coursera и Стэндфордские лекции одновременно. Например, DeepLearning.ai на Coursera очень хорош для понимания практической стороны глубинного обучения, а курс Stanford’s CS231n Computer Vision
— рассматривает все гораздо глубже.

На этом этапе пройдите курсы:

  • Машинное обучение: Andrew Ng’s Machine Learning Course на Coursera. Я прошел этот курс, но не стал платить за сертификат, потому что домашняя работа не подразумевала использование Python или R. Но он все равно очень полезен для понимания основ машинного обучения.
  • Машинное обучение: Stanford CS229 Machine Learning Course. Это старые, но все еще очень актуальные лекции Эндрю Ына.
  • Текстовая аналитика: Прикладной анализ текстов с Python на Coursera. Я не проходил этот курс, но как Data Scientist вам очень желательно обладать навыками текстовой аналитики и обработки естественного языка (Natural Language Processing, NLP).
  • PySpark: Введение в PySpark от DataCamp. PySpark это Python-версия Spark фреймворка для распределенной обработки данных. Проще говоря, он позволяет вам использовать Python с Very Large Data Bases (VLDB). Я пользуюсь им как минимум раз в неделю.
  • Deep Learning: Курс DeepLearning.ai от Andrew Ng на Coursera. Я оплатил сертификат, потому что там очень хорошая домашка. Это не очень дорого, так что я бы рекомендовал заплатить.
  • Компьютерное зрение: Курс Стэндфорда CS231n: Сверточные нейронные сети для визуального распознавания.
  • Обработка естественного языка (NLP): Курс Стэндфорда CS224n: Глубокое Обучение в Обработке Естественного Языка.

Повторюсь, есть и другие ресурсы типа DataCamp, Udacity, edX, and fast.ai, на которых можно найти информацию по множеству тем.

3 этап: юность

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

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

Во-вторых, скорее всего вам будут задавать вопросы по SQL. Когда я только начинал работать в GoDaddy, я мало что знал о SQL. К собеседованию я немного полистал W3Schools.com, CodeAcademy и погуглил частые вопросы на собеседованиях по SQL. Зависит от компании но, знания по машинному обучению и программированию в любом случае ценятся больше, чем SQL. Этому довольно легко научиться на работе. Здесь Leetcode.com можно потренироваться в SQL и программировании.

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

Заключение

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

Если вы хотите посмотреть примеры кодов в машинном обучении, зайдите на мой репозиторий Github, в который я регулярно выкладываю все новое, что узнаю. Я планирую и дальше выкладывать новости о проектах, над которыми работаю, и вообще рандомные мысли на Medium!

Источники:

http://tproger.ru/curriculum/data-science-expert-plan/
http://sfeducation.ru/blog/quants/kak_stat_datascientistom
http://datastart.ru/blog/read/kak-rabotat-v-data-science-bez-uchenoy-stepeni

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector