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

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

(Различия между версиями)
Перейти к: навигация, поиск
(Тематическое моделирование)
 
(136 промежуточных версий не показаны.)
Строка 1: Строка 1:
{{TOCright}}
{{TOCright}}
-
'''Теория обучения машин''' (machine learning, машинное обучение) находится на стыке [[Прикладная статистика|прикладной статистики]], [[Методы оптимизации|численных методов оптимизации]], [[Дискретный анализ|дискретного анализа]], и за последние 60 лет оформилась в самостоятельную математическую дисциплину. Методы [[Машинное обучение|машинного обучения]] составляют основу ещё более молодой дисциплины — ''[[Интеллектуальный анализ данных|интеллектуального анализа данных]]'' (data mining).
+
'''Машинное обучение''' (machine learning) находится на стыке [[Прикладная статистика|прикладной статистики]], [[Методы оптимизации|численных методов оптимизации]], [[Дискретный анализ|дискретного анализа]], и за последние 60 лет оформилась в самостоятельную математическую и инженерную дисциплину.
В курсе рассматриваются основные задачи обучения по прецедентам: [[классификация]], [[кластеризация]], [[регрессия]], [[понижение размерности]]. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Теоремы в основном приводятся без доказательств.
В курсе рассматриваются основные задачи обучения по прецедентам: [[классификация]], [[кластеризация]], [[регрессия]], [[понижение размерности]]. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Теоремы в основном приводятся без доказательств.
Строка 13: Строка 13:
* примеры прикладных задач.
* примеры прикладных задач.
-
Данный курс расширяет и углубляет набор тем, рекомендованный международным стандартом '''ACM/IEEE Computing Curricula 2001''' по дисциплине «Машинное обучение и нейронные сети» (machine learning and neural networks) в разделе «Интеллектуальные системы» (intelligent systems).
+
На семинарах разбираются дополнительные примеры, аспекты практического применения, работа с данными, программирование, проведение вычислительных экспериментов.
 +
<!---
 +
Данный курс расширяет и углубляет набор тем, рекомендованный международным стандартом '''ACM/IEEE Computing Curricula 2001''' по дисциплине «Машинное обучение и нейронные сети» (machine learning and neural networks) в разделе «Интеллектуальные системы» (intelligent systems). --->
Курс читается
Курс читается
Строка 20: Строка 22:
* студентам [[Школа анализа данных Яндекса|Школы анализа данных Яндекса]] с 2009 года.
* студентам [[Школа анализа данных Яндекса|Школы анализа данных Яндекса]] с 2009 года.
-
От студентов требуются знания курсов линейной алгебры, математического анализа, теории вероятностей. Знание [[Математическая статистика|математической статистики]], [[Методы оптимизации|методов оптимизации]] и языка программирования [[Python]] желательно, но не обязательно.
+
От студентов требуются знания курсов линейной алгебры, математического анализа, теории вероятностей, языка программирования [[Python]]. Знание [[Математическая статистика|математической статистики]], [[Методы оптимизации|методов оптимизации]] желательно, но не обязательно.
<!---На материал данного курса опираются последующие кафедральные курсы.
<!---На материал данного курса опираются последующие кафедральные курсы.
-
На&nbsp;кафедре ММП ВМиК МГУ параллельно с данным курсом и в&nbsp;дополнение к&nbsp;нему читается спецкурс [[Теория надёжности обучения по прецедентам (курс лекций, К. В. Воронцов)|Теория надёжности обучения по прецедентам]], посвящённый проблемам [[Переобучение|переобучения]] и оценивания [[Обобщающая способность|обобщающей способности]].
+
На&nbsp;кафедре ММП ВМиК МГУ параллельно с данным курсом и в&nbsp;дополнение к&nbsp;нему читается спецкурс [[Теория надёжности обучения по прецедентам (курс лекций, К. В. Воронцов)|Теория надёжности обучения по прецедентам]], посвящённый проблемам [[Переобучение|переобучения]] и оценивания [[Обобщающая способность|обобщающей способности]]. --->
-
 
+
-
Ниже представлена расширенная программа — в полном объёме она занимает больше, чем могут вместить в себя два семестра.
+
-
Каждый параграф приблизительно соответствует одной лекции. --->
+
''Курсивом'' выделен дополнительный материал, который может разбираться на семинарах.
''Курсивом'' выделен дополнительный материал, который может разбираться на семинарах.
-
=== Замечания для студентов ===
+
'''Замечания для студентов'''
-
* Осенью 2020 года курс читается в дистанционном режиме. [https://zoom.us/j/95829589904?pwd=eTVZdGpKUnN1Q0hSYlZ3cWpGMGh2UT09 Подключиться к конференции Zoom] {{Важно|Обновлено: 12-09-2020}}
 
* [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 год}}
Строка 38: Строка 36:
* О найденных ошибках и опечатках [[Служебная:EmailUser/Vokov|сообщайте мне]]. —&nbsp;''[[Участник:Vokov|К.В.Воронцов]] 18:24, 19 января 2009 (MSK)''
* О найденных ошибках и опечатках [[Служебная:EmailUser/Vokov|сообщайте мне]]. —&nbsp;''[[Участник: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. Математические основы машинного обучения =
Строка 45: Строка 43:
== Основные понятия и примеры прикладных задач ==
== Основные понятия и примеры прикладных задач ==
-
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF,&nbsp;1,4&nbsp;МБ)]] {{важно|— обновление 05.09.2020}}.
+
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF,&nbsp;1,7&nbsp;МБ)]] {{важно|— обновление 13.09.2024}}.
 +
Видеозапись: [https://youtu.be/uLduOFhyCUw?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy&t=1437 Лекция] [https://youtu.be/bJVI5AIback Семинар]
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
* Типы задач: [[классификация]], [[регрессия]], [[прогнозирование]], [[ранжирование]].
* Типы задач: [[классификация]], [[регрессия]], [[прогнозирование]], [[ранжирование]].
Строка 51: Строка 50:
* Линейные модели регрессии и классификации. Метод наименьших квадратов. Полиномиальная регрессия.
* Линейные модели регрессии и классификации. Метод наименьших квадратов. Полиномиальная регрессия.
* Примеры прикладных задач.
* Примеры прикладных задач.
 +
* Задачи со сложно структурированными данными. Преобразование и генерация признаков.
* Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных.
* Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных.
* Конкурсы по анализу данных [http://kaggle.com kaggle.com]. [[Полигон алгоритмов классификации]].
* Конкурсы по анализу данных [http://kaggle.com kaggle.com]. [[Полигон алгоритмов классификации]].
Строка 56: Строка 56:
== Линейный классификатор и стохастический градиент ==
== Линейный классификатор и стохастический градиент ==
-
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 12.09.2020}}.
+
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF,&nbsp;1,2&nbsp;МБ)]] {{важно|— обновление 13.09.2024}}.
 +
Видеозапись: [https://youtu.be/YaJ-QfSHl3o?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy&t=37 Лекция] [https://youtu.be/-4pPz5kX4XQ Семинар]
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
 +
* Бинарная классификация и многоклассовая классификация.
* [[Метод стохастического градиента]] SG.
* [[Метод стохастического градиента]] SG.
-
* [[Метод стохастического среднего градиента]] SAG.
 
<!--
<!--
 +
* [[Метод стохастического среднего градиента]] SAG.
* Частные случаи: [[адаптивный линейный элемент]] ADALINE, [[перcептрон Розенблатта]], [[правило Хэбба]].
* Частные случаи: [[адаптивный линейный элемент]] ADALINE, [[перcептрон Розенблатта]], [[правило Хэбба]].
* [[Теорема Новикова]] о сходимости. Доказательство теоремы Новикова
* [[Теорема Новикова]] о сходимости. Доказательство теоремы Новикова
-->
-->
-
* Эвристики: инициализация весов, порядок предъявления объектов, выбор величины градиентного шага, «выбивание» из локальных минимумов.
+
* Эвристики: инерция и ускоренный градиент, инициализация весов, порядок предъявления объектов, выбор величины градиентного шага, «выбивание» из локальных минимумов.
* Проблема мультиколлинеарности и переобучения, регуляризация или [[редукция весов]] (weight decay).
* Проблема мультиколлинеарности и переобучения, регуляризация или [[редукция весов]] (weight decay).
* Вероятностная постановка задачи классификации. Принцип максимума правдоподобия.
* Вероятностная постановка задачи классификации. Принцип максимума правдоподобия.
* Вероятностная интерпретация регуляризации, совместное правдоподобие данных и модели. Принцип максимума апостериорной вероятности.
* Вероятностная интерпретация регуляризации, совместное правдоподобие данных и модели. Принцип максимума апостериорной вероятности.
* Гауссовский и лапласовский регуляризаторы.
* Гауссовский и лапласовский регуляризаторы.
-
* [[Логистическая регрессия]]. Принцип максимума правдоподобия и логарифмическая функция потерь. [[Метод стохастического градиента]] для логарифмической функции потерь. Многоклассовая логистическая регрессия. Регуляризованная логистическая регрессия. [[Калибровка Платта]].
+
* [[Логистическая регрессия]]. Принцип максимума правдоподобия и логарифмическая функция потерь. [[Метод стохастического градиента]] для логарифмической функции потерь. Многоклассовая логистическая регрессия. Регуляризованная логистическая регрессия.
<!--
<!--
 +
* [[Калибровка Платта]].
* Функции потерь, зависящие от цены ошибок. [[Кривая ошибок]] (ROC curve). Алгоритм эффективного построения ROC-кривой.
* Функции потерь, зависящие от цены ошибок. [[Кривая ошибок]] (ROC curve). Алгоритм эффективного построения ROC-кривой.
* Градиентный метод максимизации AUC.
* Градиентный метод максимизации AUC.
Строка 76: Строка 79:
== Нейронные сети: градиентные методы оптимизации ==
== Нейронные сети: градиентные методы оптимизации ==
-
Презентация: [[Media:Voron-ML-ANN-slides.pdf|(PDF,&nbsp;1,4&nbsp;МБ)]] {{важно|— обновление 19.09.2020}}.
+
Презентация: [[Media:Voron-ML-ANN-slides.pdf|(PDF,&nbsp;1,5&nbsp;МБ)]] {{важно|— обновление 20.09.2024}}.
 +
Видеозапись: [https://youtu.be/g5B-OiSb9EQ?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/6AyE5bzFWQs Семинар]
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
* Проблема полноты. [[Задача исключающего или]]. Полнота двухслойных сетей в пространстве булевых функций.
* Проблема полноты. [[Задача исключающего или]]. Полнота двухслойных сетей в пространстве булевых функций.
Строка 89: Строка 93:
== Метрические методы классификации и регрессии ==
== Метрические методы классификации и регрессии ==
-
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF,&nbsp;3,2&nbsp;МБ)]] {{важно|— обновление 05.03.2020}}.
+
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF,&nbsp;3,9&nbsp;МБ)]] {{важно|— обновление 03.10.2024}}.
-
 
+
Видеозапись: [https://youtu.be/-HBRFLcEk0U?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/BlPOOpFhhQE Семинар]
* Гипотезы компактности и непрерывности.
* Гипотезы компактности и непрерывности.
* Обобщённый [[метрический классификатор]].
* Обобщённый [[метрический классификатор]].
Строка 110: Строка 114:
== Метод опорных векторов ==
== Метод опорных векторов ==
-
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 24.03.2020}}.
+
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF,&nbsp;1,3&nbsp;МБ)]] {{важно|— обновление 3.10.2024}}.
 +
Видеозапись: [https://youtu.be/AjIM8f8XgM8?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy&t=34 Лекция] [https://youtu.be/Y--tUWQ5JaY Семинар]
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
* Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
Строка 125: Строка 130:
--->
--->
-
== Многомерная линейная регрессия ==
+
== Линейные модели регрессии ==
-
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF,&nbsp;1,2&nbsp;MБ)]] {{важно|— обновление 10.10.2020}}.
+
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF,&nbsp;1,1&nbsp;MБ)]] {{важно|— обновление 11.10.2024}}.
 +
Видеозапись: [https://youtu.be/23F9RRazGzQ?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy&t=10 Лекция] [https://youtu.be/t5imStVGC7Y Семинар]
* Задача регрессии, [[многомерная линейная регрессия]].
* Задача регрессии, [[многомерная линейная регрессия]].
* [[Метод наименьших квадратов]], его вероятностный смысл и геометрический смысл.
* [[Метод наименьших квадратов]], его вероятностный смысл и геометрический смысл.
Строка 144: Строка 150:
== Нелинейная регрессия ==
== Нелинейная регрессия ==
-
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF,&nbsp;0,7&nbsp;MБ)]] {{важно|— обновление 17.10.2020}}.
+
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF,&nbsp;0,8&nbsp;MБ)]] {{важно|— обновление 24.10.2024}}.
 +
Видеозапись: [https://youtu.be/B1GSBTmZh9s?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/WhQT3J1PJfI Семинар]
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
* Обобщённая аддитивная модель (GAM): [[метод настройки с возвращениями]] (backfitting) Хасти-Тибширани.
* Обобщённая аддитивная модель (GAM): [[метод настройки с возвращениями]] (backfitting) Хасти-Тибширани.
Строка 151: Строка 158:
* Неквадратичные функции потерь. Метод наименьших модулей. Квантильная регрессия. Пример прикладной задачи: прогнозирование потребительского спроса.
* Неквадратичные функции потерь. Метод наименьших модулей. Квантильная регрессия. Пример прикладной задачи: прогнозирование потребительского спроса.
* Робастная регрессия, функции потерь с горизонтальными асимптотами.
* Робастная регрессия, функции потерь с горизонтальными асимптотами.
-
<!---
 
-
* [[Логистическая регрессия]]. Гипотеза экспоненциальности функций правдоподобия классов. Теорема о линейности байесовского оптимального классификатора. Оценивание апостериорных вероятностей классов с помощью сигмоидной функции активации.
 
-
--->
 
-
== Критерии выбора моделей и методы отбора признаков ==
+
== Качество классификации и отбор признаков ==
Текст лекций: [[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;МБ)]] {{важно|— обновление 25.10.2020}}.
+
Презентация: [[Media:Voron-ML-Quality-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 24.10.2024}}.
-
 
+
Видеозапись: [https://youtu.be/AMcg9YBseSI?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/fdb_cmG6hl8 Семинар]
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
* Внутренние и [[внешние критерии]]. Эмпирические и аналитические критерии.
* Внутренние и [[внешние критерии]]. Эмпирические и аналитические критерии.
Строка 181: Строка 185:
== Логические методы классификации ==
== Логические методы классификации ==
Текст лекций: [[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;МБ)]] {{важно| — обновление 20.10.2020}}.
+
Презентация: [[Media:Voron-ML-Logic-slides.pdf|(PDF,&nbsp;1.3&nbsp;МБ)]] {{важно| — обновление 03.11.2024}}.
-
 
+
Видеозапись: [https://www.youtube.com/watch?v=M1z7d1ksbA8&list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] <!--[https://youtu.be/OP2rsn478Fk 2020]-->
 +
[https://youtu.be/Ap55F1IoTfk Семинар]
 +
* [[Решающее дерево]]. Жадная нисходящая стратегия «разделяй и властвуй». [[Алгоритм ID3]]. Недостатки жадной стратегии и способы их устранения. Проблема переобучения.
 +
* Вывод критериев ветвления. Мера нечистоты (impurity) распределения. Энтропийный критерий, критерий Джини.
 +
* [[Редукция решающих деревьев]]: [[предредукция]] и [[постредукция]]. [[Алгоритм C4.5]].
 +
* Деревья регрессии. [[Алгоритм CART]].
* Понятие [[логическая закономерность|логической закономерности]].
* Понятие [[логическая закономерность|логической закономерности]].
* Параметрические семейства закономерностей: конъюнкции пороговых правил, синдромные правила, шары, гиперплоскости.
* Параметрические семейства закономерностей: конъюнкции пороговых правил, синдромные правила, шары, гиперплоскости.
 +
* Преобразование решающего дерева в покрывающий набор конъюнкций.
* Переборные алгоритмы синтеза конъюнкций: [[стохастический локальный поиск]], [[стабилизация]], [[редукция]].
* Переборные алгоритмы синтеза конъюнкций: [[стохастический локальный поиск]], [[стабилизация]], [[редукция]].
* Двухкритериальный отбор информативных закономерностей, парето-оптимальный фронт в (p,n)-пространстве.
* Двухкритериальный отбор информативных закономерностей, парето-оптимальный фронт в (p,n)-пространстве.
* Статистический критерий информативности, [[точный тест Фишера]]. Сравнение областей эвристических и статистических закономерностей. Разнообразие критериев информативности в (p,n)-пространстве.
* Статистический критерий информативности, [[точный тест Фишера]]. Сравнение областей эвристических и статистических закономерностей. Разнообразие критериев информативности в (p,n)-пространстве.
-
* [[Решающее дерево]]. Жадная нисходящая стратегия «разделяй и властвуй». [[Алгоритм ID3]]. Недостатки жадной стратегии и способы их устранения. Проблема переобучения.
+
* [[Решающий список]] (decision list). Жадный алгоритм синтеза списка.
-
* Вывод критериев ветвления. Мера нечистоты (impurity) распределения. Энтропийный критерий, критерий Джини.
+
-
* [[Редукция решающих деревьев]]: [[предредукция]] и [[постредукция]]. [[Алгоритм C4.5]].
+
-
* Деревья регрессии. [[Алгоритм CART]].
+
* [[Небрежные решающие деревья]] (oblivious decision tree).
* [[Небрежные решающие деревья]] (oblivious decision tree).
-
* Решающий лес. [[Случайный лес]] (Random Forest).
+
* Решающий пень (decision stump). [[Бинаризация признаков]]. Алгоритм разбиения области значений признака на информативные зоны.
-
* Решающий пень. [[Бинаризация признаков]]. Алгоритм разбиения области значений признака на информативные зоны.
+
<!---
-
* [[Решающий список]]. Жадный алгоритм синтеза списка. Преобразование решающего дерева в решающий список.
+
-
 
+
'''Факультатив'''
'''Факультатив'''
* Асимптотическая эквивалентность статистического и энтропийного критерия информативности.
* Асимптотическая эквивалентность статистического и энтропийного критерия информативности.
-
 
+
--->
-
== Поиск ассоциативных правил ==
+
-
Презентация: [[Media:Voron-ML-AssocRules-slides.pdf|(PDF,&nbsp;1.1&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
+
-
 
+
-
* Понятие [[Ассоциативное правило|ассоциативного правила]] и его связь с понятием логической закономерности.
+
-
* Примеры прикладных задач: [[анализ рыночных корзин]], выделение терминов и тематики текстов.
+
-
* [[Алгоритм APriori]]. Два этапа: поиск частых наборов и рекурсивное порождение ассоциативных правил. Недостатки и пути усовершенствования алгоритма APriori.
+
-
* [[Алгоритм FP-growth]]. Понятия FP-дерева и условного FP-дерева. Два этапа поиска частых наборов в FP-growth: построение FP-дерева и рекурсивное порождение частых наборов.
+
-
* Общее представление о динамических и иерархических методах поиска ассоциативных правил.
+
== Линейные ансамбли ==
== Линейные ансамбли ==
Текст лекций: [[Media:Voron-ML-Compositions.pdf|(PDF,&nbsp;1&nbsp;MБ)]].<br/>
Текст лекций: [[Media:Voron-ML-Compositions.pdf|(PDF,&nbsp;1&nbsp;MБ)]].<br/>
-
Презентация: [[Media:Voron-ML-Compositions1-slides.pdf|(PDF,&nbsp;1.0&nbsp;МБ)]] {{важно|— обновление 14.11.2020}}.
+
Презентация: [[Media:Voron-ML-Compositions1-slides.pdf|(PDF,&nbsp;1.5&nbsp;МБ)]] {{важно|— обновление 04.05.2024}}.
-
 
+
Видеозапись: [https://youtu.be/96xMfQ7ZnGc?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/ZS82juA9098 Семинар]
* Основные понятия: [[базовый алгоритм]], [[корректирующая операция]].
* Основные понятия: [[базовый алгоритм]], [[корректирующая операция]].
* [[Простое голосование]] (комитет большинства).
* [[Простое голосование]] (комитет большинства).
Строка 219: Строка 216:
* [[Взвешенное голосование]]. Преобразование простого голосования во взвешенное.
* [[Взвешенное голосование]]. Преобразование простого голосования во взвешенное.
* [[Алгоритм AdaBoost]]. Экспоненциальная аппроксимация пороговой функции потерь. Процесс последовательного обучения базовых алгоритмов. Теорема о сходимости [[бустинг]]а. Идентификация нетипичных объектов (выбросов).
* [[Алгоритм AdaBoost]]. Экспоненциальная аппроксимация пороговой функции потерь. Процесс последовательного обучения базовых алгоритмов. Теорема о сходимости [[бустинг]]а. Идентификация нетипичных объектов (выбросов).
-
* Теоретические обоснования. Обобщающая способность бустинга. Анализ смещения и вариации для простого голосования.
+
* Теоретические обоснования. Обобщающая способность бустинга.
* Базовые алгоритмы в бустинге. Решающие пни.
* Базовые алгоритмы в бустинге. Решающие пни.
-
* ''Варианты бустинга: [[Алгоритм AnyBoost]], [[GentleBoost]], [[LogitBoost]], [[BrownBoost]], и другие.''
 
* Сравнение бэггинга и бустинга.
* Сравнение бэггинга и бустинга.
* [[Алгоритм ComBoost]]. Обобщение на большое число классов.
* [[Алгоритм ComBoost]]. Обобщение на большое число классов.
== Продвинутые методы ансамблирования ==
== Продвинутые методы ансамблирования ==
-
Презентация: [[Media:Voron-ML-Compositions-slides2.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
+
Презентация: [[Media:Voron-ML-Compositions-slides2.pdf|(PDF,&nbsp;1.5&nbsp;МБ)]] {{важно|— обновление 04.05.2024}}.
-
 
+
Видеозапись: [https://youtu.be/IG7XySody7w?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/JaxB8PdbeUw Семинар]
 +
* Виды ансамблей. Теоретические обоснования. Анализ смещения и разброса для простого голосования.
* [[Градиентный бустинг]]. Стохастический градиентный бустинг.
* [[Градиентный бустинг]]. Стохастический градиентный бустинг.
-
* [[Алгоритм XGBoost]].
+
* Варианты бустинга: регрессия, [[Алгоритм AnyBoost]], [[GentleBoost]], [[LogitBoost]], [[BrownBoost]], и другие.
 +
* [[Алгоритм XGBoost]].
* [[Алгоритм CatBoost]]. Обработка категориальных признаков.
* [[Алгоритм CatBoost]]. Обработка категориальных признаков.
* [[Стэкинг]]. Линейный стэкинг, взвешенный по признакам.
* [[Стэкинг]]. Линейный стэкинг, взвешенный по признакам.
Строка 236: Строка 234:
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
<!---
<!---
-
* ''[[Решающий список]] (комитет старшинства). Алгоритм обучения. Стратегия выбора классов для базовых алгоритмов.''
 
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
-
=== Метод комитетов ===
 
-
* Общее понятие: [[комитет]] системы ограничений. Комитеты большинства, простое и взвешенное голосование (''z,p''-комитеты).
 
-
* Теоремы о существовании комитетного решения.
 
-
* Сопоставление комитета линейных неравенств с нейронной сетью.
 
-
* [[Максимальная совместная подсистема]], [[минимальный комитет]]. Теоремы об ''NP''-полноте задачи поиска минимального комитета.
 
-
* Алгоритм построения комитета, близкого к минимальному. Верхняя оценка числа членов комитета.
 
=== Бустинг алгоритмов ранжирования ===
=== Бустинг алгоритмов ранжирования ===
* Задача ранжирования. Примеры: ранжирование результатов текстового поиска, задача [[Netflix]].
* Задача ранжирования. Примеры: ранжирование результатов текстового поиска, задача [[Netflix]].
Строка 250: Строка 241:
* Двудольная задача. Сведение попарного функционала качества к поточечному.
* Двудольная задача. Сведение попарного функционала качества к поточечному.
=== Взвешенное голосование логических закономерностей ===
=== Взвешенное голосование логических закономерностей ===
-
* Применение алгоритма бустинга [[AdaBoost]] к закономерностям. Критерий информативности в бустинге.
 
* [[Решающий лес]] и бустинг над решающими деревьями. ''[[Алгоритм TreeNet]].''
* [[Решающий лес]] и бустинг над решающими деревьями. ''[[Алгоритм TreeNet]].''
* ''Методы синтеза конъюнктивных закономерностей. Псевдокод: [[алгоритм КОРА]], [[алгоритм ТЭМП]].''
* ''Методы синтеза конъюнктивных закономерностей. Псевдокод: [[алгоритм КОРА]], [[алгоритм ТЭМП]].''
-
* Эвристики, обеспечивающие различность и полезность закономерностей. Построение Парето-оптимальных закономерностей. Выравнивание распределения отступов.
 
* ''[[Чередующиеся решающие деревья]] (alternating decision tree).''
* ''[[Чередующиеся решающие деревья]] (alternating decision tree).''
-
* Примеры прикладных задач: кредитный скоринг, прогнозирование ухода клиентов.
 
=== Алгоритмы вычисления оценок ===
=== Алгоритмы вычисления оценок ===
* [[Принцип частичной прецедентности]]. Структура [[Алгоритмы вычисления оценок|Алгоритмов вычисления оценок]].
* [[Принцип частичной прецедентности]]. Структура [[Алгоритмы вычисления оценок|Алгоритмов вычисления оценок]].
Строка 264: Строка 252:
--->
--->
-
== Байесовская классификация и оценивание плотности ==
+
== Оценивание плотности и байесовская классификация ==
-
Презентация: [[Media:Voron-ML-BTC-EM-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
+
Презентация: [[Media:Voron-Density-Bayes-slides.pdf|(PDF,&nbsp;1,8&nbsp;МБ)]] {{важно|— обновление 04.05.2024}}.
-
 
+
Видеозапись: [https://youtu.be/dujnHz0vHY8?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]
-
* Принцип максимума апостериорной вероятности. Теорема об оптимальности байесовского классификатора.
+
<!---Видеозапись: [https://youtu.be/hv3a_XOKUXk Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]--->
-
* [[Оценивание плотности распределения]]: три основных подхода.
+
<!---Видеозапись: [https://youtu.be/ly7v6W9-lB8 Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]--->
-
* [[Наивный байесовский классификатор]].
+
* Параметрическое оценивание плотности. [[Многомерное нормальное распределение]], геометрическая интерпретация.
 +
* Выборочные оценки параметров многомерного нормального распределения. Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]]. [[Регуляризация]] ковариационной матрицы.
* Непараметрическое оценивание плотности. [[Ядерная оценка плотности Парзена-Розенблатта]]. Одномерный и многомерный случаи.
* Непараметрическое оценивание плотности. [[Ядерная оценка плотности Парзена-Розенблатта]]. Одномерный и многомерный случаи.
 +
* [[Смесь распределений]]. [[EM-алгоритм]] как метод простых итераций.
 +
<!---
 +
* ''Матричное дифференцирование. Вывод оценок параметров многомерного нормального распределения.''
 +
* Детали реализации EM-алгоритма. Критерий останова. Выбор начального приближения.
 +
* Обобщённый EM-алгоритм. Стохастический EM-алгоритм.
 +
* Выбор числа компонентов смеси. Пошаговая стратегия. Иерархический EM-алгоритм.
 +
== Байесовская теория классификации ==
 +
Презентация: [[Media:Voron-ML-BTC-slides.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 27.11.2021}}.
 +
Видеозапись: [https://youtu.be/ly7v6W9-lB8 Лекция] [https://youtu.be/M8A0Wu5iPwQ Семинар]
 +
--->
 +
* Байесовская теория классификации. Оптимальный байесовский классификатор.
 +
* Генеративные и дискриминативные модели классификации.
 +
* Наивный байесовский классификатор. Линейный наивный байесовский классификатор в случае экспоненциального семейства распределений.
* [[Метод парзеновского окна]]. Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
* [[Метод парзеновского окна]]. Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
-
* Параметрическое оценивание плотности. [[Нормальный дискриминантный анализ]].
+
* [[Нормальный дискриминантный анализ]]. [[Квадратичный дискриминант]]. Вид разделяющей поверхности. [[Подстановочный алгоритм]], его недостатки и способы их устранения. [[Линейный дискриминант Фишера]].
-
* [[Многомерное нормальное распределение]], геометрическая интерпретация. Выборочные оценки параметров многомерного нормального распределения.
+
* Смесь многомерных нормальных распределений. [[Сеть радиальных базисных функций]] (RBF) и применение EM-алгоритма для её настройки. Сравнение RBF-сети и SVM с гауссовским ядром.
-
* [[Квадратичный дискриминант]]. Вид разделяющей поверхности. [[Подстановочный алгоритм]], его недостатки и способы их устранения.
+
-
* [[Линейный дискриминант Фишера]].
+
-
* Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]]. [[Регуляризация]] ковариационной матрицы.
+
-
* Параметрический наивный байесовский классификатор.
+
-
* [[Смесь распределений]].
+
-
* [[EM-алгоритм]] как метод простых итераций для решения системы нелинейных уравнений.
+
-
* Выбор числа компонентов смеси. Пошаговая стратегия. Априорное распределение Дирихле.
+
-
* Смесь многомерных нормальных распределений. [[Сеть радиальных базисных функций]] (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,8&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
+
Презентация: [[Media:Voron-ML-Clustering-SSL-slides.pdf|(PDF,&nbsp;2,3&nbsp;МБ)]] {{важно|— обновление 04.05.2024}}.
 +
Видеозапись: [https://youtu.be/Rm4rJiDFi2k?list=PLk4h7dmY2eYH8dtnVUD51XylWpFYDcPKy Лекция] [https://youtu.be/pobOLM1MVfc Семинар]
 +
<!--[https://youtu.be/VxedxFC5d2I 2020]-->
* Постановка задачи [[кластеризация|кластеризации]]. Примеры прикладных задач. Типы кластерных структур.
* Постановка задачи [[кластеризация|кластеризации]]. Примеры прикладных задач. Типы кластерных структур.
* Постановка задачи Semisupervised Learning, примеры приложений.
* Постановка задачи Semisupervised Learning, примеры приложений.
-
* Оптимизационные постановки задач кластеризации и частичного обучения.
+
* Критерии качества кластеризации, коэффициент силуэта, BCubed-меры точности и полноты.
* [[Алгоритм k-средних]] и [[ЕМ-алгоритм]] для разделения гауссовской смеси.
* [[Алгоритм k-средних]] и [[ЕМ-алгоритм]] для разделения гауссовской смеси.
-
* [[Графовые алгоритмы кластеризации]]. Выделение связных компонент. [[Кратчайший незамкнутый путь]].
 
-
* [[Алгоритм ФОРЭЛ]].
 
* [[Алгоритм DBSCAN]].
* [[Алгоритм DBSCAN]].
* [[Агломеративная кластеризация]], [[Алгоритм Ланса-Вильямса]] и его частные случаи.
* [[Агломеративная кластеризация]], [[Алгоритм Ланса-Вильямса]] и его частные случаи.
* Алгоритм построения [[дендрограмма|дендрограммы]]. Определение числа кластеров.
* Алгоритм построения [[дендрограмма|дендрограммы]]. Определение числа кластеров.
-
* Свойства сжатия/растяжения, монотонности и редуктивности. Псевдокод редуктивной версии алгоритма.
+
* Свойства сжатия/растяжения и монотонности.
* Простые эвристические методы частичного обучения: self-training, co-training, co-learning.
* Простые эвристические методы частичного обучения: self-training, co-training, co-learning.
* Трансдуктивный метод опорных векторов TSVM.
* Трансдуктивный метод опорных векторов TSVM.
* Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
* Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
<!--
<!--
 +
* [[Графовые алгоритмы кластеризации]]. Выделение связных компонент. [[Кратчайший незамкнутый путь]].
 +
* [[Алгоритм ФОРЭЛ]].
 +
* Свойства сжатия/растяжения, монотонности и редуктивности. Псевдокод редуктивной версии алгоритма.
* ''Потоковые (субквадратичные) алгоритмы кластеризации.''
* ''Потоковые (субквадратичные) алгоритмы кластеризации.''
* [[Многомерное шкалирование]], примеры прикладных задач.
* [[Многомерное шкалирование]], примеры прикладных задач.
Строка 320: Строка 310:
* [[Алгоритм t-SNE]]
* [[Алгоритм t-SNE]]
-->
-->
 +
 +
== Детекция аномалий и робастные методы ==
 +
Презентация: [[Media:Voron-ML-outliers.pdf|(PDF,&nbsp;1.8&nbsp;МБ)]] {{важно| — обновление 04.05.2024}}.
 +
* Задачи выявления аномалий. Эвристические методы выявления аномалий. Алгоритм LOWESS.
 +
* Теория робастного обучения. Схема итерационного перевзвешивания объектов IRS.
 +
* Семейство робастных агрегирующих функций.
 +
* Итерационное перевзвешивание для произвольной агрегирующей функции. Алгоритм IR-ERM.
 +
* Робастная регрессия. Робастная классификация. Робастная кластеризация.
 +
* Выявление аномалий с помощью одноклассового SVM.
 +
* Парадигмы обучения PU-Learning, One-Class Classification, Open-Set Recognition, Open-World Recognition.
= Семестр 2. Прикладные модели машинного обучения =
= Семестр 2. Прикладные модели машинного обучения =
-
== Нейронные сети глубокого обучения ==
+
== Глубокие нейронные сети ==
-
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 15.11.2020}}.
+
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;4,1&nbsp;МБ)]] {{важно|— обновление 05.05.2024}}.
 +
Видеозапись: [https://youtu.be/x3TKdZi7Mo4 Лекция] [https://youtu.be/_zhKsIze8QU Семинар]
 +
* Обоснования глубоких нейронных сетей: выразительные возможности, скорость сходимости при избыточной параметризации.
* Свёрточные нейронные сети (CNN) для изображений. Свёрточный нейрон. Pooling нейрон. Выборка размеченных изображений ImageNet.
* Свёрточные нейронные сети (CNN) для изображений. Свёрточный нейрон. Pooling нейрон. Выборка размеченных изображений ImageNet.
 +
* ResNet: остаточная нейронная сеть (residual NN). Сквозные связи между слоями (skip connection).
* Свёрточные сети для сигналов, текстов, графов, игр.
* Свёрточные сети для сигналов, текстов, графов, игр.
* Рекуррентные нейронные сети (RNN). Обучение рекуррентных сетей: Backpropagation Through Time (BPTT).
* Рекуррентные нейронные сети (RNN). Обучение рекуррентных сетей: Backpropagation Through Time (BPTT).
* Сети долгой кратковременной памяти (Long short-term memory, LSTM).
* Сети долгой кратковременной памяти (Long short-term memory, LSTM).
-
* Рекуррентная сеть Gated Recurrent Unit (GRU).
+
* Рекуррентные сети Gated Recurrent Unit (GRU) и Simple Recurrent Unit (SRU).
-
* Автокодировщики. Векторные представления дискретных данных.
+
-
* Перенос обучения (transfer learning).
+
-
* Самообучение (self-supervised learning).
+
-
* Генеративные состязательные сети (GAN, generative adversarial net).
+
== Нейронные сети с обучением без учителя ==
== Нейронные сети с обучением без учителя ==
-
Презентация: [[Media:Voron-ML-ANN-Unsupervised-slides.pdf|(PDF,&nbsp;2,3&nbsp;МБ)]] {{важно|— обновление 03.10.2020}}.
+
Презентация: [[Media:Voron-ML-ANN-Unsupervised-slides.pdf|(PDF,&nbsp;2,3&nbsp;МБ)]] {{важно|— обновление 09.02.2024}}.
 +
Видеозапись: [https://youtu.be/wfbe2yaXAkI Лекция] [https://youtu.be/wCX-8AiYYzk Семинар]
* [[Нейронная сеть Кохонена]]. [[Конкурентное обучение]], стратегии WTA и WTM.
* [[Нейронная сеть Кохонена]]. [[Конкурентное обучение]], стратегии WTA и WTM.
* [[Самоорганизующаяся карта Кохонена]]. Применение для визуального анализа данных. Искусство интерпретации карт Кохонена.
* [[Самоорганизующаяся карта Кохонена]]. Применение для визуального анализа данных. Искусство интерпретации карт Кохонена.
-
<!--* [[Сети встречного распространения]], их применение для кусочно-постоянной и гладкой аппроксимации функций.
 
-
-->
 
* [[Автокодировщик]]. Линейный AE, SAE, DAE, CAE, RAE, VAE, AE для классификации, многослойный AE.
* [[Автокодировщик]]. Линейный AE, SAE, DAE, CAE, RAE, VAE, AE для классификации, многослойный AE.
 +
* Пред-обучение нейронных сетей (pre-training).
* Перенос обучения (transfer learning).
* Перенос обучения (transfer learning).
 +
* Многозадачное обучение (multi-task learning).
* Самостоятельное обучение (self-supervised learning).
* Самостоятельное обучение (self-supervised learning).
* Дистилляция моделей или суррогатное моделирование.
* Дистилляция моделей или суррогатное моделирование.
-
* Обучение с использованием привилегированной информации.
+
* Обучение с использованием привилегированной информации (learning using priveleged information, LUPI).
-
* Генеративные состязательные сети (GAN).
+
* Генеративные состязательные сети (generative adversarial net, GAN).
== Векторные представления текстов и графов ==
== Векторные представления текстов и графов ==
-
Презентация: [[Media:Voron-ML-Embeddings-slides.pdf|(PDF,&nbsp;1,3&nbsp;МБ)]] {{важно|— обновление 14.10.2020}}.
+
Презентация: [[Media:Voron-ML-Embeddings-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 05.05.2024}}.
 +
Видеозапись: [https://youtu.be/QJK8PRfKD2g Лекция] [https://youtu.be/NtS9Dp4XhGE Семинар]
* Векторные представления текста. Гипотеза дистрибутивной семантики.
* Векторные представления текста. Гипотеза дистрибутивной семантики.
-
* Модели [[word2vec]], [[FastText]].
+
* Модели CBOW и SGNS из программы [[word2vec]]. Иерархический SoftMax.
 +
* Модель [[FastText]].
* Векторные представления графов.
* Векторные представления графов.
-
* [[Многомерное шкалирование]].
+
* [[Многомерное шкалирование]] (multidimensional scaling, MDS).
 +
* Векторное представление соседства (stochastic neighbor embedding, SNE и tSNE).
 +
* Матричные разложения (graph factorization).
* Модели случайных блужданий [[DeepWalk]], [[node2vec]].
* Модели случайных блужданий [[DeepWalk]], [[node2vec]].
* Обобщённый автокодировщик на графах [[GraphEDM]].
* Обобщённый автокодировщик на графах [[GraphEDM]].
-
* Векторные представления гиперграфов.
+
* Представление о графовых нейронных сетях (graph neural network, GNN). Передача сообщений по графу (message passing).
-
* Тематические модели транзакционных данных. EM-алгоритм для тематической модели гиперграфа.
+
-
* Примеры транзакционных моделей на гиперграфах.
+
== Модели внимания и трансформеры ==
== Модели внимания и трансформеры ==
-
Презентация: [[Media:Voron-ML-Attention-slides.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 7.11.2020}}.
+
Презентация: [[Media:Voron-ML-Attention-slides.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 05.05.2024}}.
-
* Задачи обработки последовательностей.
+
Видеозапись: [https://youtu.be/KhMweP00S44 Лекция] [https://youtu.be/GfUadGOcwtc Семинар]
-
* Рекуррентная сеть с моделью внимания. Разновидности моделей внимания.
+
 
-
* Критерии обучения и оценивание качества (предобучение).
+
* Задачи обработки и преобразования последовательностей (sequence to sequence).
-
* Прикладные задачи: машинный перевод, аннотирование изображений (эквивалентность MHSA и CNN).
+
* Рекуррентная сеть с моделью внимания.
-
* Модели внимания на графах.
+
* Разновидности моделей внимания: многомерное, иерархическое, Query–Key–Value, внутреннее (self-attention).
-
* Трансформеры для текстов, изображений, графов.
+
* Модели внимания на графах (Graph Attention Network). Задача классификации вершин графа.
 +
* Трансформеры. Особенности архитектуры кодировщика и декодировщка.
 +
* Критерии обучения и оценивание качества (предобучение). Модель BERT.
 +
<!-- * Эквивалентность MHSA и CNN-->
 +
* Прикладные задачи: машинный перевод, аннотирование изображений.
 +
* Модели внимания и трансформеры для текстов, изображений, графов.
== Тематическое моделирование ==
== Тематическое моделирование ==
Строка 377: Строка 384:
Презентация 1: [[Media:Voron-ML-TopicModels-slides.pdf|(PDF,&nbsp;2.8&nbsp;МБ)]] {{важно| — обновление 16.11.2015}}.
Презентация 1: [[Media:Voron-ML-TopicModels-slides.pdf|(PDF,&nbsp;2.8&nbsp;МБ)]] {{важно| — обновление 16.11.2015}}.
Презентация 2: [[Media:Voron-ML-TopicModels-slides-2.pdf|(PDF,&nbsp;6.1&nbsp;МБ)]] {{важно| — обновление 16.11.2015}}.
Презентация 2: [[Media:Voron-ML-TopicModels-slides-2.pdf|(PDF,&nbsp;6.1&nbsp;МБ)]] {{важно| — обновление 16.11.2015}}.
 +
Семинар 15.11.2020: [[Media:Voron-ML-TopicModeling-seminar-slides.pdf|(PDF,&nbsp;3.8&nbsp;МБ)]]
--->
--->
-
Презентация: [[Media:Voron-ML-TopicModeling-slides.pdf|(PDF,&nbsp;7.1&nbsp;МБ)]] {{важно| — обновление 15.11.2020}}.
+
Презентация: [[Media:Voron-ML-TopicModeling-slides.pdf|(PDF,&nbsp;3.9&nbsp;МБ)]] {{важно| — обновление 05.05.2024}}.
-
Семинар: [[Media:Voron-ML-TopicModeling-seminar-slides.pdf|(PDF,&nbsp;3.8&nbsp;МБ)]] {{важно| — обновление 15.11.2020}}.
+
Видеозапись: [https://youtu.be/Eqm8-YqUzAc Лекция] [https://youtu.be/xxwMuxM4AEg Семинар]
 +
 
* Задача [[тематическое моделирование|тематического моделирования]] коллекции текстовых документов. [[Метод максимума правдоподобия]].
* Задача [[тематическое моделирование|тематического моделирования]] коллекции текстовых документов. [[Метод максимума правдоподобия]].
* Лемма о максимизации гладкой функции на симплексах (применение условий Каруша–Куна–Таккера).
* Лемма о максимизации гладкой функции на симплексах (применение условий Каруша–Куна–Таккера).
Строка 391: Строка 400:
* Внутренние и внешние критерии качества тематических моделей.
* Внутренние и внешние критерии качества тематических моделей.
-
== Ранжирование ==
+
== Обучение ранжированию ==
-
Презентация: [[Media:Voron-ML-Ranking-slides.pdf|(PDF,&nbsp;0,8&nbsp;МБ)]] {{важно|— обновление 3.11.2020}}.
+
Презентация: [[Media:Voron-ML-Ranking-slides.pdf|(PDF,&nbsp;0,9&nbsp;МБ)]] {{важно|— обновление 05.05.2024}}.
 +
Видеозапись: [https://youtu.be/kQ5PeshAO1w Лекция] [https://youtu.be/cN5WoTRJYtY Семинар]
 +
 
* Постановка задачи [[Обучение ранжированию|обучения ранжированию]]. Примеры.
* Постановка задачи [[Обучение ранжированию|обучения ранжированию]]. Примеры.
* Поточечные методы Ранговая регрессия. Ранговая классификация, OC-SVM.
* Поточечные методы Ранговая регрессия. Ранговая классификация, OC-SVM.
Строка 402: Строка 413:
== Рекомендательные системы ==
== Рекомендательные системы ==
-
Презентация: [[Media:Voron-ML-CF.pdf|(PDF,&nbsp;0.8&nbsp;МБ)]] {{важно| — обновление 11.11.2020}}.
+
Презентация: [[Media:Voron-ML-CF.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно| — обновление 05.05.2024}}.
 +
Видеозапись: [https://youtu.be/FW5UdtMwlpw Лекция] [https://youtu.be/Rge1_Bnr8JI Семинар]
 +
 
* Задачи [[коллаборативная фильтрация|коллаборативной фильтрации]], [[транзакционные данные]].
* Задачи [[коллаборативная фильтрация|коллаборативной фильтрации]], [[транзакционные данные]].
* Корреляционные методы user-based, item-based. Задача восстановления пропущенных значений. Меры сходства.
* Корреляционные методы user-based, item-based. Задача восстановления пропущенных значений. Меры сходства.
Строка 415: Строка 428:
* Измерение качества рекомендаций. Меры разнообразия (diversity), новизны (novelty), покрытия (coverage), догадливости (serendipity).
* Измерение качества рекомендаций. Меры разнообразия (diversity), новизны (novelty), покрытия (coverage), догадливости (serendipity).
-
== Прогнозирование временных рядов ==
+
== Поиск ассоциативных правил ==
 +
Презентация: [[Media:Voron-ML-AssocRules-slides.pdf|(PDF,&nbsp;1.8&nbsp;МБ)]] {{важно| — обновление 05.05.2024}}.
 +
Видеозапись: [https://youtu.be/jKl2jFQVh94 Лекция] [https://youtu.be/WmJKfCl9P7Y Семинар]
 +
* Понятие [[Ассоциативное правило|ассоциативного правила]] и его связь с понятием логической закономерности.
 +
* Примеры прикладных задач: [[анализ рыночных корзин]], выделение терминов и тематики текстов.
 +
* [[Алгоритм APriori]]. Два этапа: поиск частых наборов и рекурсивное порождение ассоциативных правил. Недостатки и пути усовершенствования алгоритма APriori.
 +
* [[Алгоритм FP-growth]]. Понятия FP-дерева и условного FP-дерева. Два этапа поиска частых наборов в FP-growth: построение FP-дерева и рекурсивное порождение частых наборов.
 +
* Общее представление о динамических и иерархических методах поиска ассоциативных правил.
 +
* [[Алгоритм TopMine]] для поиска коллокаций и терминов в текстах.
 +
<!---
 +
== Адаптивные методы прогнозирования ==
Презентация: [[Media:Voron-ML-forecasting-slides.pdf|(PDF,&nbsp;0,9&nbsp;MБ)]] {{важно|— обновление 14.12.2019}}.
Презентация: [[Media:Voron-ML-forecasting-slides.pdf|(PDF,&nbsp;0,9&nbsp;MБ)]] {{важно|— обновление 14.12.2019}}.
 +
Видеозапись: [https://youtu.be/HyWm8FKzyPw Лекция] [https://youtu.be/hxKdtWVqEhg Семинар]
 +
[https://youtu.be/u433nrxdf5k Видеозапись лекции Евгения Рябенко]
 +
* Задача прогнозирования временных рядов. Примеры приложений.
* Задача прогнозирования временных рядов. Примеры приложений.
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
Строка 423: Строка 449:
* Адаптивная селективная модель. Адаптивная композиция моделей.
* Адаптивная селективная модель. Адаптивная композиция моделей.
* Локальная адаптация весов с регуляризацией.
* Локальная адаптация весов с регуляризацией.
 +
--->
== Инкрементное и онлайновое обучение ==
== Инкрементное и онлайновое обучение ==
-
(в разработке...)
+
Презентация: [[Media:Voron-ML-incremental-slides.pdf|(PDF,&nbsp;1,1&nbsp;MБ)]] {{важно|— обновление 05.05.2024}}.
-
* Отличия инкрементного и онлайнового обучения.
+
Видеозапись: [https://youtu.be/3KflU279d_w Лекция] [ Семинар]
-
* Добавление новых объектов. Ленивое обучение: kNN, парзеновские методы. Метод наименьших квадратов для линейной регрессии. Решающие деревья и леса.
+
 
-
* Добавление новых признаков. Матричные разложения.
+
* Задачи инкрементного и онлайнового обучения. Оценивание инкрементного обучения. Кривые обучения.
-
* Добавление новых классов.
+
* Ленивое обучение (метрические и непараметрические методы). Онлайновый отбор эталонных объектов.
-
* Оценивание инкрементного обучения. Кривые обучения.
+
* Онлайновый наивный байесовский классификатор.
 +
* Онлайновый градиентный спуск OGD. Алгоритм Perceptron. Алгоритм Passive-Aggressive.
 +
* Инкрементные решающие деревья ID5R.
 +
* Рекуррентный метод наименьших квадратов RLS. Формула Шермана-Моррисона.
 +
* Задача прогнозирования временных рядов. Эконометрические временные ряды с трендом и сезонностью.
 +
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
 +
* Адаптивная селективная модель. Адаптивная композиция моделей.
 +
* Онлайновое обучение ансамбля. Алгоритм Hedge, его свойства и интерпретация в задаче портфельного инвестирования.
 +
* Онлайновое глубокое обучение. Алгоритм Hedge BackProp.
 +
<!---* Онлайновое обучение новым классам. Проблема катастрофического забывания. Алгоритм iCaRL.--->
== Обучение с подкреплением ==
== Обучение с подкреплением ==
-
Презентация: [[Media:Voron-ML-RL-slides.pdf|(PDF,&nbsp;1.0&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
+
Презентация: [[Media:Voron-ML-RL-slides.pdf|(PDF,&nbsp;1.9&nbsp;МБ)]] {{важно| — обновление 05.05.2024}}.
-
* Задача о многоруком бандите. Жадные и эпсилон-жадные стратегии. Метод UCB (upper confidence bound). Стратегия Softmax.
+
Видеозапись: [https://youtu.be/B4Fk2KNHzFY Лекция] [https://youtu.be/3Xex0Z5D6O8 Семинар]
-
* Среда для экспериментов.
+
 
-
* Адаптивные стратегии на основе скользящих средних. Метод сравнения с подкреплением. Метод преследования.
+
* Задача о многоруком бандите. Жадные и эпсилон-жадные стратегии. Метод UCB (upper confidence bound).
 +
* Адаптивные стратегии на основе скользящих средних. Метод сравнения с подкреплением. Метод преследования.
* Постановка задачи в случае, когда агент влияет на среду. Ценность состояния среды. Ценность действия.
* Постановка задачи в случае, когда агент влияет на среду. Ценность состояния среды. Ценность действия.
* Жадные стратегии максимизации ценности. Уравнения оптимальности Беллмана.
* Жадные стратегии максимизации ценности. Уравнения оптимальности Беллмана.
-
* Метод временных разностей TD. Метод Q-обучения.
+
* Метод SARSA. Метод Q-обучения. Типизация методов на on-policy и off-policy.
-
<!---* Многошаговое TD-прогнозирование. Обобщения методов временных разностей, SARSA, Q-обучения. --->
+
* Глубокое Q-обучение нейронной сети DQN на примере обучения играм Atari.
 +
<!---* Метод временных разностей TD. Многошаговое TD-прогнозирование. Обобщения методов временных разностей, SARSA, Q-обучения. --->
* Градиентная оптимизация стратегии (policy gradient). Связь с максимизацией log-правдоподобия.
* Градиентная оптимизация стратегии (policy gradient). Связь с максимизацией log-правдоподобия.
-
* Постановка задачи при наличии информации о среде в случае выбора действия. Контекстный многорукий бандит.
+
* Модели актор-критик. Модели с непрерывным управлением.
-
* Линейная регрессионная модель с верхней доверительной оценкой LinUCB.
+
* Постановка задачи при моделировании среды. Типизация методов на model-free и model-based.
-
* Оценивание новой стратегии по большим историческим данным.
+
* Контекстный многорукий бандит. Линейная регрессионная модель с верхней доверительной оценкой LinUCB.
-
<!---* Адаптивный полужадный метод VDBE.--->
+
* Оценивание новой стратегии по большим историческим данным, сформированным при старых стратегиях.
== Активное обучение ==
== Активное обучение ==
-
Презентация: [[Media:Voron-ML-AL-slides.pdf|(PDF,&nbsp;1.2&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
+
Презентация: [[Media:Voron-ML-AL-slides.pdf|(PDF,&nbsp;2.3&nbsp;МБ)]] {{важно| — обновление 26.04.2024}}.
-
* Постановка задачи машинного обучения. Основные стратегии: отбор объектов из выборки и из потока, синтез объектов.
+
Видеозапись: [https://youtu.be/kGJ7PPTcUHw Лекция] [https://youtu.be/JlPLaNQXNO8 Семинар]
-
* Сэмплирование по неуверенности. Почему активное обучение быстрее пассивного.
+
 
 +
* Постановка задачи машинного обучения. Основные стратегии: отбор объектов из выборки и из потока, синтез объектов. Приложения активного обучения.
 +
* Почему активное обучение быстрее пассивного. Оценивание качества активного обучения. Кривые обучения.
 +
* Сэмплирование по неуверенности.
* Сэмплирование по несогласию в комитете. Сокращение пространства решений.
* Сэмплирование по несогласию в комитете. Сокращение пространства решений.
* Сэмплирование по ожидаемому изменению модели.
* Сэмплирование по ожидаемому изменению модели.
* Сэмплирование по ожидаемому сокращению ошибки.
* Сэмплирование по ожидаемому сокращению ошибки.
 +
* Синтез объектов методами безградиентной оптимизации. [[Метод Нелдера-Мида]].
* Синтез объектов по критерию сокращения дисперсии.
* Синтез объектов по критерию сокращения дисперсии.
* Взвешивание по плотности.
* Взвешивание по плотности.
-
* Оценивание качества активного обучения.
 
* Введение изучающих действий в стратегию активного обучении. Алгоритмы ε-active и EG-active.
* Введение изучающих действий в стратегию активного обучении. Алгоритмы ε-active и EG-active.
-
* Применение обучения с подкреплением для активного обучения. Активное томпсоновское сэмплирование.
+
* Использование активного обучения в краудсорсинге. Согласование оценок аннотаторов. Назначение заданий аннотаторам.
 +
<!---* Применение обучения с подкреплением для активного обучения. Активное томпсоновское сэмплирование.--->
 +
 
 +
== Интерпретируемость и объяснимость ==
 +
Презентация: [[Media:Voron-ML-xai.pdf|(PDF,&nbsp;3.8&nbsp;МБ)]] {{важно| — обновление 04.05.2024}}.
 +
 
 +
* Интерпретируемость и объяснимость — цели, задачи, основные понятия.
 +
* Интерпретируемые модели машинного обучения.
 +
* Оценки значимости признаков в линейной регрессии.
 +
* Графики частичной зависимости (Partial Dependence Plot, PDP).
 +
* Графики индивидуальных условных зависимостей (ICE).
 +
* Перестановочные оценки значимости признаков.
 +
* Вектор Шепли (из теории кооперативных игр), его свойства, способы оценивания, применение в линейной регрессии.
 +
* Суррогатное моделирование в окрестности объекта.
 +
* Метод LIME (Local Interpretable Model-agnostic Explanations).
 +
* Метод якорей (Anchors).
 +
* Метод SHAP (SHapley Additive exPlanations).
 +
* Метод Shapley Kernel.
 +
* Метод SAGE (Shapley Additive Global importancE).
 +
* Вектор Шепли для объектов, метод Gradient Shapley.
 +
* Контрфактическое объяснение, метод поиска контрфактов (Counterfactual explanations).
 +
 
 +
= Дополнительные лекции =
-
== Заключительная лекция ==
+
== Теория переобучения ==
-
Презентация: [[Media:Voron-ML-final.pdf|(PDF,&nbsp;2.0&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
+
Презентация: [[Media:Voron-ML-overfitting.pdf|(PDF,&nbsp;1.6&nbsp;МБ)]] {{важно| — обновление 3.11.2024}}.
 +
* Задача оценивания вероятности переобучения. Матрица ошибок конечного множества алгоритмов.
 +
* [[Теория Вапника–Червоненкиса]]. Размерность Вапника–Червоненкиса (VC-dimension, [[ёмкость]]). [[Метод структурной минимизации риска]].
 +
* Бритва Оккама (Occam's razor bound).
 +
* Эксперименты с переобучением. Монотонная цепь алгоритмов.
 +
* Переобучение при выборе из двух алгоритмов.
 +
* Комбинаторная теория переобучения. Граф расслоения-связности конечного множества алгоритмов.
 +
* Порождающие и запрещающие множества. Связность и неоптимальность алгоритма. Оценка расслоения-связности.
-
Обзор курса. Оптимизационные задачи машинного обучения.
+
== Обзор оптимизационных задач машинного обучения ==
 +
Презентация: [[Media:Voron-ML-final.pdf|(PDF,&nbsp;3.9&nbsp;МБ)]] {{важно| — обновление 4.05.2021}}.
 +
Видеозапись: [https://youtu.be/eDptWKPrIy4 Лекция]
= См. также =
= См. также =

Текущая версия

Содержание

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

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

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

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

На семинарах разбираются дополнительные примеры, аспекты практического применения, работа с данными, программирование, проведение вычислительных экспериментов.

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

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

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

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

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

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

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

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

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

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

  • Линейный классификатор, модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
  • Бинарная классификация и многоклассовая классификация.
  • Метод стохастического градиента SG.
  • Эвристики: инерция и ускоренный градиент, инициализация весов, порядок предъявления объектов, выбор величины градиентного шага, «выбивание» из локальных минимумов.
  • Проблема мультиколлинеарности и переобучения, регуляризация или редукция весов (weight decay).
  • Вероятностная постановка задачи классификации. Принцип максимума правдоподобия.
  • Вероятностная интерпретация регуляризации, совместное правдоподобие данных и модели. Принцип максимума апостериорной вероятности.
  • Гауссовский и лапласовский регуляризаторы.
  • Логистическая регрессия. Принцип максимума правдоподобия и логарифмическая функция потерь. Метод стохастического градиента для логарифмической функции потерь. Многоклассовая логистическая регрессия. Регуляризованная логистическая регрессия.

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

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

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

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

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

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

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

Линейные модели регрессии

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

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

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

Качество классификации и отбор признаков

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

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

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

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

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

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

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

Оценивание плотности и байесовская классификация

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

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

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

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

Детекция аномалий и робастные методы

Презентация: (PDF, 1.8 МБ) — обновление 04.05.2024.

  • Задачи выявления аномалий. Эвристические методы выявления аномалий. Алгоритм LOWESS.
  • Теория робастного обучения. Схема итерационного перевзвешивания объектов IRS.
  • Семейство робастных агрегирующих функций.
  • Итерационное перевзвешивание для произвольной агрегирующей функции. Алгоритм IR-ERM.
  • Робастная регрессия. Робастная классификация. Робастная кластеризация.
  • Выявление аномалий с помощью одноклассового SVM.
  • Парадигмы обучения PU-Learning, One-Class Classification, Open-Set Recognition, Open-World Recognition.

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

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

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

  • Обоснования глубоких нейронных сетей: выразительные возможности, скорость сходимости при избыточной параметризации.
  • Свёрточные нейронные сети (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 МБ) — обновление 09.02.2024. Видеозапись: Лекция Семинар

  • Нейронная сеть Кохонена. Конкурентное обучение, стратегии 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,6 МБ) — обновление 05.05.2024. Видеозапись: Лекция Семинар

  • Векторные представления текста. Гипотеза дистрибутивной семантики.
  • Модели 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 МБ) — обновление 05.05.2024. Видеозапись: Лекция Семинар

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Интерпретируемость и объяснимость

Презентация: (PDF, 3.8 МБ) — обновление 04.05.2024.

  • Интерпретируемость и объяснимость — цели, задачи, основные понятия.
  • Интерпретируемые модели машинного обучения.
  • Оценки значимости признаков в линейной регрессии.
  • Графики частичной зависимости (Partial Dependence Plot, PDP).
  • Графики индивидуальных условных зависимостей (ICE).
  • Перестановочные оценки значимости признаков.
  • Вектор Шепли (из теории кооперативных игр), его свойства, способы оценивания, применение в линейной регрессии.
  • Суррогатное моделирование в окрестности объекта.
  • Метод LIME (Local Interpretable Model-agnostic Explanations).
  • Метод якорей (Anchors).
  • Метод SHAP (SHapley Additive exPlanations).
  • Метод Shapley Kernel.
  • Метод SAGE (Shapley Additive Global importancE).
  • Вектор Шепли для объектов, метод Gradient Shapley.
  • Контрфактическое объяснение, метод поиска контрфактов (Counterfactual explanations).

Дополнительные лекции

Теория переобучения

Презентация: (PDF, 1.6 МБ) — обновление 3.11.2024.

  • Задача оценивания вероятности переобучения. Матрица ошибок конечного множества алгоритмов.
  • Теория Вапника–Червоненкиса. Размерность Вапника–Червоненкиса (VC-dimension, ёмкость). Метод структурной минимизации риска.
  • Бритва Оккама (Occam's razor bound).
  • Эксперименты с переобучением. Монотонная цепь алгоритмов.
  • Переобучение при выборе из двух алгоритмов.
  • Комбинаторная теория переобучения. Граф расслоения-связности конечного множества алгоритмов.
  • Порождающие и запрещающие множества. Связность и неоптимальность алгоритма. Оценка расслоения-связности.

Обзор оптимизационных задач машинного обучения

Презентация: (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Машинное обучение (курс лекций, К.В.Воронцов)/Вопросы
Машинное обучение (курс лекций, К.В.Воронцов)/Семестровый курсМашинное обучение (курс лекций, К.В.Воронцов)/Форма отчета
Личные инструменты