Основы машинного обучения/2023
Содержание
О курсе
Курс читается для студентов 2-го курса майнора ИАД в 3-4 модулях.
Проводится с 2015 года.
Лектор: Соколов Евгений Андреевич
Лекции проходят онлайн по средам в 13:00 в zoom.
Полезные ссылки
Репозиторий с материалами на GitHub
Почта для сдачи домашних заданий (на самом деле задания сдаются в AnyTask, но если он не работает, то присылайте на почту): hse.minor.dm+<номер группы>@gmail.com (например, hse.minor.dm+3@gmail.com)
Канал в telegram для объявлений: https://t.me/hse_iad_2023
Чат в telegram (флудилка): https://t.me/+rnVX7uhGa71kZTBi (но рекомендуем в начале задавать вопросы в чате вашей группы)
Ссылка на курс в Anytask: https://anytask.org/course/1004
Таблица с оценками: https://docs.google.com/spreadsheets/d/1s8f-IpiWjsIhdPotECDLfyd20kCE7IkL-5mGRLpqFFg/edit?usp=sharing
Семинары
Группа | Преподаватель | Учебные ассистенты | Zoom | Время | Чат | Папка с видео | Инвайт в anytask |
---|---|---|---|---|---|---|---|
ИАД-1 | Масликов Егор | Казюлина Марина,Лапшина Ксения,Масленникова Света | Zoom | 14:40-16:00 | Чат | Папка | KHsSxag |
ИАД-2 | Кантонистова Елена | Червяков Артем,Сухоруков Георгий | Zoom | 11:10-12:30 | Чат | Папка | wECwKet |
ИАД-3 | Косарев Илья | Шерман Ксения, Смоленчук Иван | Zoom | 11:10-12:30 | Чат | Папка | aBaXcyU |
ИАД-4 | Семенкин Антон | Малышева Дарья,Аксенов Антон | Zoom | 11:10-12:30 | Чат | Папка | HR0n7Jc |
ИАД-5 | Коган Александра | Исмаилов Исмаил,Трофименко Илья | Zoom | 11:10-12:30 | Чат | Папка | kudM9FO |
ИАД-6 | Никифоров Михаил | Захаров СергейХамрин Роман | Zoom | 09:30-10:50 | Чат | Папка | JWLBqQ2 |
ИАД-7 | Нарцев Андрей | Дядюнов Андрей,Хамрин Роман | Zoom | 10:00-11:20 | Чат | Папка | X5gYB8v |
ИАД-8 | Егоров Андрей | Горевой Никита, Полтавец Роман | Zoom | 19:30-21:00 | Чат | Папка | 776AgmZ |
ИАД-9 | Шмонов Михаил | Устименко Николай,Моисеева Анастасия, Климов Данила | Zoom | 14:40-16:00 | Чат | Папка | dY3CvHn |
ИАД-10 | Шмонов Михаил | Устименко Николай,Моисеева Анастасия, Климов Данила | Zoom | 16:20-17:40 | Чат | Папка | 5MoBk7M |
Правила выставления оценок
В курсе предусмотрено несколько форм контроля знания:
- Проверочные работы на лекциях, проверяющие знание основных фактов с лекций и семинаров
- Практические домашние работы на Python
- Контрольная где-то в середине курса
- Письменный экзамен
Итоговая оценка вычисляется на основе оценки за работу в семестре и оценки за экзамен:
Oитоговая = Округление(0.4 * ДЗ + 0.1 * ПР + 0.2 * КР + 0.3 * Э)
Округление арифметическое.
Автоматы
Если у вас накопленная оценка >= 5.5 баллов и за контрольную >= 5.5 баллов, то вы можете перенести эту накопленную в итоговую. Или, если хотите, можете отказаться и пойти на экзамен. Но по умолчанию всем, кто может получить автомат, мы ставим автомат.
Накопленная оценка считается по формуле: (0.4 * ДЗ + 0.1 * ПР + 0.2 * КР) / 0.7.
В критериях на автомат все оценки считаются без округления.
Правила сдачи заданий
За каждый день просрочки после мягкого дедлайна снимается 1 балл. После жёсткого дедлайна работы не принимаются. Даже при опоздании на одну секунду. Сдавайте заранее.
Два раза студент может сдать домашнее задание после мягкого дедлайна (но до жёсткого) без штрафов.
При обнаружении плагиата оценки за домашнее задание обнуляются всем задействованным в списывании студентам, а также подаётся докладная записка в деканат. Следует помнить, что при повторном списывании деканат имеет право отчислить студента.
При наличии уважительной причины пропущенную проверочную можно написать позднее, а дедлайн по домашнему заданию может быть перенесён. Дедлайн по домашнему заданию переносится на количество дней, равное продолжительности уважительной причины. Решение о том, является ли причина уважительной, принимает исключительно учебный офис.
Лекции
Лекция 1 (18.01.2023). Введение в машинное обучение и анализ данных. [Слайды] [Запись лекции]
Лекция 2 (25.01.2023). Виды задач и виды признаков. Метод k ближайших соседей для классификации. Вычисление расстояний для числовых данных. [Слайды] [Запись лекции]
Лекция 3 (01.02.2023). Измерение ошибки в задачах классификации. Обобщающая способность. Проверка обобщающей способности: отложенная выборка и кросс-валидация. Метод k ближайших соседей. [Слайды] [Запись лекции]
Лекция 4 (08.02.2023). Модель линейной регрессии. Подготовка данных для линейной регрессии. MSE для линейной регрессии в матричной форме. [Слайды] [Запись лекции]
Лекция 5 (15.02.2023). Модель линейной регрессии. Подготовка данных для линейной регрессии. Переобучение и регуляризация линейных моделей. [Слайды] [Запись лекции]
Лекция 6 (22.02.2023). Линейная регрессия и градиентный спуск.[Слайды] [Запись лекции]
Лекция 7 (01.03.2023). Функции потерь в регрессии. Линейная классификация. [Слайды] [Запись лекции]
Лекция 8 (15.03.2023). Линейная классификация. [Слайды] [Запись лекции]
Лекция 9 (22.03.2023). Метрики качества классификации. [Слайды] [Запись лекции]
Лекция 10 (05.04.2023). Логистическая регрессия и метод опорных векторов [Слайды] [Запись лекции]
Лекция 11 (12.04.2023). Метод опорных векторов, многоклассовая классификация [Слайды] [Запись лекции]
Лекция 12 (19.04.2023). Решающие деревья [Слайды] [Запись лекции]
Лекция 13 (26.04.2023). Решающие деревья. Композиции моделей. [Слайды] [Запись лекции]
Лекция 14 (10.05.2023). Градиентный бустинг. [Слайды] [Запись лекции]
Лекция 15 (17.05.2023). Градиентный бустинг. (продолжение). Отбор признаков.[Слайды] [Запись лекции]
Лекция 16 (31.05.2023). Кластеризация. [Слайды] [Запись лекции]
Лекция 17 (07.06.2023). Отбор признаков [Слайды] [Запись лекции]
Лекция 18 (14.06.2023). Ранжирование [Слайды] [Запись лекции]
Семинары
Семинар 1 (25.01.2023). Немного про Jupyter notebook и numpy [Ноутбук]
Семинар 2 (01.02.2023). Объектно-ориентированное программирование [Ноутбук]
Семинар 3 (08.02.2023). pandas [Ноутбук]
Семинар 4 (15.02.2023). Визуализация данных [Ноутбук]
Семинар 5 (22.02.2023). Введение в sklearn KNN [Ноутбук]
Семинар 6 (01.03.2023). Линейная регрессия [Ноутбук]
Семинар 7 (15.03.2023). Градиентный спуск [Ноутбук]
Семинар 8 (22.03.2023). Бинарная линейная классификация [Ноутбук]
Семинар 9 (05.04.2023). Логистическая регрессия. SVM. ROC-кривая [Ноутбук]
Семинар 10 (12.04.2023). Калибровка вероятностей [Ноутбук]
Семинар 11 (19.04.2023). Обработка текстов: токенизация, лемматизация, стемминг. Bag-of-words и TF-IDF. Регулярные выражения. [Ноутбук]
Семинар 12 (26.04.2023). Решающие деревья [Ноутбук]
Семинар 13 (10.06.2023). Bias-Variance decomposition, бэггинг и случайные леса [Ноутбук]
Семинар 14 (17.06.2023). Бустинг. Часть 1 (Идея подхода, функции потерь, особенности GB) [Ноутбук]
Семинар 15 (31.06.2023). Бустинг. Часть 2 (Различные реализации бустинга) [Ноутбук]
Семинар 16 (07.06.2023). Кластеризация [Ноутбук]
Семинар 17 (14.06.2023). Отбор признаков [Ноутбук]
Консультации
20 июня в 18:00 Консультация к экзамену [Запись]
Практические задания
За каждый день просрочки после мягкого дедлайна снимается 1 балл. После жёсткого дедлайна работы не принимаются, но есть исключение. Студенту разрешается два раза сдать домашнее задание после мягкого дедлайна (но до жёсткого) без штрафов.
Практическое задание 1 - numpy Мягкий дедлайн: 01.02.2023 23:59 МСК, Жесткий дедлайн: 06.02.2023 23:59 МСК. [Ноутбук]
Практическое задание 2 - pandas Мягкий дедлайн: 16.02.2023 23:59 МСК, Жесткий дедлайн: 19.02.2023 23:59 МСК. [Ноутбук]
Практическое задание 3 - EDA Мягкий дедлайн: 02.03.2023 23:59 МСК, Жесткий дедлайн: 07.03.2023 23:59 МСК. [Ноутбук]
Практическое задание 4 - kNN, linreg Мягкий дедлайн: 23.03.2023 23:59 МСК, Жесткий дедлайн: 29.03.2023 23:59 МСК. [Ноутбук]
Практическое задание 5 - Градиентный спуск Мягкий дедлайн: 20.04.2023 23:59 МСК, Жесткий дедлайн: 27.04.2023 23:59 МСК. [Ноутбук]
Практическое задание 6 - Классификация текстов Мягкий дедлайн: 13.05.2023 23:59 МСК, Жесткий дедлайн: 19.05.2023 23:59 МСК. [Ноутбук]
Практическое задание 7 - Деревья. Случайный лес Мягкий дедлайн: 01.06.2023 23:59 МСК, Жесткий дедлайн: 07.06.2023 23:59 МСК. [Ноутбук]
Практическое задание 8 (Бонус) - Градиентный бустинг Жесткий дедлайн: 25.06.2023 23:59 МСК. [Ноутбук]
Контрольная работа
Контрольная работа состоится 24 мая.
Вопросы для подготовки: https://docs.google.com/document/d/1ZSg_fwKwtXC0DroaaRoiCiT1kkhC0RhdirnKCZKtpcM/edit
Экзамен
Вопросы для подготовки к экзамену
21 июня (среда) в 11:00 мы пишем экзамен. Он будет длиться 2 часа (120 минут), все будет в Зуме, правила действуют такие же, как и на контрольной.
Полезные материалы
Курсы по машинному обучению и анализу данных
Максимально близко к материалам курса: Курс "Основы машинного обучения"
Для тех, кто хочет подтянуть математику: Специализация "Математика для анализа данных" (сейчас в процессе переноса на 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.