Машинное обучение (курс лекций, К.В.Воронцов)

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(обновление презентаций 1й семестр)
м (Критерии выбора моделей и методы отбора признаков)
(17 промежуточных версий не показаны.)
Строка 31: Строка 31:
=== Замечания для студентов ===
=== Замечания для студентов ===
-
* Осенью 2021 года курс читается в дистанционном режиме.
+
* Весной 2022 года курс читается в дистанционном режиме.
-
** [https://us06web.zoom.us/j/82309900360?pwd=blJDaGU5OERJMkVHSzQyT2RxUEYvUT09 Ссылка на Zoom для 4-го курса ] {{Важно|Обновлено: 2021-09-03}}
+
** [https://m1p.org/go_zoom Ссылка на Zoom для 3-го курса МФТИ] {{Важно|Обновлено: 2022-03-10}}
 +
** [https://us06web.zoom.us/j/81766985440?pwd=UWdrbk5OYVhFdm1Jczlsc0lpZTBkQT09 Ссылка на Zoom для 4-го курса МФТИ] {{Важно|Обновлено: 2022-02-04}}
* [https://github.com/andriygav/MachineLearningSeminars/blob/master/README.rst Ссылка на семинары для студентов МФТИ]
* [https://github.com/andriygav/MachineLearningSeminars/blob/master/README.rst Ссылка на семинары для студентов МФТИ]
* [https://ya-r.ru/2020/05/07/vorontsov-kurs-mashinnoe-obuchenie-2019-shkola-analiza-dannyh/ Видеолекции ШАД Яндекс]. {{Важно|Обновлено: 2019 год}}
* [https://ya-r.ru/2020/05/07/vorontsov-kurs-mashinnoe-obuchenie-2019-shkola-analiza-dannyh/ Видеолекции ШАД Яндекс]. {{Важно|Обновлено: 2019 год}}
Строка 39: Строка 40:
* О найденных ошибках и опечатках [[Служебная:EmailUser/Vokov|сообщайте мне]]. — ''[[Участник:Vokov|К.В.Воронцов]] 18:24, 19 января 2009 (MSK)''
* О найденных ошибках и опечатках [[Служебная:EmailUser/Vokov|сообщайте мне]]. — ''[[Участник:Vokov|К.В.Воронцов]] 18:24, 19 января 2009 (MSK)''
* Материал, который есть в pdf-тексте, но не рассказывался на лекциях, обычно не входит в программу экзамена.
* Материал, который есть в pdf-тексте, но не рассказывался на лекциях, обычно не входит в программу экзамена.
-
* Короткая ссылка на эту страницу: [https://bit.ly/1bCmE3Z https://bit.ly/1bCmE3Z].
+
* Короткая ссылка на эту страницу: [https://bit.ly/ML-Vorontsov bit.ly/ML-Vorontsov].
= Семестр 1. Математические основы машинного обучения =
= Семестр 1. Математические основы машинного обучения =
Строка 46: Строка 47:
== Основные понятия и примеры прикладных задач ==
== Основные понятия и примеры прикладных задач ==
-
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF, 1,4 МБ)]] {{важно|— обновление 08.10.2021}}.
+
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF, 1,7 МБ)]] {{важно|— обновление 02.09.2022}}.
Видеозапись: [https://youtu.be/xccjt6lOoow Лекция] [https://youtu.be/bJVI5AIback Семинар]
Видеозапись: [https://youtu.be/xccjt6lOoow Лекция] [https://youtu.be/bJVI5AIback Семинар]
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
Строка 58: Строка 59:
== Линейный классификатор и стохастический градиент ==
== Линейный классификатор и стохастический градиент ==
-
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF, 1,1 МБ)]] {{важно|— обновление 08.10.2021}}.
+
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF, 1,3 МБ)]] {{важно|— обновление 08.09.2022}}.
Видеозапись: [https://youtu.be/thrPR77K-os Лекция] [https://youtu.be/-4pPz5kX4XQ Семинар]
Видеозапись: [https://youtu.be/thrPR77K-os Лекция] [https://youtu.be/-4pPz5kX4XQ Семинар]
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
Строка 79: Строка 80:
== Нейронные сети: градиентные методы оптимизации ==
== Нейронные сети: градиентные методы оптимизации ==
-
Презентация: [[Media:Voron-ML-ANN-slides.pdf|(PDF, 1,4 МБ)]] {{важно|— обновление 08.10.2021}}.
+
Презентация: [[Media:Voron-ML-ANN-slides.pdf|(PDF, 1,4 МБ)]] {{важно|— обновление 17.09.2022}}.
Видеозапись: [https://youtu.be/Wwv-orQPMDg Лекция] [https://youtu.be/6AyE5bzFWQs Семинар]
Видеозапись: [https://youtu.be/Wwv-orQPMDg Лекция] [https://youtu.be/6AyE5bzFWQs Семинар]
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
Строка 93: Строка 94:
== Метрические методы классификации и регрессии ==
== Метрические методы классификации и регрессии ==
-
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF, 3,2 МБ)]] {{важно|— обновление 08.10.2021}}.
+
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF, 3,8 МБ)]] {{важно|— обновление 22.09.2022}}.
Видеозапись: [https://youtu.be/GyOxB2itxnc Лекция] [https://youtu.be/BlPOOpFhhQE Семинар]
Видеозапись: [https://youtu.be/GyOxB2itxnc Лекция] [https://youtu.be/BlPOOpFhhQE Семинар]
* Гипотезы компактности и непрерывности.
* Гипотезы компактности и непрерывности.
Строка 114: Строка 115:
== Метод опорных векторов ==
== Метод опорных векторов ==
-
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF, 1,1 МБ)]] {{важно|— обновление 08.10.2021}}.
+
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF, 1,3 МБ)]] {{важно|— обновление 30.09.2022}}.
Видеозапись: [https://youtu.be/6O4f_sIVffk Лекция] [https://youtu.be/Y--tUWQ5JaY Семинар]
Видеозапись: [https://youtu.be/6O4f_sIVffk Лекция] [https://youtu.be/Y--tUWQ5JaY Семинар]
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
Строка 131: Строка 132:
== Многомерная линейная регрессия ==
== Многомерная линейная регрессия ==
-
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF, 1,2 MБ)]] {{важно|— обновление 08.10.2021}}.
+
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF, 1,1 MБ)]] {{важно|— обновление 13.10.2022}}.
Видеозапись: [https://youtu.be/tCE_vnPoU44 Лекция] [https://youtu.be/t5imStVGC7Y Семинар]
Видеозапись: [https://youtu.be/tCE_vnPoU44 Лекция] [https://youtu.be/t5imStVGC7Y Семинар]
* Задача регрессии, [[многомерная линейная регрессия]].
* Задача регрессии, [[многомерная линейная регрессия]].
Строка 150: Строка 151:
== Нелинейная регрессия ==
== Нелинейная регрессия ==
-
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF, 0,7 MБ)]] {{важно|— обновление 6.11.2021}}.
+
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF, 0,8 MБ)]] {{важно|— обновление 13.10.2022}}.
Видеозапись: [https://youtu.be/A_jzq0Lpgt0 Лекция] [https://youtu.be/WhQT3J1PJfI Семинар]
Видеозапись: [https://youtu.be/A_jzq0Lpgt0 Лекция] [https://youtu.be/WhQT3J1PJfI Семинар]
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
Строка 161: Строка 162:
== Критерии выбора моделей и методы отбора признаков ==
== Критерии выбора моделей и методы отбора признаков ==
Текст лекций: [[Media:Voron-ML-Modeling.pdf|(PDF,&nbsp;330&nbsp;КБ)]].<br/>
Текст лекций: [[Media:Voron-ML-Modeling.pdf|(PDF,&nbsp;330&nbsp;КБ)]].<br/>
-
Презентация: [[Media:Voron-ML-Quality-slides.pdf|(PDF,&nbsp;1,5&nbsp;МБ)]] {{важно|— обновление 6.11.2021}}.
+
Презентация: [[Media:Voron-ML-Quality-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 22.10.2022}}.
Видеозапись: [https://youtu.be/uT_H0SFIwbE Лекция] [https://youtu.be/fdb_cmG6hl8 Семинар]
Видеозапись: [https://youtu.be/uT_H0SFIwbE Лекция] [https://youtu.be/fdb_cmG6hl8 Семинар]
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
Строка 185: Строка 186:
== Логические методы классификации ==
== Логические методы классификации ==
Текст лекций: [[Media:Voron-ML-Logic.pdf|(PDF,&nbsp;625&nbsp;КБ)]].<br/>
Текст лекций: [[Media:Voron-ML-Logic.pdf|(PDF,&nbsp;625&nbsp;КБ)]].<br/>
-
Презентация: [[Media:Voron-ML-Logic-slides.pdf|(PDF,&nbsp;1.8&nbsp;МБ)]] {{важно| — обновление 6.11.2021}}.
+
Презентация: [[Media:Voron-ML-Logic-slides.pdf|(PDF,&nbsp;1.3&nbsp;МБ)]] {{важно| — обновление 22.10.2022}}.
Видеозапись: [https://youtu.be/ntkE5UVSLGw Лекция] <!--[https://youtu.be/OP2rsn478Fk 2020]-->
Видеозапись: [https://youtu.be/ntkE5UVSLGw Лекция] <!--[https://youtu.be/OP2rsn478Fk 2020]-->
[https://youtu.be/Ap55F1IoTfk Семинар]
[https://youtu.be/Ap55F1IoTfk Семинар]
Строка 233: Строка 234:
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
<!---
<!---
-
* ''[[Решающий список]] (комитет старшинства). Алгоритм обучения. Стратегия выбора классов для базовых алгоритмов.''
 
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
-
=== Метод комитетов ===
 
-
* Общее понятие: [[комитет]] системы ограничений. Комитеты большинства, простое и взвешенное голосование (''z,p''-комитеты).
 
-
* Теоремы о существовании комитетного решения.
 
-
* Сопоставление комитета линейных неравенств с нейронной сетью.
 
-
* [[Максимальная совместная подсистема]], [[минимальный комитет]]. Теоремы об ''NP''-полноте задачи поиска минимального комитета.
 
-
* Алгоритм построения комитета, близкого к минимальному. Верхняя оценка числа членов комитета.
 
=== Бустинг алгоритмов ранжирования ===
=== Бустинг алгоритмов ранжирования ===
* Задача ранжирования. Примеры: ранжирование результатов текстового поиска, задача [[Netflix]].
* Задача ранжирования. Примеры: ранжирование результатов текстового поиска, задача [[Netflix]].
Строка 247: Строка 241:
* Двудольная задача. Сведение попарного функционала качества к поточечному.
* Двудольная задача. Сведение попарного функционала качества к поточечному.
=== Взвешенное голосование логических закономерностей ===
=== Взвешенное голосование логических закономерностей ===
-
* Применение алгоритма бустинга [[AdaBoost]] к закономерностям. Критерий информативности в бустинге.
 
* [[Решающий лес]] и бустинг над решающими деревьями. ''[[Алгоритм TreeNet]].''
* [[Решающий лес]] и бустинг над решающими деревьями. ''[[Алгоритм TreeNet]].''
* ''Методы синтеза конъюнктивных закономерностей. Псевдокод: [[алгоритм КОРА]], [[алгоритм ТЭМП]].''
* ''Методы синтеза конъюнктивных закономерностей. Псевдокод: [[алгоритм КОРА]], [[алгоритм ТЭМП]].''
-
* Эвристики, обеспечивающие различность и полезность закономерностей. Построение Парето-оптимальных закономерностей. Выравнивание распределения отступов.
 
* ''[[Чередующиеся решающие деревья]] (alternating decision tree).''
* ''[[Чередующиеся решающие деревья]] (alternating decision tree).''
-
* Примеры прикладных задач: кредитный скоринг, прогнозирование ухода клиентов.
 
=== Алгоритмы вычисления оценок ===
=== Алгоритмы вычисления оценок ===
* [[Принцип частичной прецедентности]]. Структура [[Алгоритмы вычисления оценок|Алгоритмов вычисления оценок]].
* [[Принцип частичной прецедентности]]. Структура [[Алгоритмы вычисления оценок|Алгоритмов вычисления оценок]].
Строка 261: Строка 252:
--->
--->
-
== Оценивание плотности и байесовская классификация ==
+
== Восстановление плотности распределения ==
-
Презентация: [[Media:Voron-ML-BTC-EM-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 29.04.2021}}.
+
Презентация: [[Media:Voron-DE-slides.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 20.11.2021}}.
<!---Видеозапись: [https://youtu.be/hv3a_XOKUXk Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]--->
<!---Видеозапись: [https://youtu.be/hv3a_XOKUXk Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]--->
Видеозапись: [https://youtu.be/ly7v6W9-lB8 Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]
Видеозапись: [https://youtu.be/ly7v6W9-lB8 Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]
-
* Параметрическое оценивание плотности. [[Многомерное нормальное распределение]], геометрическая интерпретация. Выборочные оценки параметров многомерного нормального распределения. Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]]. [[Регуляризация]] ковариационной матрицы.
+
* Параметрическое оценивание плотности. [[Многомерное нормальное распределение]], геометрическая интерпретация.
 +
* Выборочные оценки параметров многомерного нормального распределения. Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]]. [[Регуляризация]] ковариационной матрицы.
 +
* ''Матричное дифференцирование. Вывод оценок параметров многомерного нормального распределения.''
* Непараметрическое оценивание плотности. [[Ядерная оценка плотности Парзена-Розенблатта]]. Одномерный и многомерный случаи.
* Непараметрическое оценивание плотности. [[Ядерная оценка плотности Парзена-Розенблатта]]. Одномерный и многомерный случаи.
-
* [[Смесь распределений]]. [[EM-алгоритм]] как метод простых итераций. Выбор числа компонентов смеси. Пошаговая стратегия. Априорное распределение Дирихле.
+
* [[Смесь распределений]]. [[EM-алгоритм]] как метод простых итераций. Обобщённый EM-алгоритм. Стохастический EM-алгоритм.
 +
* Детали реализации EM-алгоритма. Критерий останова. Выбор начального приближения.
 +
* Выбор числа компонентов смеси. Пошаговая стратегия. Иерархический EM-алгоритм.
 +
 
 +
== Байесовская теория классификации ==
 +
Презентация: [[Media:Voron-ML-BTC-slides.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 27.11.2021}}.
 +
<!---Видеозапись: [https://youtu.be/hv3a_XOKUXk Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]--->
 +
Видеозапись: [https://youtu.be/ly7v6W9-lB8 Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]
* Байесовская теория классификации. Оптимальный байесовский классификатор.
* Байесовская теория классификации. Оптимальный байесовский классификатор.
 +
* Генеративные и дискриминативные модели классификации.
* Наивный байесовский классификатор. Линейный наивный байесовский классификатор в случае экспоненциального семейства распределений.
* Наивный байесовский классификатор. Линейный наивный байесовский классификатор в случае экспоненциального семейства распределений.
 +
* Мультиномиальный наивный байесовский классификатор для классификации текстов.
* [[Метод парзеновского окна]]. Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
* [[Метод парзеновского окна]]. Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
* [[Нормальный дискриминантный анализ]]. [[Квадратичный дискриминант]]. Вид разделяющей поверхности. [[Подстановочный алгоритм]], его недостатки и способы их устранения. [[Линейный дискриминант Фишера]].
* [[Нормальный дискриминантный анализ]]. [[Квадратичный дискриминант]]. Вид разделяющей поверхности. [[Подстановочный алгоритм]], его недостатки и способы их устранения. [[Линейный дискриминант Фишера]].
 +
* ''Связь линейного дискриминанта Фишера с [[метод наименьших квадратов|методом наименьших квадратов]].''
* Смесь многомерных нормальных распределений. [[Сеть радиальных базисных функций]] (RBF) и применение EM-алгоритма для её настройки. Сравнение RBF-сети и SVM с гауссовским ядром.
* Смесь многомерных нормальных распределений. [[Сеть радиальных базисных функций]] (RBF) и применение EM-алгоритма для её настройки. Сравнение RBF-сети и SVM с гауссовским ядром.
<!---
<!---
-
* ''Связь линейного дискриминанта Фишера с [[метод наименьших квадратов|методом наименьших квадратов]].''
 
-
* ''Матричное дифференцирование. Вывод оценок параметров многомерного нормального распределения.''
 
* Жадное добавление признаков в линейном дискриминанте, ''[[метод редукции размерности]] Шурыгина.''
* Жадное добавление признаков в линейном дискриминанте, ''[[метод редукции размерности]] Шурыгина.''
* ''Робастное оценивание. Цензурирование выборки (отсев объектов-выбросов).''
* ''Робастное оценивание. Цензурирование выборки (отсев объектов-выбросов).''
-
== Разделение смеси распределений ==
 
-
Презентация: [[Media:Voron-ML-Bayes2-slides.pdf|(PDF,&nbsp;1,7&nbsp;МБ)]] {{важно|— обновление 27.04.2017}}.
 
-
* Детали реализации EM-алгоритма. Критерий останова. Выбор начального приближения.
 
-
* Обобщённый EM-алгоритм. Стохастический EM-алгоритм. Иерархический EM-алгоритм.
 
-
* Задача кластеризации. [[EM-алгоритм]] и [[Алгоритм k средних]] (k-means).
 
-
* Задача частичного обучения.
 
--->
--->
== Кластеризация и частичное обучение ==
== Кластеризация и частичное обучение ==
-
Презентация: [[Media:Voron-ML-Clustering-SSL-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 7.05.2021}}.
+
Презентация: [[Media:Voron-ML-Clustering-SSL-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 4.12.2021}}.
Видеозапись: [https://youtu.be/Zfm1rxtjKFc Лекция] [https://youtu.be/pobOLM1MVfc Семинар]
Видеозапись: [https://youtu.be/Zfm1rxtjKFc Лекция] [https://youtu.be/pobOLM1MVfc Семинар]
<!--[https://youtu.be/VxedxFC5d2I 2020]-->
<!--[https://youtu.be/VxedxFC5d2I 2020]-->
Строка 316: Строка 311:
= Семестр 2. Прикладные модели машинного обучения =
= Семестр 2. Прикладные модели машинного обучения =
-
== Нейронные сети глубокого обучения ==
+
== Глубокие нейронные сети ==
-
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;3,9&nbsp;МБ)]] {{важно|— обновление 19.02.2021}}.
+
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;4,3&nbsp;МБ)]] {{важно|— обновление 4.02.2022}}.
Видеозапись: [https://youtu.be/x3TKdZi7Mo4 Лекция] [https://youtu.be/_zhKsIze8QU Семинар]
Видеозапись: [https://youtu.be/x3TKdZi7Mo4 Лекция] [https://youtu.be/_zhKsIze8QU Семинар]
Строка 329: Строка 324:
== Нейронные сети с обучением без учителя ==
== Нейронные сети с обучением без учителя ==
-
Презентация: [[Media:Voron-ML-ANN-Unsupervised-slides.pdf|(PDF,&nbsp;2,7&nbsp;МБ)]] {{важно|— обновление 19.02.2021}}.
+
Презентация: [[Media:Voron-ML-ANN-Unsupervised-slides.pdf|(PDF,&nbsp;2,3&nbsp;МБ)]] {{важно|— обновление 11.02.2022}}.
Видеозапись: [https://youtu.be/wfbe2yaXAkI Лекция] [https://youtu.be/wCX-8AiYYzk Семинар]
Видеозапись: [https://youtu.be/wfbe2yaXAkI Лекция] [https://youtu.be/wCX-8AiYYzk Семинар]

Версия 22:50, 28 октября 2022

Содержание

Теория обучения машин (machine learning, машинное обучение) находится на стыке прикладной статистики, численных методов оптимизации, дискретного анализа, и за последние 60 лет оформилась в самостоятельную математическую дисциплину. Методы машинного обучения составляют основу ещё более молодой дисциплины — интеллектуального анализа данных (data mining).

В курсе рассматриваются основные задачи обучения по прецедентам: классификация, кластеризация, регрессия, понижение размерности. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Теоремы в основном приводятся без доказательств.

Все методы излагаются по единой схеме:

  • исходные идеи и эвристики;
  • их формализация и математическая теория;
  • описание алгоритма в виде слабо формализованного псевдокода;
  • анализ достоинств, недостатков и границ применимости;
  • пути устранения недостатков;
  • сравнение и взаимосвязи с другими методами.
  • примеры прикладных задач.

Данный курс расширяет и углубляет набор тем, рекомендованный международным стандартом ACM/IEEE Computing Curricula 2001 по дисциплине «Машинное обучение и нейронные сети» (machine learning and neural networks) в разделе «Интеллектуальные системы» (intelligent systems).

Курс читается

От студентов требуются знания курсов линейной алгебры, математического анализа, теории вероятностей. Знание математической статистики, методов оптимизации и языка программирования Python желательно, но не обязательно.

Курсивом выделен дополнительный материал, который может разбираться на семинарах.

Замечания для студентов

Семестр 1. Математические основы машинного обучения

Текст лекций: (PDF, 3 МБ) — обновление 4.10.2011.

Основные понятия и примеры прикладных задач

Презентация: (PDF, 1,7 МБ) — обновление 02.09.2022. Видеозапись: Лекция Семинар

Линейный классификатор и стохастический градиент

Презентация: (PDF, 1,3 МБ) — обновление 08.09.2022. Видеозапись: Лекция Семинар

Нейронные сети: градиентные методы оптимизации

Презентация: (PDF, 1,4 МБ) — обновление 17.09.2022. Видеозапись: Лекция Семинар

Метрические методы классификации и регрессии

Презентация: (PDF, 3,8 МБ) — обновление 22.09.2022. Видеозапись: Лекция Семинар

Метод опорных векторов

Презентация: (PDF, 1,3 МБ) — обновление 30.09.2022. Видеозапись: Лекция Семинар

  • Оптимальная разделяющая гиперплоскость. Понятие зазора между классами (margin).
  • Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
  • Задача квадратичного программирования и двойственная задача. Понятие опорных векторов.
  • Рекомендации по выбору константы C.
  • Функция ядра (kernel functions), спрямляющее пространство, теорема Мерсера.
  • Способы конструктивного построения ядер. Примеры ядер.
  • SVM-регрессия.
  • Регуляризации для отбора признаков: LASSO SVM, Elastic Net SVM, SFM, RFM.
  • Метод релевантных векторов RVM

Многомерная линейная регрессия

Презентация: (PDF, 1,1 MБ) — обновление 13.10.2022. Видеозапись: Лекция Семинар

Нелинейная регрессия

Презентация: (PDF, 0,8 MБ) — обновление 13.10.2022. Видеозапись: Лекция Семинар

Критерии выбора моделей и методы отбора признаков

Текст лекций: (PDF, 330 КБ).
Презентация: (PDF, 1,6 МБ) — обновление 22.10.2022. Видеозапись: Лекция Семинар

Логические методы классификации

Текст лекций: (PDF, 625 КБ).
Презентация: (PDF, 1.3 МБ) — обновление 22.10.2022. Видеозапись: Лекция Семинар

Факультатив

  • Асимптотическая эквивалентность статистического и энтропийного критерия информативности.

Линейные ансамбли

Текст лекций: (PDF, 1 MБ).
Презентация: (PDF, 1.0 МБ) — обновление 6.11.2021. Видеозапись: Лекция Семинар

Продвинутые методы ансамблирования

Презентация: (PDF, 1.2 МБ) — обновление 22.04.2021. Видеозапись: Лекция Семинар

Восстановление плотности распределения

Презентация: (PDF, 1,1 МБ) — обновление 20.11.2021. Видеозапись: Лекция Семинар

Байесовская теория классификации

Презентация: (PDF, 1,1 МБ) — обновление 27.11.2021. Видеозапись: Лекция Семинар

Кластеризация и частичное обучение

Презентация: (PDF, 1,6 МБ) — обновление 4.12.2021. Видеозапись: Лекция Семинар

  • Постановка задачи кластеризации. Примеры прикладных задач. Типы кластерных структур.
  • Постановка задачи Semisupervised Learning, примеры приложений.
  • Оптимизационные постановки задач кластеризации и частичного обучения.
  • Алгоритм k-средних и ЕМ-алгоритм для разделения гауссовской смеси.
  • Алгоритм DBSCAN.
  • Агломеративная кластеризация, Алгоритм Ланса-Вильямса и его частные случаи.
  • Алгоритм построения дендрограммы. Определение числа кластеров.
  • Свойства сжатия/растяжения и монотонности.
  • Простые эвристические методы частичного обучения: self-training, co-training, co-learning.
  • Трансдуктивный метод опорных векторов TSVM.
  • Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.

Семестр 2. Прикладные модели машинного обучения

Глубокие нейронные сети

Презентация: (PDF, 4,3 МБ) — обновление 4.02.2022. Видеозапись: Лекция Семинар

  • Обоснования глубоких нейронных сетей: выразительные возможности, скорость сходимости при избыточной параметризации.
  • Свёрточные нейронные сети (CNN) для изображений. Свёрточный нейрон. Pooling нейрон. Выборка размеченных изображений ImageNet.
  • ResNet: остаточная нейронная сеть (residual NN). Сквозные связи между слоями (skip connection).
  • Свёрточные сети для сигналов, текстов, графов, игр.
  • Рекуррентные нейронные сети (RNN). Обучение рекуррентных сетей: Backpropagation Through Time (BPTT).
  • Сети долгой кратковременной памяти (Long short-term memory, LSTM).
  • Рекуррентные сети Gated Recurrent Unit (GRU) и Simple Recurrent Unit (SRU).

Нейронные сети с обучением без учителя

Презентация: (PDF, 2,3 МБ) — обновление 11.02.2022. Видеозапись: Лекция Семинар

  • Нейронная сеть Кохонена. Конкурентное обучение, стратегии WTA и WTM.
  • Самоорганизующаяся карта Кохонена. Применение для визуального анализа данных. Искусство интерпретации карт Кохонена.
  • Автокодировщик. Линейный AE, SAE, DAE, CAE, RAE, VAE, AE для классификации, многослойный AE.
  • Пред-обучение нейронных сетей (pre-training).
  • Перенос обучения (transfer learning).
  • Многозадачное обучение (multi-task learning).
  • Самостоятельное обучение (self-supervised learning).
  • Дистилляция моделей или суррогатное моделирование.
  • Обучение с использованием привилегированной информации (learning using priveleged information, LUPI).
  • Генеративные состязательные сети (generative adversarial net, GAN).

Векторные представления текстов и графов

Презентация: (PDF, 1,0 МБ) — обновление 19.02.2021. Видеозапись: Лекция Семинар

  • Векторные представления текста. Гипотеза дистрибутивной семантики.
  • Модели CBOW и SGNS из программы word2vec. Иерархический SoftMax.
  • Модель FastText.
  • Векторные представления графов.
  • Многомерное шкалирование (multidimensional scaling, MDS).
  • Векторное представление соседства (stochastic neighbor embedding, SNE и tSNE).
  • Матричные разложения (graph factorization).
  • Модели случайных блужданий DeepWalk, node2vec.
  • Обобщённый автокодировщик на графах GraphEDM.
  • Представление о графовых нейронных сетях (graph neural network, GNN). Передача сообщений по графу (message passing).

Модели внимания и трансформеры

Презентация: (PDF, 1,1 МБ) — обновление 02.03.2021. Видеозапись: Лекция Семинар

  • Задачи обработки и преобразования последовательностей (sequence to sequence).
  • Рекуррентная сеть с моделью внимания.
  • Разновидности моделей внимания: многомерное, иерархическое, Query–Key–Value, внутреннее (self-attention).
  • Модели внимания на графах (Graph Attention Network). Задача классификации вершин графа.
  • Трансформеры. Особенности архитектуры кодировщика и декодировщка.
  • Критерии обучения и оценивание качества (предобучение). Модель BERT.
  • Прикладные задачи: машинный перевод, аннотирование изображений.
  • Модели внимания и трансформеры для текстов, изображений, графов.

Тематическое моделирование

Презентация: (PDF, 6.3 МБ) — обновление 05.03.2021. Видеозапись: Лекция Семинар

Обучение ранжированию

Презентация: (PDF, 0,8 МБ) — обновление 11.04.2021. Видеозапись: Лекция Семинар

  • Постановка задачи обучения ранжированию. Примеры.
  • Поточечные методы Ранговая регрессия. Ранговая классификация, OC-SVM.
  • Попарные методы: RankingSVM, RankNet, LambdaRank.
  • Списочные методы.
  • Признаки в задаче ранжирования поисковой выдачи: текстовые, ссылочные, кликовые. TF-IDF, Okapi BM25, PageRank.
  • Критерии качества ранжирования: Precision, MAP, AUC, DCG, NDCG, pFound.
  • Глубокая структурированная семантическая модель DSSM (Deep Structured Semantic Model).

Рекомендательные системы

Презентация: (PDF, 0.8 МБ) — обновление 11.04.2021. Видеозапись: Лекция Семинар

  • Задачи коллаборативной фильтрации, транзакционные данные.
  • Корреляционные методы user-based, item-based. Задача восстановления пропущенных значений. Меры сходства.
  • Разреженная линейная модель (Sparse LInear Method, SLIM).
  • Латентные методы на основе матричных разложений. Метод главных компонент для разреженных данных (LFM, Latent Factor Model). Метод стохастического градиента.
  • Неотрицательные матричные разложения NNMF. Метод чередующихся наименьших квадратов ALS. Вероятностный латентный семантический анализ PLSA.
  • Модель с учётом неявной информации (implicit feedback).
  • Автокодировщики для коллаборативной фильтрации.
  • Учёт дополнительных признаковых данных в матричных разложениях и автокодировщиках.
  • Линейная и квадратичная регрессионные модели, libFM.
  • Гиперграфовая транзакционная тематическая модель для учёта дополнительных данных.
  • Измерение качества рекомендаций. Меры разнообразия (diversity), новизны (novelty), покрытия (coverage), догадливости (serendipity).

Поиск ассоциативных правил

Презентация: (PDF, 1.3 МБ) — обновление 7.11.2020. Видеозапись: Лекция Семинар

  • Понятие ассоциативного правила и его связь с понятием логической закономерности.
  • Примеры прикладных задач: анализ рыночных корзин, выделение терминов и тематики текстов.
  • Алгоритм APriori. Два этапа: поиск частых наборов и рекурсивное порождение ассоциативных правил. Недостатки и пути усовершенствования алгоритма APriori.
  • Алгоритм FP-growth. Понятия FP-дерева и условного FP-дерева. Два этапа поиска частых наборов в FP-growth: построение FP-дерева и рекурсивное порождение частых наборов.
  • Общее представление о динамических и иерархических методах поиска ассоциативных правил.

Адаптивные методы прогнозирования

Презентация: (PDF, 0,9 MБ) — обновление 14.12.2019. Видеозапись: Лекция Семинар Видеозапись лекции Евгения Рябенко

Инкрементное и онлайновое обучение

Презентация: (PDF, 0,9 MБ) — обновление 19.04.2021. Видеозапись: Лекция [ Семинар]

  • Задачи инкрементного и онлайнового обучения. Оценивание инкрементного обучения. Кривые обучения.
  • Ленивое обучение (метрические и непараметрические методы). Онлайновый отбор эталонных объектов.
  • Онлайновый наивный байесовский классификатор.
  • Онлайновый градиентный спуск OGD. Алгоритм Perceptron. Алгоритм Passive-Aggressive.
  • Рекуррентный метод наименьших квадратов RLS.
  • Инкрементные решающие деревья ID5R.
  • Онлайновое обучение ансамбля. Алгоритм Hedge, его свойства и интерпретация в задаче портфельного инвестирования.
  • Онлайновое глубокое обучение. Алгоритм Hedge BackProp.
  • Онлайновое обучение новым классам. Проблема катастрофического забывания. Алгоритм iCaRL.

Обучение с подкреплением

Презентация: (PDF, 1.9 МБ) — обновление 19.04.2021. Видеозапись: Лекция Семинар

  • Задача о многоруком бандите. Жадные и эпсилон-жадные стратегии. Метод UCB (upper confidence bound).
  • Адаптивные стратегии на основе скользящих средних. Метод сравнения с подкреплением. Метод преследования.
  • Постановка задачи в случае, когда агент влияет на среду. Ценность состояния среды. Ценность действия.
  • Жадные стратегии максимизации ценности. Уравнения оптимальности Беллмана.
  • Метод SARSA. Метод Q-обучения. Типизация методов на on-policy и off-policy.
  • Глубокое Q-обучение нейронной сети DQN на примере обучения играм Atari.
  • Градиентная оптимизация стратегии (policy gradient). Связь с максимизацией log-правдоподобия.
  • Постановка задачи при моделировании среды. Типизация методов на model-free и model-based.
  • Контекстный многорукий бандит. Линейная регрессионная модель с верхней доверительной оценкой LinUCB.
  • Оценивание новой стратегии по большим историческим данным, сформированным при старых стратегиях.

Активное обучение

Презентация: (PDF, 1.2 МБ) — обновление 24.04.2021. Видеозапись: Лекция Семинар

  • Постановка задачи машинного обучения. Основные стратегии: отбор объектов из выборки и из потока, синтез объектов. Приложения активного обучения.
  • Почему активное обучение быстрее пассивного. Оценивание качества активного обучения. Кривые обучения.
  • Сэмплирование по неуверенности.
  • Сэмплирование по несогласию в комитете. Сокращение пространства решений.
  • Сэмплирование по ожидаемому изменению модели.
  • Сэмплирование по ожидаемому сокращению ошибки.
  • Синтез объектов методами безградиентной оптимизации. Метод Нелдера-Мида.
  • Синтез объектов по критерию сокращения дисперсии.
  • Взвешивание по плотности.
  • Введение изучающих действий в стратегию активного обучении. Алгоритмы ε-active и EG-active.
  • Использование активного обучения в краудсорсинге. Согласование оценок аннотаторов. Назначение заданий аннотаторам.

Заключительная лекция

Презентация: (PDF, 3.9 МБ) — обновление 4.05.2021. Видеозапись: Лекция

Обзор курса. Постановки оптимизационных задач в машинном обучении.

См. также

Литература

  1. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. Springer, 2014. — 739 p.
  2. Bishop C. M. Pattern Recognition and Machine Learning. — Springer, 2006. — 738 p.
  3. Мерков А. Б. Распознавание образов. Введение в методы статистического обучения. 2011. 256 с.
  4. Мерков А. Б. Распознавание образов. Построение и обучение вероятностных моделей. 2014. 238 с.
  5. Коэльо Л.П., Ричарт В. Построение систем машинного обучения на языке Python. 2016. 302 с.

Список подстраниц

Машинное обучение (курс лекций, К.В.Воронцов)/2009Машинное обучение (курс лекций, К.В.Воронцов)/ToDoМашинное обучение (курс лекций, К.В.Воронцов)/Вопросы
Машинное обучение (курс лекций, К.В.Воронцов)/Семестровый курсМашинное обучение (курс лекций, К.В.Воронцов)/Форма отчета
Личные инструменты