Основы машинного обучения/2024
Содержание
О курсе
Курс читается для студентов 2-го курса майнора ИАД в 3-4 модулях.
Проводится с 2015 года.
Лектор: Соколов Евгений Андреевич
Лекции проходят онлайн по средам в 13:00 в Zoom.
Полезные ссылки
Репозиторий с материалами на GitHub
Почта для сдачи домашних заданий (на самом деле задания сдаются в AnyTask, но если он не работает, то присылайте на почту): hse.minor.dm+<номер группы>@gmail.com (например, hse.minor.dm+3@gmail.com)
Крутой чат (но рекомендуем cначала задавать вопросы в чате вашей группы)
Таблица с оценками:
Семинары
Правила выставления оценок
В курсе предусмотрено несколько форм контроля знания:
- Проверочные работы на лекциях, проверяющие знание основных фактов с лекций и семинаров
- Практические домашние работы на Python
- Контрольная где-то в середине курса
- Письменный экзамен
Итоговая оценка вычисляется на основе оценки за работу в семестре и оценки за экзамен:
Oитоговая = Округление(0.4 * ДЗ + 0.1 * ПР + 0.2 * КР + 0.3 * Э)
Округление арифметическое.
Автоматы
Если у вас накопленная оценка >= 5.5 баллов и за контрольную >= 5.5 баллов, то вы можете перенести эту накопленную в итоговую. Или, если хотите, можете отказаться и пойти на экзамен. Но по умолчанию всем, кто может получить автомат, мы ставим автомат.
Накопленная оценка считается по формуле: (0.4 * ДЗ + 0.1 * ПР + 0.2 * КР) / 0.7.
В критериях на автомат все оценки считаются без округления.
Правила сдачи заданий
За каждый день просрочки после мягкого дедлайна снимается 1 балл. После жёсткого дедлайна работы не принимаются. Даже при опоздании на одну секунду. Сдавайте заранее.
Два раза студент может сдать домашнее задание после мягкого дедлайна (но до жёсткого) без штрафов.
При обнаружении плагиата оценки за домашнее задание обнуляются всем задействованным в списывании студентам, а также подаётся докладная записка в деканат. Следует помнить, что при повторном списывании деканат имеет право отчислить студента.
При наличии уважительной причины пропущенную проверочную можно написать позднее, а дедлайн по домашнему заданию может быть перенесён. Дедлайн по домашнему заданию переносится на количество дней, равное продолжительности уважительной причины. Решение о том, является ли причина уважительной, принимает исключительно учебный офис.
Лекции
Лекция 1 (10.01.2024). Введение в машинное обучение и анализ данных. [Слайды] [Запись лекции]
Лекция 2 (24.01.2024). Метод k ближайших соседей для классификации. Вычисление расстояний для числовых данных. [Слайды] [Запись лекции]
Лекция 3 (31.01.2024). Измерение ошибки в задачах классификации. Обобщающая способность. Проверка обобщающей способности: отложенная выборка и кросс-валидация. Метод k ближайших соседей. [Слайды] [Запись лекции]
Лекция 4 (12.02.2024). Модель линейной регрессии. Подготовка данных для линейной регрессии. MSE для линейной регрессии в матричной форме. [Слайды] [Запись лекции]
Лекция 5 (14.02.2024). Модель линейной регрессии. Подготовка данных для линейной регрессии. Переобучение и регуляризация линейных моделей. [Слайды] [Запись лекции]
Лекция 6 (21.02.2024). Градиентный спуск.[Слайды] [Запись лекции]
Лекция 7 (28.02.2024). Градиентный спуск. Функции потерь в регрессии.[Слайды] [Запись лекции]
Лекция 8 (06.03.2024). Линейная классификация. [Слайды] [Запись лекции]
Лекция 9 (13.03.2024). Метрики качества классификация. [Слайды] [Запись лекции]
Лекция 10 (20.03.2024). Логистическая регрессия и метод опорных векторов [Слайды] [Запись лекции]
Лекция 11 (27.03.2024). Линейная классификация и многоклассовые задачи [Слайды] [Запись лекции]
Лекция 12 (03.04.2024). Решающие деревья [Слайды] [Запись лекции]
Лекция 13 (10.04.2024). Решающие деревья. Композиции моделей. [Слайды] [Запись лекции]
Лекция 14 (17.04.2024). Случайный лес и градиентный бустинг. [Слайды] [Запись лекции]
Лекция 15 (24.04.2024). Градиентный бустинг. (продолжение). Отбор признаков.[Слайды] [Запись лекции]
Семинары
Семинар 1 (17.01.2024). Немного про Jupyter notebook и numpy [Ноутбук]
Семинар 2 (24.01.2024). Объектно-ориентированное программирование [Ноутбук]
Семинар 3 (31.01.2024). pandas [Ноутбук]
Семинар 4 (07.02.2024). Визуализация данных [Ноутбук]
Семинар 5 (14.02.2024). Введение в sklearn KNN [Ноутбук]
Семинар 6 (21.02.2024). Линейная регрессия [Ноутбук]
Семинар 7 (28.02.2024). Градиентный спуск [Ноутбук]
Семинар 8 (06.03.2024). Бинарная линейная классификация [Ноутбук]
Семинар 9 (13.03.2024). Логистическая регрессия. SVM. ROC-кривая [Ноутбук]
Семинар 10 (20.03.2024). Калибровка вероятностей [Ноутбук]
Семинар 11 (27.03.2024). Обработка текстов: токенизация, лемматизация, стемминг. Bag-of-words и TF-IDF. Регулярные выражения. [Ноутбук]
Семинар 12 (03.04.2024). Решающие деревья [Ноутбук]
Семинар 13 (10.04.2024). Bias-Variance decomposition, бэггинг и случайные леса [Ноутбук]
Семинар 14 (18.04.2024). Бустинг. Часть 1 (Идея подхода, функции потерь, особенности GB) [Ноутбук]
Семинар 15 (24.04.2024). Бустинг. Часть 2 (Различные реализации бустинга) [Ноутбук]
Консультации
Практические задания
За каждый день просрочки после мягкого дедлайна снимается 1 балл. После жёсткого дедлайна работы не принимаются, но есть исключение. Студенту разрешается два раза сдать домашнее задание после мягкого дедлайна (но до жёсткого) без штрафов.
Практическое задание 1 - numpy Мягкий дедлайн: 28.01.2024 23:59 МСК, Жесткий дедлайн: 01.02.2024 23:59 МСК. [Ноутбук]
Практическое задание 2 - pandas Мягкий дедлайн: 09.02.2024 23:59 МСК, Жесткий дедлайн: 13.02.2024 23:59 МСК. [Ноутбук]
Практическое задание 3 - EDA Мягкий дедлайн: 29.02.2024 23:59 МСК, Жесткий дедлайн: 05.03.2024 23:59 МСК. [Ноутбук]
Практическое задание 4 - kNN, linreg Мягкий дедлайн: 21.03.2024 23:59 МСК, Жесткий дедлайн: 27.03.2024 23:59 МСК. [Ноутбук]
Практическое задание 5 - Градиентный спуск Мягкий дедлайн: 16.04.2024 23:59 МСК, Жесткий дедлайн: 23.04.2024 23:59 МСК. [Ноутбук]
Практическое задание 6 - Классификация текстов Мягкий дедлайн: 13.05.2024 23:59 МСК, Жесткий дедлайн: 17.05.2024 23:59 МСК. [Ноутбук]
Практическое задание 7 - Деревья. Случайный лес Мягкий дедлайн: 23.05.2024 23:59 МСК, Жесткий дедлайн: 27.05.2024 23:59 МСК. [Ноутбук]
Контрольная работа
Контрольная работа состоится 22 мая на лекции в 13:00.
Вопросы для подготовки: https://docs.google.com/document/d/1xnUVW7ZPd0q5DkscOa6reqmSJRfnALprhI8TYUNIRMo/edit?usp=sharing
На контрольной будет 4 вопроса. Два из них — по теории, где нужно будет объяснить одну из тем, разобранных на лекциях, или ответить на вопросы на понимание. Два вопроса — это задачи, примеры приведены ниже (но это просто для тренировки, список не исчерпывающий).
Примеры задач:
- Метрические методы, kNN [Примеры задач]
- Линейные методы [Примеры задач]
- Решающие деревья [Примеры задач]
- Метрики качества [Примеры задач]
За КР всем 10!
Экзамен
Полезные материалы
Курсы по машинному обучению и анализу данных
Максимально близко к материалам курса: Курс "Основы машинного обучения"
Для тех, кто хочет подтянуть математику: Специализация "Математика для анализа данных" (сейчас в процессе переноса на online.hse.ru)
Более сложная версия этого курса с ПМИ: Машинное обучение 1
Ещё материалы:
- Курс по машинному обучению К.В. Воронцова
- Видеозаписи лекций курса Школы Анализа Данных, К.В. Воронцов
- Coursera: Machine Learning, Andrew Ng
Статьи
- An Introduction to Machine Learning Theory and Its Applications: A Visual Tutorial with Examples
- A Visual Introduction to Machine Learning
Книги
- Mohammed J. Zaki, Wagner Meira Jr. Data Mining and Analysis. Fundamental Concepts and Algorithms. Cambridge University Press, 2014.
- James, Witten, Hastie, Tibshirani. An Introduction to Statistical Learning. 2013.