Онлайн-курс с экспертом от СберБанка
Data Science
Спойлер: Программа
01.Введение в машинное обучение
- Что такое машинное обучение?
- Для чего используется машинное обучение?
- Какие типы задач можно решать с помощью машинного обучения?
- Основные проблемы машинного обучения
- Почему будем использовать python?
- Обзор основных инструментов и библиотек (Jupyter Notebook, sklearn, NumPy, SciPy, matplotlib, pandas).
02. Основы Python
- типы данных
- ссылки на объекты
- коллекции данных
- логические операции
- инструкции управления потоком выполнения
- арифметические операторы
- ввод / вывод
- создание и вызов функций
Практика
Работа с объектами в Python, написание функций для работы с данными
03. Математика, необходимая в DS / ML
- функция
- производная, частная производная, градиент функции
- теория вероятности: основные определения
- определение вероятности, вычисление вероятностей сложных событий
- распределение вероятностей, независимые и зависимые переменные
- генеральные совокупности и выборки
- центральная предельная теорема
- меры центральной тенденции, меры разброса
- выбросы
Практика
реализация указанных математических сущностей на Python
04. Управление данными и их интерпретация
- введение в массивы библиотеки NumPy
- выполнение вычислений над массивами NumPy
- сравнения, макси и булева логика в NumPy
- сортировка массивов NumPy
- введение в библиотеку pandas
- операции над данными в библиотеке pandas
- объединение наборов данных: конкатенация, слияние и соединение
- агрегирование и группировка в pandas
- сводные таблицы в pandas
- векторизованные операции и методы повышения производительности pandas
- визуализация данных с помощью matplotlib
- линейные графики и диаграммы рассеяния в matplotlib
- графики плотности, гистограммы в matplotlib
- настройка легенды на графикам, тексты и поясняющие надписи
- множественные графики
Практика
векторные вычисление с помощью NumPy, операции над векторами и матрицами, анализ данных с помощью pandas, вычисление основных статистик, фильтрация и отбор данных с помощью pandas, визуализация данных с помощью matplotlib / seaborn
05. Линейные модели
- измерение ошибки в задачах регрессии
- обучение линейной регрессии
- градиентный спуск и модификация градиентного спуска
- интерпретация коэффициентов линейной регрессии
- подготовка данных для линейной модели
- оценка качества моделей
- регуляризация линейной модели и гиперпараметры
Практика
реализация метрик качества для задачи регрессии, анализ их слабых и сильных сторон, реализация классического решения для модели линейной регрессии, реализация алгоритма градиентного спуска, визуализация траекторий градиентного спуска и стохастического градиентного спуска, сравнение скорости схождения алгоритма градиентного спуска и стохастического градиентного спуска, реализация L1, L2 регуляризации для линейной модели. Опционально: реализация более сложных методов оптимизации для поиска решения линейной регрессии.
06. Логистическая регрессия
- измерение ошибки в задачах бинарной классификации
- оценивание вероятностей
- переобучение, кривые обучения, кривые валидации
- интерпретация коэффициентов логистической регрессии
- границы решения
Практика
реализация метрик качества для задачи классификации, анализ их слабых и сильных сторон, реализация модели логистической регрессии, построение и анализ кривых обучения и валидационных кривых. Применение модели логистической регрессии для реальных данных, оценка качества модели. Реализация собственных элементов пайплайнов, объединение элементов предобработки данных и обучения модели в единый пайплайн.
Опционально
самостоятельная реализация модели логистической регрессии.
07. Решающие деревья
- обучение и визуализация дерева принятия решений
- применение дерева для получения прогнозов
- оценивание вероятностей классов
- оценивание непрерывной величины
- алгоритм обучения CART
- вычислительная сложность деревьев решений
- выбор критериев разбиения
- гиперпараметры, регуляризация, неустойчивость деревьев решений
Практика
обучение решающих деревьев для задачи классификации и регрессии, сравнение критериев информативностей деревьев решений, сравнение критериев останова деревьев решений, визуализация плоскостей решения при различных значениях гиперпараметров деревьев решений, сравнение способов регуляризации деревьев решений на практике. Сравнение решающих деревьев с линейными моделями, сравнение качества решения и устойчивости решения.
Опционально
самостоятельная реализация модели решающего дерева для задачи классификации и регрессии.
08. Бэггинг, случайный лес
- разложение ошибки на смещение и дисперсию
- бутстрап, бэггинг, out-of-bag ошибка
- метод случайных подпространств
- случайный лес
- экстремально случайные деревья
- работа с текстовыми данными
- оценка важности признаков
Практика
самостоятельная реализация модели бэггинга с использованием решающих деревьев и линейных моделей. Векторизоация текстовых данных, использования TF-IDF для текстовых данных. Использование лемматизации и стемминга для улучшения качества текстовых данных. Использование модели случайного леса и линейных моделей для работы с текстовыми данными. Использование методов для оценки важности признаков для модели случайного леса.
Опциональносамостоятельная реализация модели случайного леса для задачи классификации и регрессии.
09. Градиентный бустинг
- бустинг как направленная композиция алгоритмов
- AdaBoost
- XGBoost
- LightGBM
- CatBoost
Практика
сравнение градиетного бустинга и случайного леса, анализ смещения и дисперсии модели градиетного бустинга, Сравнение реализация алгоритма градиентного бустинга (AdaBoost, XGBoost, LightGBM, CatBoost) на задачах бинарной классификации и регрессии.
10. Важность признаков и методы снижения размерности
- Встроенные методы оценки важности признаков, + / -
- Оценка важности признаков на основе перестановок
- SHAP для оценки важности признаков и интерпретации blackbox-моделей
- Проблема проклятия размерности
- PCA для снижения размерности
- Анализ главных компонент
Практика
использование встроенных методов оценки важности признаков для линейных моделей, решающих деревьев, случайного леса и градиентного бустинга, анализ их плюсов и минусов. Использование универсальных методов оценки важности, анализ их преимуществ перед встроенными методами оценки важности признаков, отбора признаков. Использование SHAP, PCA для отбора признаков.
11. Обучение без учителя (кластеризация)
- [опциональная лекция]
12. Основы А-Б тестирования
- распределение вероятностей
- независимые и зависимые переменные
- проверка гипотез
- доверительные интервалы
- p-value, z-статистика
- проверка гипотез с помощью t - критерия
- проверка гипотез для долей
Практика
моделирование распределения вероятностей с помощью python, проверка одновыборочных гипотез, двухвыбороных гипотез для независимых выборок и двухвыборочных гипотез для зависимых выборок с помощью python.
13. Полный проект машинного обучения (основные этапы + демонстрация)
- работа с реальными данными
- постановка задачи
- получение данных
- обнаружение и визуализация данных для понимания их сущности
- подготовка данных для алгоритмов машинного обучения
- выбор и обучение модели
- настройка гиперпараметров модели
- анализ ошибок / поиск возможностей для улучшения качества модели
- проверка модели на реальных данных
- запуск и сопровождение модели
Data Science
Спойлер: Программа
01.Введение в машинное обучение
- Что такое машинное обучение?
- Для чего используется машинное обучение?
- Какие типы задач можно решать с помощью машинного обучения?
- Основные проблемы машинного обучения
- Почему будем использовать python?
- Обзор основных инструментов и библиотек (Jupyter Notebook, sklearn, NumPy, SciPy, matplotlib, pandas).
02. Основы Python
- типы данных
- ссылки на объекты
- коллекции данных
- логические операции
- инструкции управления потоком выполнения
- арифметические операторы
- ввод / вывод
- создание и вызов функций
Практика
Работа с объектами в Python, написание функций для работы с данными
03. Математика, необходимая в DS / ML
- функция
- производная, частная производная, градиент функции
- теория вероятности: основные определения
- определение вероятности, вычисление вероятностей сложных событий
- распределение вероятностей, независимые и зависимые переменные
- генеральные совокупности и выборки
- центральная предельная теорема
- меры центральной тенденции, меры разброса
- выбросы
Практика
реализация указанных математических сущностей на Python
04. Управление данными и их интерпретация
- введение в массивы библиотеки NumPy
- выполнение вычислений над массивами NumPy
- сравнения, макси и булева логика в NumPy
- сортировка массивов NumPy
- введение в библиотеку pandas
- операции над данными в библиотеке pandas
- объединение наборов данных: конкатенация, слияние и соединение
- агрегирование и группировка в pandas
- сводные таблицы в pandas
- векторизованные операции и методы повышения производительности pandas
- визуализация данных с помощью matplotlib
- линейные графики и диаграммы рассеяния в matplotlib
- графики плотности, гистограммы в matplotlib
- настройка легенды на графикам, тексты и поясняющие надписи
- множественные графики
Практика
векторные вычисление с помощью NumPy, операции над векторами и матрицами, анализ данных с помощью pandas, вычисление основных статистик, фильтрация и отбор данных с помощью pandas, визуализация данных с помощью matplotlib / seaborn
05. Линейные модели
- измерение ошибки в задачах регрессии
- обучение линейной регрессии
- градиентный спуск и модификация градиентного спуска
- интерпретация коэффициентов линейной регрессии
- подготовка данных для линейной модели
- оценка качества моделей
- регуляризация линейной модели и гиперпараметры
Практика
реализация метрик качества для задачи регрессии, анализ их слабых и сильных сторон, реализация классического решения для модели линейной регрессии, реализация алгоритма градиентного спуска, визуализация траекторий градиентного спуска и стохастического градиентного спуска, сравнение скорости схождения алгоритма градиентного спуска и стохастического градиентного спуска, реализация L1, L2 регуляризации для линейной модели. Опционально: реализация более сложных методов оптимизации для поиска решения линейной регрессии.
06. Логистическая регрессия
- измерение ошибки в задачах бинарной классификации
- оценивание вероятностей
- переобучение, кривые обучения, кривые валидации
- интерпретация коэффициентов логистической регрессии
- границы решения
Практика
реализация метрик качества для задачи классификации, анализ их слабых и сильных сторон, реализация модели логистической регрессии, построение и анализ кривых обучения и валидационных кривых. Применение модели логистической регрессии для реальных данных, оценка качества модели. Реализация собственных элементов пайплайнов, объединение элементов предобработки данных и обучения модели в единый пайплайн.
Опционально
самостоятельная реализация модели логистической регрессии.
07. Решающие деревья
- обучение и визуализация дерева принятия решений
- применение дерева для получения прогнозов
- оценивание вероятностей классов
- оценивание непрерывной величины
- алгоритм обучения CART
- вычислительная сложность деревьев решений
- выбор критериев разбиения
- гиперпараметры, регуляризация, неустойчивость деревьев решений
Практика
обучение решающих деревьев для задачи классификации и регрессии, сравнение критериев информативностей деревьев решений, сравнение критериев останова деревьев решений, визуализация плоскостей решения при различных значениях гиперпараметров деревьев решений, сравнение способов регуляризации деревьев решений на практике. Сравнение решающих деревьев с линейными моделями, сравнение качества решения и устойчивости решения.
Опционально
самостоятельная реализация модели решающего дерева для задачи классификации и регрессии.
08. Бэггинг, случайный лес
- разложение ошибки на смещение и дисперсию
- бутстрап, бэггинг, out-of-bag ошибка
- метод случайных подпространств
- случайный лес
- экстремально случайные деревья
- работа с текстовыми данными
- оценка важности признаков
Практика
самостоятельная реализация модели бэггинга с использованием решающих деревьев и линейных моделей. Векторизоация текстовых данных, использования TF-IDF для текстовых данных. Использование лемматизации и стемминга для улучшения качества текстовых данных. Использование модели случайного леса и линейных моделей для работы с текстовыми данными. Использование методов для оценки важности признаков для модели случайного леса.
Опциональносамостоятельная реализация модели случайного леса для задачи классификации и регрессии.
09. Градиентный бустинг
- бустинг как направленная композиция алгоритмов
- AdaBoost
- XGBoost
- LightGBM
- CatBoost
Практика
сравнение градиетного бустинга и случайного леса, анализ смещения и дисперсии модели градиетного бустинга, Сравнение реализация алгоритма градиентного бустинга (AdaBoost, XGBoost, LightGBM, CatBoost) на задачах бинарной классификации и регрессии.
10. Важность признаков и методы снижения размерности
- Встроенные методы оценки важности признаков, + / -
- Оценка важности признаков на основе перестановок
- SHAP для оценки важности признаков и интерпретации blackbox-моделей
- Проблема проклятия размерности
- PCA для снижения размерности
- Анализ главных компонент
Практика
использование встроенных методов оценки важности признаков для линейных моделей, решающих деревьев, случайного леса и градиентного бустинга, анализ их плюсов и минусов. Использование универсальных методов оценки важности, анализ их преимуществ перед встроенными методами оценки важности признаков, отбора признаков. Использование SHAP, PCA для отбора признаков.
11. Обучение без учителя (кластеризация)
- [опциональная лекция]
12. Основы А-Б тестирования
- распределение вероятностей
- независимые и зависимые переменные
- проверка гипотез
- доверительные интервалы
- p-value, z-статистика
- проверка гипотез с помощью t - критерия
- проверка гипотез для долей
Практика
моделирование распределения вероятностей с помощью python, проверка одновыборочных гипотез, двухвыбороных гипотез для независимых выборок и двухвыборочных гипотез для зависимых выборок с помощью python.
13. Полный проект машинного обучения (основные этапы + демонстрация)
- работа с реальными данными
- постановка задачи
- получение данных
- обнаружение и визуализация данных для понимания их сущности
- подготовка данных для алгоритмов машинного обучения
- выбор и обучение модели
- настройка гиперпараметров модели
- анализ ошибок / поиск возможностей для улучшения качества модели
- проверка модели на реальных данных
- запуск и сопровождение модели
Для просмотра содержимого вам необходимо авторизоваться
Для просмотра содержимого вам необходимо авторизоваться