Машинное обучение на матфаке 2018/2019

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

О курсе

Курс читается для студентов факультета математики ВШЭ в 1-2 модулях.

Лектор: Щуров Илья Валерьевич

Лекции проходят по вторникам с 14:00 до 15:20 в аудитории 109.

Полезные ссылки

Семинары

Группа Преподаватель Учебный ассистент Расписание Инвайт в Anytask
1 Евгения Ческидова Константин Ваниев вторник, 12:10-13:30, ауд. 318 ZfhBpf1
2 Евгений Ковалев Соня Дымченко суббота, 12:00-13:20, ауд. 318 5jOWWt9

Система оценок

Формула оценки

Результирующая оценка по дисциплине рассчитывается по формуле:

Oитог = 0.7 * Oнакопл + 0.3 * Oэкз

Накопленная оценка рассчитывается по формуле:

Oнакопл = 0.58 * Oдз + 0.42 * OКР

Лекции

Дата Название Конспект Видео
1 4 сентября Введение в ml, постановки задач, виды данных
2 11 сентября Напоминание: теория вероятностей и статистика. Случайные величины, выборки, оценки конспект
3 18 сентября Введение в статистическую теорию принятия решений. Функция потерь, ожидаемая ошибка, регрессионная функция конспект
4 25 сентября Шум, смещение и разброс конспект видео
5 2 октября Линейная регрессия. MLE-оценки. Максимизация правдоподобия и минимизация эмпирического риска. Явный вид МНК-оценки конспект видео
6 9 октября Свойства МНК-оценки. Несмещённость. Ковариационная матрица оценки. Теорема Гаусса — Маркова. Отбор признаков конспект видео
7 16 октября Различные функции потерь для регрессий: MAE, Huber loss; L1-регуляризация как метод отбора признаков; переобучение в линейной регрессии (пример с полиномиальными признаками). Логистическая регрессия с одним признаком, её функция правдоподобия. Конспекты Е. Соколова: Ещё о линейных регрессиях, логистическая регрессия
8 30 октября Логистическая регрессия. Логарифмическая функция потерь. Выражение функции потерь через отступ. Многоклассовая классификация: комбинирование двухклассовых классификаторов (one vs rest, one vs one), многоклассовая (мультиномиальная) логистическая регрессия. Конспекты Е. Соколова: логистическая регрессия, многоклассовая классификация
9 6 ноября Support vector machines (как задача уменьшения эмпирического риска для hinge loss). Решающие деревья. Конспекты Е. Соколова: метод опорных векторов (см. часть 2), решающие деревья
10 13 ноября Решающие леса и градиентный бустинг над деревьями Конспекты Е. Соколова решающие леса, градиентный бустинг (мы не обсуждали AdaBoost)
11 20 ноября Нейронные сети как способ обучения признаков. Многослойный персептрон. Теорема об универсальной аппроксимации для персептрона с двумя скрытыми слоями и ReLU-активацией (набросок доказательства). Backpropagation. Стохастический градиентный спуск Конспекты Е. Соколова: Графы вычислений и элементы глубинного обучения. Дополнительный материал: теорема об универсальной аппроксимации (англ.)
12 27 ноября Свёрточные нейронные сети Конспекты Е. Соколова: Графы вычислений и элементы глубинного обучения, Дополнительный материал: convolutional networks (англ.)
13 4 декабря Рекуррентные нейронные сети. Задачи unsupervised learning: снижение размерности с помощью метода главных компонент (PCA) Метод главных компонент (неформальное введение)
14 11 декабря Задачи unsupervised learning: снижение размерности, кластеризация (K-means, иерархическая кластеризация), оценка плотности (разделение гауссовых смесей, EM-алгоритм). K-means clustering (википедия, англ.), The EM Algorithm for Gaussian Mixtures] (англ.)

Семинары

Дата Название Материалы
1 8/10 сентября Введение в numpy, pandas, matplotlib Тетрадка и данные Задачи
2 15/17 сентября Статистические оценки, проверка гипотез Все файлы: (Google Drive, Github), тетрадка
3 22/24 сентября метод k ближайших соседей (k-NN), кросс-валидация Все файлы: (Google Drive, Github), тетрадка
4 29/1 сент/окт метод k ближайших соседей, часть 2 Все файлы: (Google Drive, Github)
5 6/8 октября линейная регрессия, градиентный спуск Все файлы: (Google Drive, Github)
6 13/15 октября отбор признаков, регуляризация Все файлы: (Google Drive, Github}
7 20/30 октября логистическая регрессия, метрики, полиномиальные признаки Все файлы: (Google Drive, Github)
8 3/6 ноября методы автоматической обработки текстов, TF-IDF Все файлы: (Google Drive, Github)
9 10/13 ноября решающие деревья Все файлы: (Google Drive, Github)
10 20/24 ноября ансамбли, градиентный бустинг Все файлы: (Google Drive, Github)
11 24/27 ноября нейронные сети, PyTorch Все файлы: (Google Drive, Github, Colab)
12 1/4 декабря сверточные нейронные сети, регуляризация Все файлы: (Google Drive, Github)
13 8/11 декабря рекуррентные нейронные сети Все файлы: (Google Drive, Github)

Как корректно скачать файл с расширением .ipynb с GitHub?

Домашние задания

  • ДЗ№1: nbviewer, github, срок сдачи — 3 октября, 23:00.
  • ДЗ№2: nbviewer, github, срок сдачи — 17 октября, 23:00.
  • ДЗ№3: nbviewer, github , срок сдачи — 4 ноября, 23:00.
  • Соревнование на Kaggle, срок сдачи 15.12.2018 23:59UTC
  • ДЗ№4: nbviewer, github, срок сдачи — 23 декабря, 23:00.

Соревнования

Правила участия и оценивания:

  1. Необходимо использовать следующий формат для имени команды (Team -> Team Name -> Save Team Name): «Имя Фамилия МФ».
  2. Максимальное количество посылок в сутки 3 (начинайте заранее).
  3. Ближе к концу соревнования необходимо выбрать 1 посылку, которую вы считаете лучшей.
  4. Оценивание: максимальный score, набранный кем бы то ни было (при условии преодоления бейзлайна на 8) — 10 баллов. Score, соответствующий бейзлайну на 8 — 8 баллов. В промежутке — линейно. И т.д. Основные бейзлайны скоро будут. Лидерборд рассматривается приватный.
  5. Оцениваются только решения, полученные как результат работы private kernel -- в системе уже загружены всевозможные библиотеки, которые могут вам понадобиться в работе, более того можно не выгружать данные соревнования и иметь бо́льшие (а может быть и меньшие, но у всех равные условия) вычислительные мощности, чем у вас на компьютере (14Gb RAM + GPU).
  6. У студента может быть только один аккаунт, соответсвенно и отправлять решения только с него.
  7. Как и в прошлых ДЗ -- списывание запрещено, при обнаружении плагиата работы обнуляются.
  8. Продление дедлайна невозможно.

В соревновании оцениваются только решения, полученные как результат работы private kernel (Kernels -> New Kernel -> пишете код там или загружаете свой код -> Commit). После того, как кернел был закоммичен, можно отправить результат его выполненения нажав кнопку "Submit to competition".

без рамки

Чтобы работа была оценена, необходимо дать доступ для просмотра ассистенту (svdcvt). Сдавать нужно тот кернел, с помощью которого был получен ваш результат на лидерборде, иначе работа обнуляется. Так же надо указать версию в названии кернела.

без рамки

Новости курса

12.12. Экзамен по курсу состоится 25 декабря с 13:30 до 15:30, формат — письменная работа (типа как была в конце прошлого модуля), closed book (пользоваться ничем нельзя). Программа экзамена

29.11. Появилось соревнование на кэггле: https://www.kaggle.com/t/9c050ce0ed5742088d5660c69360ccbf

23.11. Субботняя группа - завтра будет две пары не с 10:30 до 13:30, а с 12:00 до 15:00.

13.11. Новости для группы, которая ходит на семинары по субботам. В эту субботу (17.11) семинар не состоится, да и вообще факультет математики, видимо, будет закрыт. Пара переносится на субботу на следующей неделе (24.11). Таким образом, 24.11 будет две пары с 10:30 до 13:30.

18.10. Появилось ДЗ№3 (оно же — задачи для подготовки к КР).

16.10. В понедельник, 22 октября в 10:30 состоится консультация в кабинете 318 (компокласс).

15.10. Контрольная по курсу состоится 23.10 с 13:30 до 15:30 в аудитории 109. Программа контрольной

11.10. Семинары группы 1 (в понедельник) перенесены теперь на вторник с 12:00 до 13:20.

10.10. Появилось ДЗ№2!

24.09. Появилось ДЗ№1!

Полезные материалы

Базовые учебники

  1. Hastie T., Tibshirani R, Friedman J. The Elements of Statistical Learning (2nd edition). Springer, 2009.
  2. Bishop C. M. Pattern Recognition and Machine Learning. Springer, 2006.

Дополнительная литература

  1. Ian Goodfellow and Yoshua Bengio and Aaron Courville, Deep Learning, MIT Press, 2016.
  2. Mohri M., Rostamizadeh A., Talwalkar A. Foundations of Machine Learning. MIT Press, 2012.
  3. Murphy K. Machine Learning: A Probabilistic Perspective. MIT Press, 2012.
  4. Mohammed J. Zaki, Wagner Meira Jr. Data Mining and Analysis. Fundamental Concepts and Algorithms. Cambridge University Press, 2014.

Разные хорошие ссылки

  1. Об условных вероятностях.
  2. Mathematics for Machine Learning — книга с математическим введением в машинное обучение. Вам могут быть особенно интересно главы про теорию вероятностей.