25 курсов для начинающих дата-аналитиков
Подборка сайтов с бесплатными уроками по изучению больших данных.
Средняя зарплата дата-аналитика, по данным HeadHunter, — 120 тысяч рублей. В материале выделены основные требования в вакансиях дата-аналитиков и места, где можно получить навыки в этой области бесплатно.
Кто такие дата-аналитики
Специалисты по работе с большими данными умеют извлекать полезную информацию из всевозможных источников и анализировать её для принятия бизнес-решений. Как правило, аналитики сталкиваются с разрозненной информацией, поэтому важно уметь извлекать нужные данные.
Сейчас профессия дата-аналитика считается одной из самых привлекательных и перспективных в мире. Чтобы стать хорошим аналитиком, нужно больше разбираться в статистике, чем в программировании. Потому что во время работы приходится строить математические модели, которые опишут проблему и фактические данные.
Дата-аналитик работает со случайными величинами и вероятностными моделями, его задача — найти неожиданные закономерности. Поэтому знание теории вероятностей и математической статистики — одно из главных требований к соискателям.
Также необходимо знать языки программирования R или Python и иметь представление о технологиях обработки больших данных. Этих знаний достаточно, чтобы претендовать на начальную позицию дата-аналитика.
Чтобы стать хорошим аналитиком, надо не только разбираться в программировании или статистике, но и отлично знать продукт, а главное, уметь проверять и предлагать гипотезы. Большие данные при правильном применении содержат огромное количество классных инсайтов и идей, как улучшить продукт или определить, что важно.
Но у большинства задач нет однозначного решения или алгоритма: в этом плане анализ данных — работа очень творческая. Важно и умение выбрать правильную визуализацию. Одни и те же данные могут выглядеть случайным набором точек или же рассказать много интересного при правильном подходе.
Во «ВКонтакте» мы работаем с огромными объёмами данных — более 20 млрд измерений в сутки. Информацию собираем на кластер Hadoop и используем различные инструменты для обработки: ответы на простые вопросы нам даёт Hive, а более сложную аналитику помогают осуществлять Spark, Pandas, Sklearn.
Для анализа продуктовых и технических метрик и A/B-экспериментов также используем разработанную нашей командой систему сбора данных, агрегации и визуализации. Благодаря анализу данных мы ежедневно проверяем десятки продуктовых гипотез и проводим сотни экспериментов, которые позволяют нам постоянно совершенствовать продукт, делать наши сервисы более удобными и персонализированными.
Например, в 2015 году мы начали анализировать активность пользователей в ленте новостей и смотреть, что можно улучшить. После большого количества исследований мы пришли к выводу, что можем сделать всё существенно удобнее, и в 2016 году запустили «умную» ленту, максимально интересную и полезную для каждого пользователя.
Мы постоянно продолжаем анализировать активность аудитории. В какой-то момент мы на практике обнаружили, что пользователям хочется расширять свой круг интересов и знакомиться с новыми авторами. Поэтому в 2017 году был запущен раздел «Рекомендации». И сейчас, анализируя растущую активность в новом сервисе, мы видим, что это было правильное решение.
Знание Python и R
Курс «Изучение Python»
Автор: Codecademy.
Язык: английский.
Уровень: начальный.
Онлайн-платформа Codecademy предлагает интерактивное изучение Python: на одной странице объясняется краткая теоретическая информация и интерпретатор кода. Курс рассчитан на начинающих пользователей и рассказывает о базовых командах языка программирования.
Курс предоставляется условно-бесплатно: получить доступ к контрольным заданиям и работе над проектами можно только по платной подписке. Бесплатные уроки подойдут, чтобы изучить простые конструкции и разобраться в синтаксисе языка.
Самоучитель «Python 3 для начинающих»
Автор: Дмитрий Мусин.
Язык: русский.
Уровень: начальный.
Самоучитель Мусина — одна из крупных баз знаний про Python на русском языке. На сайте находится информация о модулях, материалы про анализ данных с помощью библиотеки Pandas, теоретическая информация, примеры задач и полезные ссылки. Также на основе опубликованных статей подготовлен самоучитель в PDF-формате.
Курс «Программирование на Python»
Автор: Институт биоинформатики.
Язык: русский.
Уровень: начальный.
На курсе преподаватели знакомят с базовыми понятиями программирования. В качестве домашних заданий предлагается большой объём практических задач — все решения проверяет автоматическая система. При этом преподаватели не дают индивидуальные консультации. В курс также вошли задачи повышенной сложности, которые необязательно решать, чтобы пройти курс.
Курс «Python: основы и применение»
Автор: Институт биоинформатики.
Язык: русский.
Уровень: средний.
Требования: базовые навыки программирования на Python или других языках программирования.
Студенты курса изучают фундаментальные основы языка: как интерпретатор исполняет код, где он хранит переменные и данные, как определяются собственные типы данных и функции. Курс рассчитан на пользователей, которые знакомы с базовыми навыками программирования.
Проверочные задачи в курсе разделены на два типа: на закрепление материала и поиск способов для применения изученных навыков. Решения проверяются системой.
Автор: Udacity.
Язык: английский.
Уровень: начальный.
Слушатели изучают три базовые темы: использование функций, создание и использование классов. Последний урок посвящён созданию собственных проектов. Обучение строится на работе над мини-проектами и изучении важных концепций. Курс нацелен на тех, кто хочет стать программистом или планирует с ними работать.
Курс «Основы программирования на R»
Автор: Институт биоинформатики.
Язык: русский.
Уровень: начальный.
В этом курсе преподаватели рассматривают R как язык программирования, а не как инструмент решения конкретных задач. Слушатели изучают основные типы данных и универсальные семантические правила, а также темы, связанные с анализом и обработкой данных.
Курс «Анализ данных в R»
Автор: Институт биоинформатики.
Язык: русский.
Уровень: средний.
Требования: базовые знания в области статистики.
Преподаватели объясняют основные этапы анализа данных с помощью языка R. Студентам расскажут об основных этапах статистического анализа R, считывании и предварительной обработке данных, применении основных статистических методов и визуализации результатов.
Автор: Microsoft.
Язык: английский.
Уровень: средний.
Требования: курс ориентирован на аналитиков, которым необходимо знание R для работы над статистическими проектами.
Курс разработан Microsoft вместе с Техническим университетом Дании. В курсе рассказывают про основы R, учат читать и записывать данные, работать с ними и получать результаты. Также преподаватели объясняют, как выполнять интеллектуальную аналитику с помощью R и визуализировать данные.
Проект DataCamp
Язык: английский.
Уровень: начальный.
DataCamp предлагает интерактивные курсы изучения R и Python по темам в области науки, статистики и машинного обучения. Проект делает упор на работу с данными. DataCamp сотрудничает с RStudio, Continuum Analytics, Microsoft, привлекает преподавателей из компаний-лидеров Pfizer, Liberty Mutual, H2O, DataRobot и других.
Бесплатная подписка открывает доступ к базовым курсам и первой главе платных. Чтобы получить неограниченный доступ, нужно купить подписку за $29 в месяц или за $300 в год.
Знания в области статистики и машинного обучения
Курс «Основы статистики»
Автор: Институт биоинформатики.
Язык: русский.
Уровень: начальный.
На курсе изучают подходы к описанию данных, полученных в ходе исследований, базовые понятия статистического анализа, интерпретацию и визуализацию полученных данных. Основной акцент делается на математических идеях, интуиции и логике, которые обуславливают методы и расчётные формулы.
Автор: Computer Science Center.
Язык: русский.
Уровень: средний.
Требования: знания в области одного из языков программирования: циклы, массивы, списки, очереди.
В курсе разбираются базовые алгоритмические методы: «жадные» алгоритмы, метод «разделяй и властвуй», динамическое программирование. Для всех методов преподаватели показывают математическое доказательство корректности и оценки времени работы.
Также на курсе рассказывают об особенностях реализации алгоритмов на C++, Java и Python. Большинство алгоритмов, которые рассматриваются на курсе, необходимо запрограммировать в рамках выполнения заданий.
Автор: Udacity.
Язык: английский.
Уровень: начальный.
Слушатели курса познакомятся с основными понятиями, используемыми для описания данных. Преподаватели расскажут о методах исследований, научат вычислять и интерпретировать статистические значения, вычислять простые вероятности. Студенты изучат законы распределения и научатся управлять ими для создания вероятностных прогнозов данных.
Автор: Udacity.
Язык: английский.
Уровень: начальный.
Требования: прохождение курса «Введение в описательную статистику».
Курс посвящён изучению вывода неочевидных данных. Студенты изучат оценку параметров с использованием выборочной статистики, научатся тестировать гипотезы и доверительные интервалы. Преподаватели объяснят работу t-критерия и дисперсионный анализ, корреляцию и регрессию, а также другие методы проверки статистических гипотез.
Курс «Введение в науку о данных»
Автор: Udacity.
Язык: английский.
Уровень: средний.
Требования: базовые навыки программирования на Python.
Слушатели курса изучат основные понятия науки о данных: управление данными, анализ данных с помощью методов статистики и машинного обучения, передача и визуализация информации, работа с большими данными.
Курс «Введение в машинное обучение»
Автор: Высшая школа экономики, Школа анализа данных.
Язык: русский.
Уровень: средний.
Требования: знание основ математики (функции, производные, векторы, матрицы), навыки программирования на Python.
На курсе рассматриваются основные типы задач, решаемых с помощью машинного обучения: классификация, регрессия и кластеризация. Слушатели научатся оценивать качество моделей и решать, подходит ли модель для решения конкретной задачи. Преподаватели расскажут о современных библиотеках, в которых реализованы изучаемые модели и методы оценки их качества.
Курс «Науки о данных: визуализация»
Автор: Гарвардский университет.
Язык: английский.
Уровень: начальный.
В курсе изучаются основы визуализации данных и анализа поисковых данных. Слушатели научатся использовать пакет R ggplot2 для создания пользовательских графиков. Также преподаватель расскажет об основных ошибках, которые допускаются при работе с данными.
Автор: Microsoft.
Язык: английский.
Уровень: начальный.
Требования: практические задания основаны на Microsoft Azure и требуют подписки Azure.
Слушатели курса узнают, как использовать машинное обучение для построения прогностических моделей. Преподаватели курса расскажут, какое программное обеспечение необходимо для обработки и анализа естественного языка, изображений и видео. Также студенты научатся создавать интеллектуальных чат-ботов.
Курс «Машинное обучение»
Автор: Стэнфордский университет.
Язык: английский.
Уровень: начальный.
Слушатели курса узнают об эффективных методах машинного обучения и получат практические навыки их реализации. Также преподаватели расскажут о лучших практиках Кремниевой долины в области машинного обучения и искусственного интеллекта.
Курс даёт широкое введение в машинное обучение, интеллектуальный анализ данных и распознавание статистических моделей. Курс основывается на тематических исследованиях и практическом опыте — студенты узнают, как использовать алгоритмы обучения для построения «умных» роботов, анализировать текст, получат навыки в области компьютерного зрения, медицинской информатики, аудио, интеллектуального анализа баз данных и других областей.
Обработка больших данных
Автор: Mail.Ru Group.
Язык: русский.
Уровень: средний.
Требования: желательно уметь читать и писать код, в курсе используются Java и Python.
Hadoop — одна из популярных open-source систем для обработки больших объёмов данных. Среди пользователей системы — Facebook, Twitter, Yahoo!, Bing, Mail.ru. Слушатели изучат основные способы хранения и методы обработки больших объёмов данных. Также студенты курса научатся разрабатывать приложения, используя программную модель MapReduce.
Автор: Cloudera.
Язык: английский.
Уровень: средний.
Особые требования: базовые навыки программирования в Python.
Слушатели курса изучат основы работы с Hadoop и узнают, как его использовать для работы с большими данными. Преподаватели расскажут, какие проблемы решает Hadoop, объяснят концепции HDFS и MapReduce. По итогам курса студенты научатся писать программы с использованием MapReduce и получат опыт самостоятельного решения проблем.
Автор: MongoDB.
Язык: английский.
Уровень: средний.
Особые требования: базовые навыки программирования в Python.
Преобразование данных — это процесс очистки данных для облегчения дальнейшей работы с ними. До сих пор некоторые учёные тратят на это большую часть времени. Студенты курса узнают, как собирать и извлекать данные из широко используемых форматов. Слушатели научатся оценивать качество данных и изучат лучшие методы очистки данных с помощью MongoDB — одной из ведущих баз данных NoSQL.
Работа с большими данными
Ресурс поддерживает 425 наборов данных для сообщества по машинному обучению. Сервис предлагает качественные, реальные и понятные наборы данных машинного обучения, которые можно использовать для практического изучения методов машинного обучения.
Платформа предлагает соревнования для исследователей разного уровня подготовки, где они могут опробовать свои модели на серьёзных и актуальных данных. Kaggle предусматривает денежное вознаграждение за лучшее решение.
Список KDnuggets
KDnuggets — один из ведущих сайтов по бизнес-аналитике, большим данным, интеллектуальному анализу, науке о данных и машинному обучению. Авторы проекта собрали на одной странице 78 источников открытых данных для обработки.
Список Джо Рикерта
Джо Рикер — один из постоянных участников R-сообщества. Он собрал список сайтов, на которых можно найти открытые данные для анализа в системе R.
Мы попросили ИТ-инженера Центра компетенций по супермассивам данных в «Сбербанк-Технологиях» Диану Борисову прокомментировать список и рассказать о других понравившихся курсах.
Самоучитель «Python 3 для начинающих» — отличные уроки. Материал разложен кратко и по теме. К этому сайту обращаются не только начинающие программисты, но также опытные ребята.
Курс «Программирование на Python» подойдёт людям, начинающим изучать Python. Имеет место, но не самый лучший. Основы рассказываются долго — лучше обратиться к самоучителю.
Из плюсов — задачи развивают алгоритмическое мышление, минус — не самое оптимальное решение некоторых задач (зная определённые функции можно решить в две строчки вместо 15).
О «Python: основы и применение» слышала много хороших отзывов. Для начинающих будет сложно. Поэтому он больше подойдёт тем, кто знаком с основами.
«Основы программирования на R» — неплохой курс для тех, кто начинает изучать R. Понятное и структурированное изложение, есть практические задания, обращают внимание на важные мелочи.
Курс «Анализ данных в R» ведёт крутой преподаватель, и курс тоже отличный. После изучения математической статистики и основ программирования на R этот курс нужно пройти обязательно
«Основы статистики» — отличный курс для начинающих. Теория изложена на простых и понятных примерах без погружения в доказательства и без огромного количества формул. Практика помогает закрепить теорию.
Курс «Алгоритмы: теория и практика. Методы» организован Computer Science Center, известным своим хорошим изложением теории программирования. Александр — один из лучших преподавателей центра.
Курс подходит для тех, кто уже имеет какое-то представление об алгоритмах. Практические задания помогают закрепить материал, над некоторыми задачами придётся посидеть подольше.
От себя посоветую:
1. Платформа Стэнфордского университета, на которой также можно найти неплохие курсы для разного уровня.
2. Курс «Теория вероятностей для начинающих».
Лучше Андрея Райгородского — преподавателя курса — никто не объяснит эту тему. Разжёвывает всё, даёт понятные примеры. Курс однозначно стоит внимания.
3. Курс «Основы статистики. Часть 2».
После основ статистики можно продолжить углублять знания в данной теме и пройти второй курс. Анатолий Карпов излагает материал максимально понятно и просто.
4. Курс «Нейронные сети».
Очередной отличный курс от Института биоинформатики. Для начинающих, возможно, будет немного сложно. Но курс в любом случае стоит внимания.
5. «Питонтьютор».
Сайт поможет изучить основы программирования на Python. Работа проходит прямо в браузере. Сначала читаешь статью, затем решаешь много практических задач от легкого уровня к сложному.
6. Курс «Ликбез по дискретной математике».
Курс с хорошими отзывами. Думаю, что для тех, у кого хромает математический аппарат, курс обязателен к изучению. Ничего лучше теории в сочетании с практикой придумать нельзя.