Анализ данных на Python в примерах и задачах

Практический анализ данных на Python с Anaconda: подготовка данных, построение моделей машинного обучения и оценка их качества.
Студентов 1 Для всех RU
Записаться
Объём

36 час.
Длительность

30 дней
Нагрузка

9 час.
Формат обучения

Дистанционно (самостоятельно)
Описание Учебный курс посвящен анализу данных на Python и построен на разборе практических примеров и задач. Рассматриваются установка Anaconda, основы синтаксиса, функции и классы, загрузка данных и импорт моделей. Изучаются построение и улучшение моделей машинного обучения — логистическая регрессия, деревья, SVM, XGBoost и нейронные сети, подбор параметров, кодирование признаков и оценка качества по различным метрикам. Материал адресован аналитикам данных и инженерам машинного обучения.
Цели
  • Сформировать понимание процесса анализа данных на Python.
  • Развить умение строить и улучшать модели машинного обучения.
  • Подготовить к оценке качества моделей по метрикам.
Чему я научусь?
  • Готовить данные и кодировать категориальные признаки.
  • Строить модели классификации и сравнивать их на примерах.
  • Подбирать параметры и улучшать качество моделей.
  • Анализировать модели по метрикам качества.

Авторы

Бекларян Армен
Чему я научусь?
  • Готовить данные и кодировать категориальные признаки.
  • Строить модели классификации и сравнивать их на примерах.
  • Подбирать параметры и улучшать качество моделей.
  • Анализировать модели по метрикам качества.

Учебный план

Занятия
Экзамен экстерном Внимание! Экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите подтвердить свои знания по данному курсу без его изучения или поверить свои знания по нему. Экзамен экстерном можно сдать только один раз.
1 Введение и установка Anaconda Данный текст представляет собой вводную лекцию к курсу «Анализ данных на Python в примерах и...

Данный текст представляет собой вводную лекцию к курсу «Анализ данных на Python в примерах и задачах» в рамках образовательной программы по бизнес-аналитике. В лекции проводится сравнение языков Python и R, обосновывается выбор Python для анализа данных, описывается подход к его изучению (без углубления в ООП, с упором на скриптовую работу), а также даются практические инструкции по установке и настройке среды разработки Anaconda и инструмента Jupyter Notebook. Основной фокус — на прикладном использовании Python для обработки и визуализации данных.

ещё
36 мин
2 Первый запуск В тексте описывается завершающий этап установки дистрибутива Anaconda, используемого для разработки на Python. Автор обращает внимание... В тексте описывается завершающий этап установки дистрибутива Anaconda, используемого для разработки на Python. Автор обращает внимание на альтернативную среду разработки (PyCharm), но подтверждает выбор Anaconda. Далее рассматривается запуск приложения Anaconda Navigator, его интерфейс и ключевая функция — управление виртуальными средами. В практической части ставится задача по обновлению существующих компонентов (Jupyter и др.) и доустановке недостающих (Orch и Gluiz). ещё 12 мин
3 Основы синтаксиса и базовые команды В данной лекции рассматривается процесс первоначальной настройки среды разработки Anaconda для анализа данных на Python. Описан... В данной лекции рассматривается процесс первоначальной настройки среды разработки Anaconda для анализа данных на Python. Описан «стопроцентный» способ обновления ядра и пакетов через командную строку Anaconda Prompt. Далее дается практическое руководство по запуску Jupyter Notebook, настройке безопасности (токены и пароли) и основам работы в этой среде. В практической части демонстрируются базовые конструкции Python: переменные, типы данных, списки, строки, словари и операции с ними (индексация, срезы, конкатенация, умножение строк, добавление элементов). ещё 120 мин
Тест 1 для курса # 51860 для курса Анализ данных на Python в примерах и задачах 40 мин
4 Функции и классы Лекция посвящена основам определения и использования функций в Python, а также введению в объектно-ориентированное программирование через... Лекция посвящена основам определения и использования функций в Python, а также введению в объектно-ориентированное программирование через классы. Рассматривается синтаксис def, механизм передачи параметров, возврат значений return, аргументы по умолчанию и динамическая типизация. Далее объясняется, для чего нужны классы: от конструктора (__init__) и атрибутов (self) до методов экземпляра. На практическом примере «Журнал с весами оценок» показано, как классы помогают структурировать код, переиспользовать логику и избегать дублирования при изменении весов или добавлении студентов. ещё 60 мин
5 Загрузка данных и импорт моделей машинного обучения В данной лекции рассматривается процесс подключения и использования библиотек в Python для анализа данных. Основной фокус... В данной лекции рассматривается процесс подключения и использования библиотек в Python для анализа данных. Основной фокус сделан на библиотеке Pandas (работа с DataFrame), а также упоминаются NumPy (математические операции) и Scikit-learn (алгоритмы машинного обучения). На практическом примере с задачей кредитного скоринга демонстрируется полный цикл работы: от чтения данных из Excel (.xls) до первичного анализа структуры данных (типы столбцов, статистика) и разбиения выборки на обучающую и тестовую части. Лекция завершается импортом моделей (логистическая регрессия, KNN, случайный лес) для последующего сравнения. ещё 93 мин
Тест 2 для курса # 51860 для курса Анализ данных на Python в примерах и задачах 40 мин
6 Пример построения модели машинного обучения В материале рассматривается практический процесс построения модели машинного обучения для задачи кредитного скоринга (выдавать или не... В материале рассматривается практический процесс построения модели машинного обучения для задачи кредитного скоринга (выдавать или не выдавать кредит). Автор демонстрирует полный цикл работы: импорт данных, их разделение на обучающую и тестовую выборки с помощью библиотеки Scikit-learn, обучение трех алгоритмов (k-ближайших соседей, логистическая регрессия, случайный лес), оценку точности моделей и ручной подбор гиперпараметров. Особое внимание уделяется единообразию интерфейса методов fit и predict, а также влиянию изменения параметров (например, количества соседей) на итоговую точность. В конце даются рекомендации по использованию официальной документации для углубленной настройки моделей. ещё 54 мин
7 Кодирование категорных признаков В лекции рассматриваются методы интерпретации моделей машинного обучения и работы с категориальными признаками. Сначала объясняется, как... В лекции рассматриваются методы интерпретации моделей машинного обучения и работы с категориальными признаками. Сначала объясняется, как оценить важность признаков в уже построенной модели с помощью атрибута coef_ (веса). Затем подробно разбирается метод кодирования категориальных переменных: сравниваются One-Hot Encoding (создание бинарных столбцов под каждую категорию) и Label Encoding (присвоение каждой категории уникального числа). На примере кредитного скоринга показывается, почему One-Hot Encoding в большинстве случаев является более безопасным и адекватным подходом, а также демонстрируется создание функции для автоматизации обучения моделей. ещё 75 мин
Тест 3 для курса # 51860 для курса Анализ данных на Python в примерах и задачах 40 мин
8 Улучшение качества модели, подбор параметров В данной лекции рассматривается практический аспект улучшения качества модели машинного обучения (логистической регрессии) путем подбора гиперпараметра... В данной лекции рассматривается практический аспект улучшения качества модели машинного обучения (логистической регрессии) путем подбора гиперпараметра C. Автор демонстрирует процесс визуализации зависимости точности модели от значения параметра с использованием библиотеки Matplotlib в среде Jupyter Notebook. В заключительной части лекции подводятся итоги по пройденным темам (типы данных, функции, Pandas, Scikit-learn) и даются рекомендации по дальнейшему самостоятельному изучению Python, включая список полезных ресурсов. ещё 30 мин
9 Решение задачи определения спам сообщений В данной лекции рассматривается практическое применение языка Python для решения задачи классификации текстовых сообщений (определение спама).... В данной лекции рассматривается практическое применение языка Python для решения задачи классификации текстовых сообщений (определение спама). Лектор демонстрирует полный цикл анализа данных: от загрузки датасета до оценки качества моделей машинного обучения. Основной фокус сделан на использовании библиотеки Pandas для обработки данных, метода map для перекодировки категориальных признаков, а также на применении CountVectorizer для преобразования текста в числовую матрицу частот слов. В рамках занятия сравниваются две модели — логистическая регрессия и метод K ближайших соседей (KNN), а также анализируются различные метрики качества (Accuracy, Precision, Recall, F1). ещё 87 мин
10 Описание различных метрик качества. Часть 1 В данном фрагменте лекции рассматривается проблема выбора метрики качества для модели машинного обучения. На примере полученных... В данном фрагменте лекции рассматривается проблема выбора метрики качества для модели машинного обучения. На примере полученных результатов (99% и 84%) демонстрируется, что разные метрики могут давать существенно разную оценку одной и той же модели. Автор подробно разбирает метрику Accuracy (точность), выявляет её ключевой недостаток — чувствительность к дисбалансу классов — и вводит понятия Precision (точность для класса 1) и Recall (в упоминании), объясняя, что Precision помогает контролировать долю ложноположительных ответов. ещё 21 мин
11 Описание различных метрик качества. Часть 2 В лекции рассматриваются метрики качества бинарной классификации (Recoil/Recall, Precision, Accuracy, F1) на примере задачи определения спама.... В лекции рассматриваются метрики качества бинарной классификации (Recoil/Recall, Precision, Accuracy, F1) на примере задачи определения спама. Анализируется ситуация с несбалансированными классами (класс «спам» составляет лишь 15% данных) и объясняется, почему Accuracy в таких случаях вводит в заблуждение. На примере двух алгоритмов — логистической регрессии и k-ближайших соседей (KNN) — демонстрируется, как интерпретировать Precision и Recall для выбора лучшей модели в зависимости от бизнес-рисков (что хуже: пропустить спам или удалить важное письмо). В конце лекции подчеркивается важность анализа значимости признаков и универсальности синтаксиса библиотеки Scikit-learn. ещё 72 мин
12 Алгоритм деревьев решений Лекция посвящена практической реализации алгоритма «Деревья решений» на Python. В ходе занятия слушатели знакомятся с установкой... Лекция посвящена практической реализации алгоритма «Деревья решений» на Python. В ходе занятия слушатели знакомятся с установкой фреймворка Graphviz для визуализации, учатся подготавливать данные, строить модели с разными критериями (Джини и энтропия), визуализировать полученные деревья и оценивать их качество с помощью метрик (Confusion matrix, Accuracy). Также обсуждается важность выбора метрики в зависимости от предметной области (например, медицинская диагностика) и влияние гиперпараметров на переобучение. ещё 108 мин
Тест 4 для курса # 51860 для курса Анализ данных на Python в примерах и задачах 40 мин
13 Метод опорных векторов Лекция посвящена алгоритму метода опорных векторов (SVM) — одному из популярных методов классификации с учителем. Рассматриваются... Лекция посвящена алгоритму метода опорных векторов (SVM) — одному из популярных методов классификации с учителем. Рассматриваются геометрические основы алгоритма (поиск гиперплоскости, максимизация зазора), ключевые гиперпараметры (коэффициент регуляризации C, параметр ядра gamma), а также виды ядер (линейное, полиномиальное, RBF, сигмоидное). Практическая часть демонстрирует применение SVM на двух задачах: определение фальшивых банкнот и классификация ирисов Фишера с помощью библиотеки scikit-learn. Показано, как выбор ядра и настройка параметров влияют на точность модели (от переобучения до идеального разделения классов). ещё 114 мин
14 Алгоритм xgboost В данной лекции рассматривается алгоритм машинного обучения XGBoost (eXtreme Gradient Boosting), разработанный компанией Google. Лектор демонстрирует... В данной лекции рассматривается алгоритм машинного обучения XGBoost (eXtreme Gradient Boosting), разработанный компанией Google. Лектор демонстрирует практическую работу с библиотекой: её установку, подготовку данных на примере известного датасета «Перепись населения США» (1996 год), сравнение эффективности XGBoost с алгоритмами 90-х годов. Особое внимание уделяется использованию GridSearch для автоматического подбора гиперпараметров, формату данных DMatrix для оптимизации вычислений, а также визуализации важности признаков и построению итогового дерева решений. ещё 153 мин
Тест 5 для курса # 51860 для курса Анализ данных на Python в примерах и задачах 40 мин
15 Нейронные сети. Часть 1 Лекция посвящена практической реализации нейронных сетей на Python для анализа данных о вине. Рассматривается полный цикл... Лекция посвящена практической реализации нейронных сетей на Python для анализа данных о вине. Рассматривается полный цикл работы: от установки необходимых библиотек (Visualizer, TensorFlow, Keras, Theano, PyDot) до построения и оценки моделей. В рамках лекции решаются две задачи машинного обучения: бинарная классификация (определение типа вина: красное или белое по химическому составу) и регрессия (прогнозирование качества вина). Также демонстрируется визуализация архитектуры сети, анализ корреляций и сравнение работы разных бэкендов (TensorFlow vs Theano). ещё 135 мин
16 Нейронные сети. Часть 2 В данной лекции рассматривается практическое применение нейронных сетей для решения задачи регрессии на примере предсказания качества... В данной лекции рассматривается практическое применение нейронных сетей для решения задачи регрессии на примере предсказания качества вина. В отличие от предыдущей задачи классификации (где предсказывали тип вина), теперь целевая переменная — числовая оценка качества. Лектор демонстрирует полный цикл: подготовку данных (масштабирование), построение моделей в TensorFlow, оценку качества с помощью кросс-валидации (5 разбиений) и метрик (MSE, MAE). Основной акцент сделан на вариативность настройки модели: изменение архитектуры (количество нейронов, слоев), функций активации (ReLU, tanh, кастомная), оптимизаторов (Adam, RMSprop, SGD) и их параметров (learning rate). В заключении автор подводит итог о гибкости и мощи Python для анализа данных, отмечая, что хотя нейросети теоретически могут решить любую задачу, на практике успех зависит от подбора гиперпараметров и опыта специалиста. ещё 93 мин
Тест 6 для курса # 51860 для курса Анализ данных на Python в примерах и задачах 40 мин
Тренировочный экзамен Внимание! Тренировочный экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите проверить свои знания курса перед сдачей экзамена. Тренировочный экзамен можно сдавать сколько угодно один раз.
Экзамен