Введение в анализ данных на Python
Формат курса
- Перед проведением курса, каждому участнику будет выдан опросник в формате гугл-формы. Цель опросника — получить представление о навыках и уровне будущих слушателей.
- Курс будет разделен на модули-лекции. Каждый модуль-лекция будет включать в себя демонстрацию слайдов и практические задания, при этом на лекции и семинары разделения не будет — все будет происходить одновременно. После каждого модуля-лекции студентам будет выдан теоретический и практический материал, который нужно будет обязательно закрепить к следующему модулю-лекции. Интервалы между разными модулями-лекциями не фиксируются — при желании можно их проводить каждую неделю, а можно раз в месяц (в зависимости от нагрузки). Один модуль-лекция будет длиться 2-3 часа. В конце каждой лекции можно будет обсудить вопросы и назначить следующее занятие в удобное всем время.
- Каждая лекция будет проходить в следующем формате (2 или 3 часа):
— 10 минут — разбор ДЗ (практических тетрадок и квизов)
— 10 минут — "вспомнить все" (предыдущие материалы лекций)
— 15 минут — лекционный материал 1
— 15 минут — практический материал 1
— 10 минут — кофе брейк 1 // questions/catch-up session 1
— 25 минут — лекционный материал 2
— 25 минут — практический материал 2
— 10 минут — кофе брейк 2 // questions/catch-up session 2
— 20 минут — лекционный материал 3 (optional)
— 20 минут — практический материал 3 (optional)
— 10 минут — кофе брейк 3 // questions/catch-up session 3
— 10 минут — discussion session (по всей лекции) + назначение следующей
Таким образом, 1/3 всего модуля занимают лекции, 1/3 практические задания и 1/3 обсуждения, ответы на вопросы и перерывы. - После каждого модуля-лекции будут выдаваться (для самостоятельного выполнения) квиз из 10-15 вопросов и практическая тетрадка — чтобы закрепить материалы лекции. Их нужно будет сделать к следующей лекции. Все задания буду оцениваться.
- После всех модулей-лекций студентам будет выдан индивидуальный проект на 10-14 дней.
Лекция 1: введение, базовые определения, статистики и графики
- Коротко о курсе. Структура, методы оценивания, теоретические и практические задания.
- Мотивация: зачем нужен анализ данных? Релевантные use-кейсы.
- Основные принципы и определения анализа данных. Частые заблуждения, частые ошибки, часто задаваемые вопросы.
- Какой бывает анализ данных? Предиктивный (предсказательный) анализ*, дескриптивная (описательная) статистика, проверка статистических гипотез*.
- Основные понятия статистики. Вероятностные распределения (нормальное, равномерное, экспоненциальное), квантили и перцентили распределения, среднее, дисперсия, медиана, мода, доверительные интервалы.
- Основные графики. Линейный график (line chart), столбичная диаграмма (bar chart), круговая диаграмма (pie chart), гистограмма, ядерная оценка плотности (kernel density estimation)*, диаграмма рассеяния (scatter plot), скрипичная диаграмма (violin plot)*, ящик с усами (box plot).
- Q&A сессия. Еще раз о Lecture Quiz, практических заданиях и проекте.
Лекция 2: базовый анализ данных
- Вспомнить все: Какой бывает анализ данных? (предиктивный (предсказательный) анализ, дескриптивная (описательная) статистика, проверка статистических гипотез).
- Предобработка данных. Очистка, фильтрация выбросов (шума), нормализация и трансформация данных, заполнение пропусков, выделение признаков (feature extraction)*, отбор признаков (feature selection)*, конструирование признаков (feature engineering)*.
- Базовый анализ данных: визуальный анализ, корреляционный анализ, регрессионный анализ, кластерный анализ, проверка статистических гипотез*.
- Q&A сессия.
Лекция 3: miscellaneous
- Визуализация многомерных данных. Метод главных компонент (PCA), метод стохастического вложения соседей с t-распределением (t-SNE), UMAP.
- Большая Q&A сессия.
- Обсуждение итогового проекта (дедлайн через 10-14 дней)
Квизы, практические задания и финальный проект
- Квиз: 10 вопросов по теме лекции (множественный выбор, произвольный ответ). Дедлайн: к началу следующей лекции.
- Практические тетрадки: фактически заменяет семинар — там будет отражена практическая реализация лекционного материала на каких-нибудь реальных данных нашего бизнеса. Это не задание на оценку, а просто тетрадка с полезными кусками кода. Дедлайн: к началу следующей лекции. Некоторые вопросы в квизе будут основаны на этой практической тетрадке — поэтому мы сразу поймем, кто ее смотрел, а кто нет.
- Финальный проект будет индивидуальным для каждого слушателя.
Для Артемия/Игоря/Павла это будет стандартный цикл одного из их проектов: поля -> модерация А -> модерация Б -> отчет. На каждом из этапов нужно будет провести визуализацию и/или простой статистический анализ. Часть заданий будут сформулированы четко, другая часть — нечетко. Это будет сделано для того, чтобы проверить, как "студент" будет рассуждать в нестандартной ситуации.
Для Плющева это будет задание, основанное на финансовых данных, которые он предоставит.
Для Зубкова — я с ним отдельно обсужу, хочет ли он поучаствовать в курсе. И если да, придумаем ему интересное задание. Возможно, Вове будет лучше поучаствовать в каком-то более продвинутом курсе (типа по машинке или NLP — такой тоже можно будет организовать в будущем).
Что нужно сделать, чтобы запустить курс:
- Согласовать общую программу (этот документ) с Д.С.
- Показать программу Маше — получить от нее фидбек, рекомендации, советы.
- Получить данные от Артемия/Игоря/Плющева: полевые, модерация А, модерация Б, отчет. Поиграться с этими данными, посмотреть какие можно сделать с ними задания (визуализация, статистика и т.п.)
- Сформировать план финального проектного задания (контент, структура)
- Запустить гугл-опросник для будущих "студентов" курса.
- Проанализировать опросник и подредактировать программу курса в соответствии с результатами.
- Сделать слайды для всех лекций
- Сделать доп. текстовые материалы (?)
- Сделать вспомогательные практические тетрадки
- Сделать квизы для первых двух лекций (для третьей не будем делать)
- Сделать для каждого "студента" шаблон-тетрадку для финального проектного задания
Структура курса по анализу данных
Курс будет состоять из нескольких независимых модулей. Один модуль = одна неделя. В одном модуле может быть прочитано 2-3 лекции (две по 90 минут, либо три по 60 минут), в зависимости от пожеланий слушателей. После каждого модуля слушателям будет выдано ДЗ с дедлайном 10 дней, которое будет оцениваться по 100-балльной шкале. В конце всех модулей будет выдан большой практический проект на 2-3 недели (для Георгия, Игоря и Артемия — обязательно, для остальных по желанию).
Всего будет три модуля. В модуле 2-3 лекции, после каждой из которых будет даваться квиз на 10 вопросов к следующей лекции. Квиз будет оцениваться (!), как и ДЗ в конце каждого модуля.
Третий модуль (доп главы) обязателен только для Георгия Артемия и Игоря. Для них будут индивидуальные проекты на 2-3 недели, которые будут включать эти доп главы. Для остальных проекта не будут, но они смогут прослушать лекции по доп. главам (без оценивания) — соответствующая информация будет записана в диплом.
Первый модуль — Введение, статистики и графики
Второй модуль — Базовый анализ данных
Третий модуль — Доп. главы / miscellaneous (не оценивается, но обяз. для А Г И)
ДЗ после модуля и квизов между лекциями не будет! Только обязательный проект для А Г И
- Написание скриптов
- Визуализация многомерных данных
- Регулярки
- Анализ временных рядов
- Q & A
- Обсуждение проекта с А Г И
Финальный проект (только для А Г И).
1 ноября — 21 ноября. Обсуждение итогов в конце ноября.
Выдача сертификатов всем — в начале декабря.
Расписание (примерное)
21-27 сент — Питон
28-4 окт — М1
12-18 окт — М2
26-31 окт — М3
Расписание может меняться в зависимости от загруженности ключевых участников (А Г И)