data scientist план обучения
Как стать экспертом в Data Science: пошаговый план обучения
Авторизуйтесь
Как стать экспертом в Data Science: пошаговый план обучения
Мало кто может предсказывать события до ста процентов верно. Но дата-сайнтисты научились. А мы нашли последние тренды Data Science и составили план для тех, кто хочет глубоко изучить эту область.
Выбор языка
Сейчас в науке о данных используются два основных языка: Python и R. Язык R применяется для сложных финансовых анализов и научных исследований, потому его глубокое изучение можно отложить на потом.
На начальном этапе можно остановиться на изучении основ:
Быстро разобраться в теории языка R поможет сайт Quick-R.
Python популярен больше: на нём проще научиться писать код и для него написано множество пакетов визуализации данных, машинного обучения, обработки естественного языка и сложного анализа данных.
Что важно освоить в Python:
Чтобы освоить базовые понятия Python, у вас уйдёт примерно 4-6 недель при условии, что вы будете тратить на изучение 2-3 часа в день.
Где можно освоить: в Skillfactory.
Библиотеки для Python
NumPy
NumPy — библиотека научных вычислений. От неё зависит почти каждый пакет Python для Data Science или Machine Learning: SciPy (Scientific Python), Matplotlib, Scikit-learn.
NumPy помогает выполнять математические и логические операции: например, в ней содержатся полезные функции для n-массивов и матриц. А ещё библиотека поддерживает многомерные массивы и высокоуровневые математические функции для работы с ними.
Зачем нужно знать математику? Почему компьютер не может сам всё посчитать?
Часто методы машинного обучения используют матрицы для хранения и обработки входных данных. Матрицы, векторные пространства и линейные уравнения — всё это линейная алгебра.
Чтобы понимать, как работают методы машинного обучения, нужно хорошо знать математику. Поэтому будет лучше пройти весь курс алгебры целиком: самостоятельно или с наставниками.
Кроме того, математика и математический анализ важны для оптимизации процессов. Зная их, проще улучшать быстроту и точность работы моделей машинного обучения.
Где можно подтянуть знания по NumPy: официальная документация.
Где можно подтянуть знания по алгебре: Calculus (глава 11), курс по математике для Data Science.
Pandas
Pandas — библиотека с открытым исходным кодом, построенная на NumPy. Она позволяет выполнять быстрый анализ, очистку и подготовку данных. Такой своеобразный Excel для Python.
Библиотека хорошо умеет работать с данными из разных источников: листов Excel, файлов CSV, SQL, веб-страниц.
Где можно подтянуть знания по Pandas: Pydata.
Базы данных и сбор информации
Если вы уже знакомы с Python, Pandas и NumPy, можете приступать к изучению работы с базами данных и парсингу информации.
Несмотря на то, что NoSQL и Hadoop уже пустили корни в науку о данных, важно уметь писать и выполнять сложные запросы на SQL.
Часто необработанные данные — от электронных медицинских карт до истории транзакций клиентов — находятся в организованных коллекциях таблиц, которые называются реляционными базами данных. Чтобы быть хорошим специалистом по данным, нужно знать, как обрабатывать и извлекать данные из этих баз данных.
Хорошо структурированный курс по работе с SQL можно пройти здесь: SkillFactory.
Парсинг информации
Алгоритмы
Быть программистом без знания алгоритмов страшно, а Data Scientist’ом — опасно. Так что если вы уже освоили Python, Pandas, NumPy, SQL и API, пора учиться применять эти технологии для исследований.
Скорость работы хорошего специалиста часто зависит от трёх факторов: от поставленного вопроса, объёма данных и выбранного алгоритма.
Потому на этом этапе важно понять алгоритмы и структуры данных Беллмана-Форда, Дейкстры, двоичного поиска (и двоичные деревья как инструмент), поиска в глубину и ширину.
Машинное обучение и нейронные сети
Пора применять полученные навыки к решению реальных задач. До этого этапа важно знать математику: поиск, очистку и подготовку данных, построение моделей с точки зрения математики и статистики, их оптимизацию средствами матанализа — вот это всё.
Реальные задачи чаще всего решаются с помощью серьёзных библиотек вроде TensorFlow и Keras.
Дополнительно закрепить знания о машинном обучении можно здесь: Машинное обучение от Эндрю Ына.
Заключение
Стать экспертом в Data Science непросто: приходится изучать множество инструментов и быть гибким, чтобы вовремя узнавать о трендах.
Хорошая стратегия — получить базу по Data Science на фундаментальном курсе, а новые инструменты и технологии изучать, решая практические задачи на работе.
Карта развития дата-сайентиста: с чего начать, к чему идти и сколько времени потребуется
На каком уровне находитесь вы и далеко ли до следующей ступеньки?
Бенджамин Оби Тайо
(Benjamin Obi Tayo)
Преподаватель физики и инженерных дисциплин в Университете Эдмонта, Оклахома. Интересы: Data Science, машинное обучение, ИИ, Python, R, биофизика.
Каждый, кто заинтересовался наукой о данных, задаётся вопросом: а сколько времени понадобится, чтобы её изучить? Мы составили примерный график профессионального развития дата-сайентиста по трём уровням — базовый, средний и продвинутый. Чтобы было проще сравнивать с требованиями вакансий, привели их к принятым в IT терминам: стажёр (intern), джун (junior, младший), мидл (middle, средний) и сеньор (senior, старший).
Уровни для дата-сайентиста рассмотрим на примере языка Python. Но вообще в Data Science используют и другие языки и платформы — R, Julia, SAS, MATLAB.
Дополнительно: Чтобы не запутаться в терминах, прочитайте нашу статью про Python-минимум, необходимый для первоначального погружения в Data Science. И будьте осторожны — дальше много чек-листов и перечислений 🙂
С некоторых пор утверждает, что он data scientist. В предыдущих сезонах выдавал себя за математика, звукорежиссера, радиоведущего, переводчика, писателя. Кандидат наук, но не точных. Бесстрашно пишет о Data Science и программировании на Python.
Уровень 1. От стажёра к джуну
Основы обработки данных
В первую очередь придётся манипулировать данными, чистить, структурировать и приводить их к единой размерности или шкале. От новичка ждут уверенной работы с библиотеками Pandas и NumPy и некоторых специальных навыков:
Визуализация данных
Новичок должен знать основные принципы хорошей визуализации и инструменты — в том числе Python-библиотеки matplotlib и seaborn (для R — ggplot2).
Какие компоненты нужны для правильной визуализации данных:
Обучение с учителем: предсказание непрерывных переменных
Главное: стажёру придётся изучить методы регрессии, стать почти на ты с библиотеками scikit-learn и caret, чтобы строить модели линейной регрессии. Но чтобы стать полноценным джуниором, стажёр должен знать и уметь ещё кучу всего (осторожно — там сложные слова, но есть подсказки):
А как вы хотели — сделать Терминатора непросто 🙂
Уровень 2. От джуна к мидлу
Прочно закрепив на практике все те неприличные слова из блока для джуна, можно штурмовать более продвинутые техники и методы: предсказание дискретных переменных в обучении с учителем (supervised learning), оценку и настройку моделей, а также сбор разных алгоритмов в единые ансамбли методов. Вы уже поняли, что сейчас опять начнётся ковровое бомбометание дата-сайентистскими терминами? Не вздумайте употреблять их в публичных местах — а то бабушки начнут креститься, как будто увидели сатаниста или парня с татуировками по всему телу 🙂
Обучение с учителем: предсказание дискретных переменных
Начните с алгоритмов бинарной классификации — вот какие надо знать мидлу:
Дополнительно: небольшая статья о том, как создать простую модель машинного обучения. Формируем и делим датасет, обучаем модель Random Forest, предсказываем дискретную переменную и вот это всё.
Мастхэв — на хорошем уровне работать с библиотекой scikit-learn (она уже тут мелькала), которая помогает строить модели. Также придётся решать задачи на нелинейную классификацию с помощью метода опорных векторов, освоить несколько метрик для оценки алгоритмов классификации — точность, погрешность, чувствительность, матрица ошибок, F-мера, ROC-кривая.
Оценка моделей и оптимизация гиперпараметров
Чтобы правильно оценивать и настраивать модели, специалисту нужно:
Сочетание разных моделей в ансамбле методов
Уровень 3. От мидла к сеньору
На этом уровне дата-сайентист углубляется в конкретную специализацию — и разбег по требованиям может быть очень большим. Однако каждому благородному дону, то есть сеньору, точно придётся работать со сложными датасетами: текстом, изображениями, аудио (голос) и видео. Поэтому к навыкам среднего уровня добавится вот что:
Дополнительно: здесь не повредит понимание различий между искусственным интеллектом, машинным обучением и глубоким обучением. У нас как раз есть статья на эту тему.
Дорожная карта развития навыков Data Science
Итак, чтобы стать специалистом базового уровня, понадобится от 6 до 12 месяцев. Вырасти с базового уровня до среднего можно за 7–18 месяцев. Продвинутый уровень потребует ещё от 18 до 48 месяцев.
Конечно, это приблизительные сроки. Многое зависит от бэкграунда: тем, кто неплохо прокачан в физике, математике, естественных и компьютерных науках, работал инженером или финансистом, будет гораздо проще. Но в первую очередь важны усилия и время, которые вы вкладываете в изучение Data Science, — в общем, никакой магии. Просто берём и делаем.
На курсе «Профессии Data Scientist» мы даём не только базовые знания, но и часть навыков среднего и продвинутого уровней. В итоге у вас появятся портфолио проектов, стаж не менее года, заряженные единомышленники и компетентные наставники. Приходите!
Data Science: лучшие учебные курсы и программы сертификации
Можно получить два-три десятка Data Science-сертификатов, но по-настоящему стоящих программ сертификации из сферы науки о данных, по моему мнению, не так уж и много. Я хочу рассказать о нескольких таких программах, поддерживаемых авторитетными организациями. Эти программы я оцениваю по разным признакам. В частности — по объёму рассматриваемых в их рамках тем, по их «весу» в глазах потенциального работодателя, по репутации организации, реализующей программу. В последние несколько лет я являюсь и специалистом по анализу данных, и дата-сайентистом. Всё это время у меня формировалось понимание того, что сильнее всего влияет на успех человека в сфере Data Science (DS).
Здесь я рассмотрю ведущие программы Data Science-сертификации, входящие в список, собранный ресурсом Indeed. Из этого списка я выбрал четыре, которые кажутся мне наиболее достойными. Им и посвящён этот материал.
Google Certified Professional Data Engineer
Возможно, эта программа сертификации, которую я рассматриваю первой, кого-то удивит, так как она относится к сфере, отличной от Data Science. Но, несмотря на это, я уверен в том, что навыки и обязанности дата-инженера похожи на те, что характерны для дата-сайентистов. Ещё я думаю, что прохождение подобной сертификации может стать конкурентным преимуществом на рынке труда, так как дата-сайентист, получивший подобный сертификат, сможет эффективно работать не только в сфере науки о данных, но и в сфере инжиниринга данных.
Вот некоторые темы, знание которых проверяется на экзамене:
Общие сведения об экзамене:
Google Data Machine Learning Engineer
Это — ещё одна программа сертификации, которую тоже нельзя назвать программой, нацеленной исключительно на Data Science. Она, скорее, направлена на достаточно узкую тему, находящуюся в пределах науки о данных. Речь идёт о машинном обучении. Многие дата-сайентисты могут настолько привыкнуть к работе в Jupyter Notebook (ведь именно этому учат на большинстве DS-курсов), что необходимость вывода моделей в продакшн, необходимость их развёртывания на веб-сайте или в мобильной среде может вызвать у них серьёзные сложности. Поэтому тем, кто работает в сфере Data Science, весьма полезно будет ознакомиться и с вопросами практического применения моделей, что расширит их кругозор и сделает их работу эффективнее.
Вот темы, которые поднимаются на экзамене:
Общие сведения об экзамене:
IBM Data Science Professional Certificate
Это — уже не просто программа сертификации. Тут речь идёт о наборе учебных курсов, на которых можно изучить то, что проверяется во время прохождения испытаний. Эта программа сертификации, в отличие от предыдущих, ориентирована исключительно на саму науку о данных. А это, безусловно, именно та тема, которая нам особенно интересна. Ещё одной ценной особенностью этой программы является тот факт, что она подготовлена IBM, а пройти её можно на платформе Coursera. Обе эти компании известны и имеют хорошую репутацию.
Вот — 10 курсов, которые входят в состав учебной программы:
Общие сведения о программе учебных курсов:
Microsoft Certified Azure Data Scientist Associate
Как видите, в этом обзоре представлены программы сертификации от ведущих игроков IT-рынка. В их число входит и Microsoft. Если поучиться, поработать, пройти тестирование в любой из подобных компаний — это может пойти на пользу карьере дата-сайентиста. Представленная здесь программа напоминает смесь тех программ, о которых мы говорили выше. Это, с одной стороны, сертификация, но с другой — перед сертификацией тут же можно и подучиться, либо самостоятельно и бесплатно, либо — с инструктором и за деньги.
Вот темы, которые поднимаются на экзамене:
Итоги
В итоге скажу, что если вы сможете пройти все вышеописанные программы сертификации — полагаю, что вы будете более чем готовы к работе дата-сайентиста. Эти сертификации направлены на проверку знаний по популярным платформам и инструментам, а также — на проверку навыков, связанных с практическим использованием моделей. В частности, речь идёт о работе с бизнес-задачами, об анализе данных, о моделировании, о создании и развёртывании моделей. Конечно, если вы попробуете найти работу в компании, проводящей сертификацию, наличие сертификата повысит ваши шансы на успех. Подбирая себе программу сертификации учитывайте то, что те, о которых шла тут речь, я, руководствуясь собственным видением ситуации, выбрал из списка программ с ресурса Indeed. Есть ещё множество подобных программ. Вам, вполне возможно, подойдёт что-то совсем другое.
Как вы посоветовали бы учиться и сертифицироваться тому, кто хочет работать в сфере Data Science?
Data Science за 3 месяца: эффективный учебный план
Data Science за 3 месяца? В своем ли мы уме? Вполне. Расскажем, как стать аналитиком данных за 12 недель по курсам Microsoft и др.
Специалист по анализу данных – одна из самых востребованных специальностей в 2018 году. Маловероятно, что тренд изменится в ближайшие годы. Коммерческие организации тайно или явно собирают все больше клиентских данных, чтобы повысить собственную прибыль. Наука о данных принимает вызовы времени, предлагая новые алгоритмические решения. Однако нехватка специалистов ощущается.
Предлагаемый план самообразования основан на минимальных требованиях, предъявляемых в вакансиях для аналитиков данных. Мы расскажем, как развиться от новичка до специалиста в Data Science за 3 месяца.
По результатам прохождения плана вы вряд ли поступите на службу в компанию, чья деятельность целиком основана на анализе данных. Но при должном усердии сможете зарекомендовать себя в фирму поменьше и начать карьеру аналитика данных. Очевидно, что предлагаемый курс Data Science за 3 месяца – это лишь один из вариантов. Вы можете варьировать продолжительность по своему усмотрению.
Небольшой объем курса позволит понять, интересно ли вам это. В плане используются только общедоступные курсы и свободные образовательные платформы, так что вы не потратите ничего, кроме собственного времени. Деятельность разработчика, так или иначе, связана с операциями над данными, поэтому потраченное время точно не пропадет даром.
Предварительные соображения по плану Data Science за 3 месяца
Первый месяц в предлагаемом учебном плане посвящен анализу данных, второй – алгоритмам машинного обучения, третий – современным технологиям науки о данных, используемым в реальных проектах – как Spark и Hadoop. Чтобы изучить эти столпы Data Science за 3 месяца, план требует ускоренного обучения. Каждую неделю нужно уделять для занятий минимум 10 часов. Но не делайте это за один раз, гораздо эффективнее заниматься каждый день по 2-3 часа.
Многие лекторы говорят довольно медленно, так как в процессе говорения думают о наилучшем преподнесении речи. Не бойтесь ускорять видео и проматывать понятные моменты. Ускоренное обучение позволяет тратить меньше времени на прокрастинацию. Ведите текстовые записи, заносите в конспект новые идеи, чтобы вернуться к ним при обсуждении свежего материала. Чтобы закрепить полученные знания, в конце недели делайте один небольшой проект с применением освоенной технологии.
Неделя 1 – Изучаем Python
Специалистам по анализу данных обычно нет необходимости изучать все особенности используемого ими языка. Для курса Data Science за 3 месяца гораздо правильнее положиться на практику. В этом смысле идеально подходит Python. Понимание основных концепций не займет много времени. Плюс Python настолько популярен, что при возникновении любых трудностей ответ находится за считанные секунды.
Как же изучить самое необходимое, не отвлекаясь на пока ненужные аспекты? К счастью, Microsoft разработал специальный курс Introduction to Python for Data Science.
Курс как раз учит самому важному из Python, а также применению наиболее популярных сторонних библиотек: NumPy (работа с массивами чисел), Matplotlib (визуализация данных) и Pandas (обработка датасетов). В качестве дополнения вы можете посмотреть видео из соответствующего YouTube списка Сираджа Равала, предложившего этот план и набор курсов.
Неделя 2 – Статистика и вероятность
Вторая неделя плана посвящена основам теории вероятностей и математической статистики при помощи Khan Academy. Усилиями мощной команды этот ресурс прогрессирует с каждым годом и уже давно превратился из сборника образовательных видео в мощную платформу с наглядной визуализацией данных и тестами в интерактивной игровой форме.
Курс включает все необходимые базовые понятия из указанных дисциплин.
Неделя 3 – Предподготовка и визуализация данных
Чтобы правильно использовать данные для анализа, важно уметь их подготавливать, «чистить» и правильным образом визуализировать. Это не так уж просто. Облегчить задачу поможет курс Georgia Tech на edX.
Кроме вышеперечисленного, в этом курсе вы узнаете, как пользоваться блокнотами Jupyter – одним из наиболее популярных средств представления результатов работы аналитиков данных.
Неделя 4 – Первый проект Kaggle
Если вы интересуетесь Data Science, то наверняка слышали о Kaggle. Это не только сайт, на котором аналитики выигрывают денежные призы в конкурсах по машинному обучению, но и гостеприимное сообщество. На Kaggle имеются подборки курсов, которые помогут вам быстрее влиться в Data Science комьюнити.
Ничто не учит лучше специфике работы, чем конкретизированная практика. На четвертой неделе выберите один из несложных проектов Kaggle, который заинтересует вас сильнее прочих. Ничего страшного, если вы не сможете предложить лучшее решение. Зато поймете на деле, чем фактически занимаются аналитики данных.
Создайте репозиторий своего решения на GitHub. Не пренебрегайте документацией и помните, что профиль GitHub может служить вашим резюме (здесь мы объяснили, что это такое, простыми словами).
Недели 5 и 6 – Алгоритмы и машинное обучение
Наступила пора познакомиться с базовыми алгоритмами и основными идеями машинного обучения. Соответствующему курсу на edX нужно уделить, по крайней мере, две недели: первую – всем трем разделам по алгоритмам, а вторую – теории и практике машинного обучения.
Неделя 7 – Глубокое обучение
Одним из главных и популярных типов алгоритмов машинного обучения являются нейронные сети. Самым цитируемым пособием по применению нейронных сетей в сфере искусственного интеллекта является регулярно дополняемая книга по глубокому обучению Иэна Гудфеллоу и соавторов.
Неделя 8 – Второй проект Kaggle
В конце второго месяца выполните проект Kaggle, учитывая полученные фундаментальные знания в области машинного обучения и Deep Learning. Терминология на форуме Kaggle станет вам уже гораздо более понятной.
Неделя 9 – Базы данных (SQL + NoSQL)
Пока мы говорили только об анализе данных, но практически ничего об их хранении и обращении к ним. Курс по реляционным базам данных на Udacity дает краткое, но вполне достаточное для начала работы представление о базах данных, подобных SQL.
Другой короткий курс по NoSQL от Microsoft позволит ознакомиться с отличиями, связанными с нереляционными базами данных.
Неделя 10 – Hadoop & Map Reduce + Spark
Объемы данных, которыми оперируют аналитики в коммерческих организациях, не позволяют работать с ними, сохранив на персональном компьютере. Эта проблема возникла давно и потребовала нового стиля обработки больших данных. Наиболее популярными инструментами в этом плане стали Hadoop и MapReduce, которым посвящен соответствующий курс Cloudera.
Новым популярным инструментом стал Spark, который для удобства вы можете рассматривать как расширение Hadoop. Чтобы ознакомиться с инструментом, изучите эту презентацию.
Неделя 11 – Data Storytelling
Одной из частых проблем аналитиков данных является их слишком «инженерная» погруженность в задачу, неумение представить информацию. Аналитики данных не всегда корректно могут донести заказчику, что им необходимо знать относительно данных, и что они могут дать в ответ. Избавиться от подобных проблем поможет соответствующий курс Microsoft Analytics Storytelling for Impact.
Неделя 12 – Третий проект Kaggle
Аналогично первым двум месяцам, в конце третьего мы предлагаем реализовать вам проект Kaggle с большими данными. Возьмите тот, который максимально интересен вам по самой концепции, чтобы было приятно писать о нем в своем резюме. Приложите максимум усилий и используйте все полученные за три месяца знания.
Что теперь?
После прохождения курса, как говорилось вначале, вы можете попробоваться на одну из вакансий, которой будете соответствовать по требованиям. Не ограничивайте себя российскими биржами труда. Не пренебрегайте стажировками и продолжайте свое обучение – выделите для себя, какие инструменты из интересующих вакансий встречаются чаще прочих.
Кстати, ведь даже задачу поиска вакансии в области Data Science можно оптимизировать при помощи Data Science. Дерзайте!





















