Байесовские методы машинного обучения 2018
Лектор: Дмитрий Петрович Ветров
Семинаристы: Екатерина Лобачева, Кирилл Неклюдов
Контакты: по всем вопросам, связанным с курсом, просьба писать на bayesml@gmail.com. В название письма обязательно добавлять [ФКН БММО18]. Письма без этого тега могут просто не дойти до преподавателей! Информация о чате и энитаске для сдачи заданий будет позднее.
У курса есть чат в телеграме. Все объявления по курсу будут вывешиваться именно в чате! Всем студентам будет отправлена ссылка на него на почту. Преподаватели в чате бывают, но не всегда. По всем важным вопросам стоит писать на почту.
Содержание
Краткое описание
Курс посвящен т.н. байесовским методам решения различных задач машинного обучения (классификации, восстановления регрессии, уменьшения размерности, разделения смесей, тематического моделирования и др.), которые в настоящее время активно развиваются в мире. Большинство современных научных публикаций по машинному обучению используют вероятностное моделирование, опирающееся на байесовский подход к теории вероятностей. Последний позволяет эффективно учитывать различные предпочтения пользователя при построении решающих правил прогноза. Кроме того, он позволяет решать задачи выбора структурных параметров модели. В частности, здесь удается решать без комбинаторного перебора задачи селекции признаков, выбора числа кластеров в данных, размерности редуцированного пространства при уменьшении размерности, значений коэффициентов регуляризации и пр. В байесовском подходе вероятность интерпретируется как мера незнания, а не как объективная случайность. Простые правила оперирования с вероятностью, такие как формула полной вероятности и формула Байеса, позволяют проводить рассуждения в условиях неопределенности. В этом смысле байесовский подход к теории вероятностей можно рассматривать как обобщение классической булевой логики.
Основной задачей курса является привитие студентам навыков самостоятельного построения сложных вероятностных моделей обработки данных, используя стандартные модели в качестве своеобразных "кирпичиков". Особое внимание уделяется приближенным байесовским методам, позволяющим обсчитывать сложные вероятностные модели.
Новости
- 20.09.18 - Выложена формулировка первого практического задания. Срок сдачи - 5 октября 23:00.
- 27.09.18 - Выложена формулировка первого теоретического задания. Срок сдачи - 4 октября 23:00.
- 13.10.18 - Выложена формулировка второго теоретического задания. Срок сдачи - 20 октября 23:00.
- 13.10.18 - Выложена формулировка первой лабораторной работы. Срок сдачи - 27 октября 23:00.
- 02.11.18 - Выложена формулировка второго практического задания. Срок сдачи - 17 ноября 23:00.
- 08.11.18 - Выложена формулировка третьего теоретического задания. Срок сдачи - 15 ноября 23:00.
Отчётность по курсу и критерии оценки
В курсе предусмотрено несколько форм контроля знания:
- 2 практических домашних задания
- 3 теоретических домашних задания
- 4 домашних лабораторных работы
- устный экзамен
Результирующая оценка по дисциплине рассчитывается по формуле
O_итог = 0.7 * O_накопл + 0.3 * O_экз
Накопленная и итоговая оценки округляются арифметически. Накопленная оценка рассчитывается по формуле
O_накопл = 3/7 * O_практ + 4/49 * (3 * O_теор + 4 * О_лаб)
Эта формула выглядит страшно, но на деле она просто означает, что за практические работы можно заработать 3 балла в итоговую оценку, а за теоретические и лабораторные вместе - 4 балла. Оценка за каждый тип заданий рассчитывается как среднее по всем заданиям данного типа. Каждое задание и экзамен оцениваются по 10-балльной шкале (по заданиям допускается дробная оценка). За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания.
Домашние задания
- В рамках курса предполагается выполнение двух практических заданий, трёх теоретических домашних заданий и четырёх лабораторных работ. Задания сдаются в системе anytask. Для получения инвайта по курсу просьба писать на почту курса.
- Все практические задания и лабораторные сдаются на Python 3. Код практических заданий должен быть обязательно предварительно сдан в систему ejudge. Формат логина в ejudge должен быть следующий: hse_ + первая буква имени + фамилия. Пример: hse_elobacheva. Конфигурация сервера проверки кода в ejudge: python==3.5.3, numpy==1.14.5, scikit-learn==0.19.2, scipy==1.1.0.
- Задания выполняются самостоятельно. Если задание обсуждалось сообща, или использовались какие-либо сторонние коды и материалы, то об этом должно быть написано в отчете. В противном случае „похожие“ решения считаются плагиатом и все задействованные студенты (в том числе те, у кого списали) будут сурово наказаны.
- Практические задания оцениваются из 10 баллов. За сдачу заданий позже срока начисляется штраф в размере 0.3 балла за каждый день просрочки, но суммарно не более 6 баллов.
- Теоретические задания и лабораторные работы также оцениваются из 10 баллов. За сдачу заданий позже срока начисляется штраф в размере 0.3 балла за каждый день просрочки. Решения не принимаются к проверке спустя неделю после срока.
Примерные даты выдачи домашних заданий (они могут быть изменены!):
- Практическая работа -- 20 сентября, 1 ноября
- Лабораторная работа -- 11 октября, 22 ноября, 29 ноября, 6 декабря
- Теоретическое задание -- 27 сентября, 11 октября, 8 ноября
Окончательный дедлайн по всем заданиям — 20 декабря 23:00. Домашние задания, присланные позднее, к концу семестра, скорее всего, проверены не будут.
Экзамен
Экзамен пройдет 24 декабря в 13:00.
Если вы НЕ планируете прийти на экзамен и вас устраивает оценка 0 за него, то нужно мне об этом написать, иначе вам будет выставлена неявка.
Билеты к экзамену
При подготовке ответа на экзамене разрешается пользоваться любыми материалами. При непосредственном ответе ничем пользоваться нельзя. Просьба обратить внимание на теоретический минимум по курсу — незнание ответов на вопросы теор. минимума автоматически влечёт неудовлетворительную оценку за экзамен. На экзамене дается час на подготовку ответа на билет, после чего вы отвечаете экзаменатору на вопросы из теоретического минимума, рассказываете билет, отвечаете на дополнительные вопросы по курсу и решаете задачи.
Расписание занятий
Занятие | Дата | Название | Материалы |
---|---|---|---|
1 | 6, 20 сентября | Лекция и семинар: Байесовский подход к теории вероятностей, примеры байесовских рассуждений. | лекция (презентация), лекция(конспект), лекция (саммари), семинар(задачи), семинар(конспект) |
2 | 20, 27 сентября | Лекция и семинар: Аналитический байесовский вывод, сопряжённые распределения, экспоненциальный класс распределений, примеры. | лекция(конспект), семинар(задачи) семинар(конспект) |
3 | 27 сентября, 4 октября | Лекция и семинар: Задача выбора модели по Байесу, принцип наибольшей обоснованности, примеры выбора вероятностной модели. | лекция(презентация), лекция(конспект), семинар(задачи), семинар(конспект) |
4 | 4, 11 октября | Лекция и семинар: Метод релевантных векторов для задачи регрессии, автоматическое определение значимости. Матричные вычисления. |
лекция(презентация), лекция(конспект), семинар(задачи 1 с разбором), семинар(задачи 2 с разбором) |
5 | 11, 18 октября | Лекция и семинар: Метод релевантных векторов для задачи классификации, приближение Лапласа. | лекция(саммари), лекция(конспект), семинар(задачи), семинар(конспект) |
6 | 18 октября, 1 ноября | Лекция и семинар: Обучение при скрытых переменных, ЕМ-алгоритм в общем виде, байесовская модель метода главных компонент. | лекция, лекция(конспект), семинар(задачи), семинар(конспект) |
7 | 1, 8 ноября | Лекция и семинар: Вариационный подход для приближённого байесовского вывода. | лекция, лекция (саммари), лекция(конспект),(задачи), семинар(конспект) |
8 | 8, 15 ноября | Лекция и семинар: Методы Монте-Карло с марковскими цепями (MCMC). | лекция, семинар(задачи) |
9 | 15, 22 ноября | Лекция и семинар: Гибридный метод Монте-Карло с марковскими цепями и его масштабируемые обобщения. | Hamiltonian dynamics, Langevin Dynamics, семинар(задачи) |
10 | 22, 29 ноября | Лекция и семинар: Гауссовские процессы для регрессии и классификации. | материалы лекции изложены в разделе 6.4 Бишопа, семинар(задачи), семинар(конспект) |
11 | 29 ноября, 6 декабря | Лекция и семинар: Модель LDA для тематического моделирования. | лекция, семинар(конспект), Статья по HDP |
12 | 13 декабря | Лекция: Стохастический вариационный вывод. Вариационный автокодировщик. | статья 1, статья 2 |
Замечание: рукописные конспекты лекций и семинаров это в первую очередь заметки лектора и семинаристов, а не материалы по курсу. В них могут содержать неточности!
Рекомендуемая литература
- Barber D. Bayesian Reasoning and Machine Learning. Cambridge University Press, 2012.
- Murphy K.P. Machine Learning: A Probabilistic Perspective. The MIT Press, 2012.
- Bishop C.M. Pattern Recognition and Machine Learning. Springer, 2006.
- Mackay D.J.C. Information Theory, Inference, and Learning Algorithms. Cambridge University Press, 2003.
- Tipping M. Sparse Bayesian Learning. Journal of Machine Learning Research, 1, 2001, pp. 211-244.
- Шумский С.А. Байесова регуляризация обучения. В сб. Лекции по нейроинформатике, часть 2, 2002.
Полезные ссылки
Сайт одноименного курса, читаемого на ВМК МГУ.
Сайт группы Байесовских методов.
Простые и удобные заметки по матричным вычислениям и свойствам гауссовских распределений.
Памятка по теории вероятностей.