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

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

(Различия между версиями)
Перейти к: навигация, поиск
(Второй семестр)
(9 промежуточных версий не показаны.)
Строка 43: Строка 43:
== Основные понятия и примеры прикладных задач ==
== Основные понятия и примеры прикладных задач ==
-
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF, 1,4 МБ)]] {{важно|— обновление 14.02.2019}}.
+
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF, 1,4 МБ)]] {{важно|— обновление 14.12.2019}}.
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
Строка 56: Строка 56:
== Линейный классификатор и стохастический градиент ==
== Линейный классификатор и стохастический градиент ==
-
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF, 1,1 МБ)]] {{важно|— обновление 13.03.2018}}.
+
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF, 1,1 МБ)]] {{важно|— обновление 14.12.2019}}.
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
* [[Метод стохастического градиента]] SG.
* [[Метод стохастического градиента]] SG.
Строка 76: Строка 76:
== Метрические методы классификации и регрессии ==
== Метрические методы классификации и регрессии ==
-
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF, 3,2 МБ)]] {{важно|— обновление 13.03.2018}}.
+
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF, 3,2 МБ)]] {{важно|— обновление 14.12.2019}}.
* Гипотезы компактности и непрерывности.
* Гипотезы компактности и непрерывности.
Строка 95: Строка 95:
== Метод опорных векторов ==
== Метод опорных векторов ==
-
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF, 1,1 МБ)]] {{важно|— обновление 07.03.2017}}.
+
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF, 1,1 МБ)]] {{важно|— обновление 14.12.2019}}.
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
* Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
Строка 111: Строка 111:
== Многомерная линейная регрессия ==
== Многомерная линейная регрессия ==
-
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF, 0,7 MБ)]] {{важно|— обновление 14.03.2017}}.
+
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF, 0,7 MБ)]] {{важно|— обновление 14.12.2019}}.
* Задача регрессии, [[многомерная линейная регрессия]].
* Задача регрессии, [[многомерная линейная регрессия]].
* [[Метод наименьших квадратов]], его вероятностный смысл и геометрический смысл.
* [[Метод наименьших квадратов]], его вероятностный смысл и геометрический смысл.
Строка 129: Строка 129:
== Нелинейная регрессия ==
== Нелинейная регрессия ==
-
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF, 0,7 MБ)]] {{важно|— обновление 27.03.2018}}.
+
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF, 0,7 MБ)]] {{важно|— обновление 14.12.2019}}.
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
* Обобщённая аддитивная модель (GAM): [[метод настройки с возвращениями]] (backfitting) Хасти-Тибширани.
* Обобщённая аддитивная модель (GAM): [[метод настройки с возвращениями]] (backfitting) Хасти-Тибширани.
Строка 141: Строка 141:
== Прогнозирование временных рядов ==
== Прогнозирование временных рядов ==
-
Презентация: [[Media:Voron-ML-forecasting-slides.pdf|(PDF, 0,9 MБ)]] {{важно|— обновление 27.04.2017}}.
+
Презентация: [[Media:Voron-ML-forecasting-slides.pdf|(PDF, 0,9 MБ)]] {{важно|— обновление 14.12.2019}}.
* Задача прогнозирования временных рядов. Примеры приложений.
* Задача прогнозирования временных рядов. Примеры приложений.
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
Строка 151: Строка 151:
== Критерии выбора моделей и методы отбора признаков ==
== Критерии выбора моделей и методы отбора признаков ==
Текст лекций: [[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;МБ)]] {{важно|— обновление 05.04.2018}}.
+
Презентация: [[Media:Voron-ML-Quality-slides.pdf|(PDF,&nbsp;1,5&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
Строка 157: Строка 157:
* [[Скользящий контроль]], разновидности эмпирических оценок скользящего контроля. [[Критерий непротиворечивости]].
* [[Скользящий контроль]], разновидности эмпирических оценок скользящего контроля. [[Критерий непротиворечивости]].
* Разновидности аналитических оценок. [[Регуляризация]]. [[Критерий Акаике]] (AIC). [[Байесовский информационный критерий]] (BIC). Оценка Вапника-Червоненкиса.
* Разновидности аналитических оценок. [[Регуляризация]]. [[Критерий Акаике]] (AIC). [[Байесовский информационный критерий]] (BIC). Оценка Вапника-Червоненкиса.
-
* ''Агрегированные и многоступенчатые критерии''.
 
* Сложность задачи [[отбор признаков|отбора признаков]]. [[Полный перебор]].
* Сложность задачи [[отбор признаков|отбора признаков]]. [[Полный перебор]].
* [[Метод добавления и удаления]], шаговая регрессия.
* [[Метод добавления и удаления]], шаговая регрессия.
Строка 165: Строка 164:
* [[Случайный поиск]] и [[Случайный поиск с адаптацией]] (СПА).
* [[Случайный поиск]] и [[Случайный поиск с адаптацией]] (СПА).
<!---
<!---
 +
* ''Агрегированные и многоступенчатые критерии''.
* ''Статистические критерии: [[коэффициент детерминации]], [[критерий Фишера]], [[анализ регрессионных остатков]].''
* ''Статистические критерии: [[коэффициент детерминации]], [[критерий Фишера]], [[анализ регрессионных остатков]].''
== Теория обобщающей способности ==
== Теория обобщающей способности ==
Строка 175: Строка 175:
== Логические методы классификации ==
== Логические методы классификации ==
Текст лекций: [[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;МБ)]] {{важно| — обновление 13.03.2018}}.
+
Презентация: [[Media:Voron-ML-Logic-slides.pdf|(PDF,&nbsp;1.8&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
* Понятие [[логическая закономерность|логической закономерности]].
* Понятие [[логическая закономерность|логической закономерности]].
Строка 193: Строка 193:
* [[Решающий список]]. Жадный алгоритм синтеза списка.
* [[Решающий список]]. Жадный алгоритм синтеза списка.
* Преобразование решающего дерева в решающий список.
* Преобразование решающего дерева в решающий список.
 +
 +
== Поиск ассоциативных правил ==
 +
Презентация: [[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-BTC-EM-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 13.04.2018}}.
+
Презентация: [[Media:Voron-ML-BTC-EM-slides.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Принцип максимума апостериорной вероятности. Теорема об оптимальности байесовского классификатора.
* Принцип максимума апостериорной вероятности. Теорема об оптимальности байесовского классификатора.
Строка 227: Строка 235:
== Кластеризация и частичное обучение ==
== Кластеризация и частичное обучение ==
-
Презентация: [[Media:Voron-ML-Clustering-SSL-slides.pdf|(PDF,&nbsp;1,8&nbsp;МБ)]] {{важно|— обновление 03.04.2018}}.
+
Презентация: [[Media:Voron-ML-Clustering-SSL-slides.pdf|(PDF,&nbsp;1,8&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Постановка задачи [[кластеризация|кластеризации]]. Примеры прикладных задач. Типы кластерных структур.
* Постановка задачи [[кластеризация|кластеризации]]. Примеры прикладных задач. Типы кластерных структур.
* Постановка задачи Semisupervised Learning, примеры приложений.
* Постановка задачи Semisupervised Learning, примеры приложений.
Строка 241: Строка 249:
* Трансдуктивный метод опорных векторов TSVM.
* Трансдуктивный метод опорных векторов TSVM.
* Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
* Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
-
<!--* ''Потоковые (субквадратичные) алгоритмы кластеризации.''
+
<!--
 +
* ''Потоковые (субквадратичные) алгоритмы кластеризации.''
* [[Многомерное шкалирование]], примеры прикладных задач.
* [[Многомерное шкалирование]], примеры прикладных задач.
* Субквадратичный алгоритм, псевдокод. Минимизация функционала стресса методом Ньютона-Рафсона.
* Субквадратичный алгоритм, псевдокод. Минимизация функционала стресса методом Ньютона-Рафсона.
Строка 252: Строка 261:
== Нейронные сети: градиентные методы оптимизации ==
== Нейронные сети: градиентные методы оптимизации ==
-
Презентация: [[Media:Voron-ML-NeuralNets1-2018-slides.pdf|(PDF,&nbsp;1,4&nbsp;МБ)]] {{важно|— обновление 11.09.2018}}.
+
Презентация: [[Media:Voron-ML-NeuralNets1-2018-slides.pdf|(PDF,&nbsp;1,4&nbsp;МБ)]] {{важно|— обновление 23.09.2019}}.
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
* Проблема полноты. [[Задача исключающего или]]. Полнота двухслойных сетей в пространстве булевых функций.
* Проблема полноты. [[Задача исключающего или]]. Полнота двухслойных сетей в пространстве булевых функций.
Строка 268: Строка 277:
== Нейронные сети глубокого обучения ==
== Нейронные сети глубокого обучения ==
-
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;3,4&nbsp;МБ)]] {{важно|— обновление 1.11.2017}}.
+
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;3,4&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
-
* Свёрточные нейронные сети (CNN). Свёрточный нейрон. Pooling нейрон. Выборка размеченных изображений ImageNet.
+
* Свёрточные нейронные сети (CNN) для изображений. Свёрточный нейрон. Pooling нейрон. Выборка размеченных изображений ImageNet.
-
* Идея обобщения CNN на любые структурированные данные.
+
* Свёрточные сети для сигналов, текстов, графов, игр.
* Рекуррентные нейронные сети (RNN). Обучение рекуррентных сетей: Backpropagation Through Time (BPTT).
* Рекуррентные нейронные сети (RNN). Обучение рекуррентных сетей: Backpropagation Through Time (BPTT).
-
* Сети долгой кратковременной памяти (Long short-term memory, LSTM).
+
* Сети долгой кратковременной памяти (Long short-term memory, LSTM).
-
* Автокодировщики. Векторные представления дискретных данных.
+
* Рекуррентная сеть Gated Recurrent Unit (GRU).
 +
* Автокодировщики. Векторные представления дискретных данных.
 +
* Перенос обучения (transfer learning).
 +
* Самообучение (self-supervised learning).
 +
* Генеративные состязательные сети (GAN, generative adversarial net).
== Линейные композиции, бустинг ==
== Линейные композиции, бустинг ==
Текст лекций: [[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-Compositions-slides.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 08.09.2015}}.
+
Презентация: [[Media:Voron-ML-Compositions-slides.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Основные понятия: [[базовый алгоритм]] ([[алгоритмический оператор]]), [[корректирующая операция]].
* Основные понятия: [[базовый алгоритм]] ([[алгоритмический оператор]]), [[корректирующая операция]].
* [[Взвешенное голосование]].
* [[Взвешенное голосование]].
Строка 284: Строка 297:
* Базовые алгоритмы в бустинге. Решающие пни.
* Базовые алгоритмы в бустинге. Решающие пни.
* ''Варианты бустинга: [[GentleBoost]], [[LogitBoost]], [[BrownBoost]], и другие.''
* ''Варианты бустинга: [[GentleBoost]], [[LogitBoost]], [[BrownBoost]], и другие.''
-
* ''[[Алгоритм AnyBoost]]''.
 
* [[Градиентный бустинг]]. Стохастический градиентный бустинг.
* [[Градиентный бустинг]]. Стохастический градиентный бустинг.
-
* [[Простое голосование]] (комитет большинства). Алгоритм ComBoost. Идентификация нетипичных объектов (выбросов).
+
* [[Алгоритм AnyBoost]].
-
* Преобразование простого голосования во взвешенное.
+
* [[Алгоритм XGBoost]].
-
* Обобщение на большое число классов.
+
-
* ''[[Решающий список]] (комитет старшинства). Алгоритм обучения. Стратегия выбора классов для базовых алгоритмов.''
+
== Эвристические, стохастические, нелинейные композиции ==
== Эвристические, стохастические, нелинейные композиции ==
-
Презентация: [[Media:Voron-ML-Compositions-slides2.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 08.09.2015}}.
+
Презентация: [[Media:Voron-ML-Compositions-slides2.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Стохастические методы: [[бэггинг]] и [[метод случайных подпространств]].
* Стохастические методы: [[бэггинг]] и [[метод случайных подпространств]].
-
* Случайный лес. Анализ смещения и вариации для простого голосования.
+
* [[Простое голосование]] (комитет большинства). Алгоритм ComBoost. Идентификация нетипичных объектов (выбросов).
 +
* Преобразование простого голосования во взвешенное.
 +
* Обобщение на большое число классов.
 +
* Случайный лес.
 +
* Анализ смещения и вариации для простого голосования.
* [[Смесь алгоритмов]] (квазилинейная композиция), [[область компетентности]], примеры функций компетентности.
* [[Смесь алгоритмов]] (квазилинейная композиция), [[область компетентности]], примеры функций компетентности.
* Выпуклые функции потерь. Методы построения смесей: последовательный и иерархический.
* Выпуклые функции потерь. Методы построения смесей: последовательный и иерархический.
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
-
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
 
<!---
<!---
 +
* ''[[Решающий список]] (комитет старшинства). Алгоритм обучения. Стратегия выбора классов для базовых алгоритмов.''
 +
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
=== Метод комитетов ===
=== Метод комитетов ===
* Общее понятие: [[комитет]] системы ограничений. Комитеты большинства, простое и взвешенное голосование (''z,p''-комитеты).
* Общее понятие: [[комитет]] системы ограничений. Комитеты большинства, простое и взвешенное голосование (''z,p''-комитеты).
Строка 327: Строка 342:
== Ранжирование ==
== Ранжирование ==
-
Презентация: [[Media:Voron-ML-Ranking-slides.pdf|(PDF,&nbsp;0,5&nbsp;МБ)]] {{важно|— обновление 14.10.2014}}.
+
Презентация: [[Media:Voron-ML-Ranking-slides.pdf|(PDF,&nbsp;0,5&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Постановка задачи [[Обучение ранжированию|обучения ранжированию]]. Примеры.
* Постановка задачи [[Обучение ранжированию|обучения ранжированию]]. Примеры.
* Признаки в задаче ранжирования поисковой выдачи: текстовые, ссылочные, кликовые. [[TF-IDF]]. [[PageRank]].
* Признаки в задаче ранжирования поисковой выдачи: текстовые, ссылочные, кликовые. [[TF-IDF]]. [[PageRank]].
Строка 335: Строка 350:
== Рекомендательные системы ==
== Рекомендательные системы ==
-
Презентация: [[Media:Voron-ML-CF.pdf|(PDF,&nbsp;0.8&nbsp;МБ)]] {{важно| — обновление 13.11.2016}}.
+
Презентация: [[Media:Voron-ML-CF.pdf|(PDF,&nbsp;0.8&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
* Задачи [[коллаборативная фильтрация|коллаборативной фильтрации]], [[транзакционные данные]] и матрица субъекты—объекты.
* Задачи [[коллаборативная фильтрация|коллаборативной фильтрации]], [[транзакционные данные]] и матрица субъекты—объекты.
* Корреляционные методы user-based, item-based. Задача восстановления пропущенных значений. Меры сходства субъектов и объектов.
* Корреляционные методы user-based, item-based. Задача восстановления пропущенных значений. Меры сходства субъектов и объектов.
Строка 351: Строка 366:
Презентация 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}}.
--->
--->
-
Презентация: [[Media:Voron-ML-TopicModeling-slides.pdf|(PDF,&nbsp;1.6&nbsp;МБ)]] {{важно| — обновление 1.11.2017}}.
+
Презентация: [[Media:Voron-ML-TopicModeling-slides.pdf|(PDF,&nbsp;1.6&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
* Задача [[тематическое моделирование|тематического моделирования]] коллекции текстовых документов.
* Задача [[тематическое моделирование|тематического моделирования]] коллекции текстовых документов.
* [[Вероятностный латентный семантический анализ]] PLSA. [[Метод максимума правдоподобия]]. [[ЕМ-алгоритм]]. Элементарная интерпретация EM-алгоритма.
* [[Вероятностный латентный семантический анализ]] PLSA. [[Метод максимума правдоподобия]]. [[ЕМ-алгоритм]]. Элементарная интерпретация EM-алгоритма.
Строка 362: Строка 377:
* Регуляризаторы декоррелирования и отбора тем.
* Регуляризаторы декоррелирования и отбора тем.
* Внутренние и внешние критерии качества тематических моделей.
* Внутренние и внешние критерии качества тематических моделей.
-
 
-
== Поиск ассоциативных правил ==
 
-
Презентация: [[Media:Voron-ML-AssocRules-slides.pdf|(PDF,&nbsp;1.1&nbsp;МБ)]] {{важно| — обновление 20.10.2015}}.
 
-
* Понятие [[Ассоциативное правило|ассоциативного правила]] и его связь с понятием логической закономерности.
 
-
* Примеры прикладных задач: [[анализ рыночных корзин]], выделение терминов и тематики текстов.
 
-
* [[Алгоритм APriori]]. Два этапа: поиск частых наборов и рекурсивное порождение ассоциативных правил. Недостатки и пути усовершенствования алгоритма APriori.
 
-
* [[Алгоритм FP-growth]]. Понятия FP-дерева и условного FP-дерева. Два этапа поиска частых наборов в FP-growth: построение FP-дерева и рекурсивное порождение частых наборов.
 
-
* Общее представление о динамических и иерархических методах поиска ассоциативных правил.
 
== Обучение с подкреплением ==
== Обучение с подкреплением ==
-
Презентация: [[Media:Voron-ML-RL-slides.pdf|(PDF,&nbsp;1.0&nbsp;МБ)]] {{важно| — обновление 1.11.2017}}.
+
Презентация: [[Media:Voron-ML-RL-slides.pdf|(PDF,&nbsp;1.0&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
* Задача о многоруком бандите. Жадные и эпсилон-жадные стратегии. Метод UCB (upper confidence bound). Стратегия Softmax.
* Задача о многоруком бандите. Жадные и эпсилон-жадные стратегии. Метод UCB (upper confidence bound). Стратегия Softmax.
* Среда для экспериментов.
* Среда для экспериментов.
Строка 387: Строка 394:
== Активное обучение ==
== Активное обучение ==
-
Презентация: [[Media:Voron-ML-AL-slides.pdf|(PDF,&nbsp;1.2&nbsp;МБ)]] {{важно| — обновление 1.11.2017}}.
+
Презентация: [[Media:Voron-ML-AL-slides.pdf|(PDF,&nbsp;1.2&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
* Постановка задачи машинного обучения. Основные стратегии: отбор объектов из выборки и из потока, синтез объектов.
* Постановка задачи машинного обучения. Основные стратегии: отбор объектов из выборки и из потока, синтез объектов.
* Сэмплирование по неуверенности. Почему активное обучение быстрее пассивного.
* Сэмплирование по неуверенности. Почему активное обучение быстрее пассивного.
Строка 398: Строка 405:
* Введение изучающих действий в стратегию активного обучении. Алгоритмы ε-active и EG-active.
* Введение изучающих действий в стратегию активного обучении. Алгоритмы ε-active и EG-active.
* Применение обучения с подкреплением для активного обучения. Активное томпсоновское сэмплирование.
* Применение обучения с подкреплением для активного обучения. Активное томпсоновское сэмплирование.
 +
 +
== Заключительная лекция ==
 +
Презентация: [[Media:Voron-ML-final.pdf|(PDF,&nbsp;2.0&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
 +
 +
Обзор курса. Оптимизационные задачи машинного обучения.
= См. также =
= См. также =

Версия 19:54, 14 декабря 2019

Содержание

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

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

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

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

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

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

На материал данного курса опираются последующие кафедральные курсы.

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

Ниже представлена расширенная программа — в полном объёме она занимает больше, чем могут вместить в себя два семестра. Каждый параграф приблизительно соответствует одной лекции. Курсивом выделен дополнительный материал, который может разбираться на семинарах.

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

Первый семестр

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

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

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

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

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

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

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

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

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

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

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

Презентация: (PDF, 0,7 MБ) — обновление 14.12.2019.

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

Презентация: (PDF, 0,7 MБ) — обновление 14.12.2019.

Прогнозирование временных рядов

Презентация: (PDF, 0,9 MБ) — обновление 14.12.2019.

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

Текст лекций: (PDF, 330 КБ).
Презентация: (PDF, 1,5 МБ) — обновление 14.12.2019.

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

Текст лекций: (PDF, 625 КБ).
Презентация: (PDF, 1.8 МБ) — обновление 14.12.2019.

Факультатив

  • Статистический критерий информативности, точный тест Фишера. Сравнение областей эвристических и статистических закономерностей. Асимптотическая эквивалентность статистического и энтропийного критерия информативности. Разнообразие критериев информативности в (p,n)-пространстве.
  • Решающий пень. Бинаризация признаков. Алгоритм разбиения области значений признака на информативные зоны.
  • Решающий список. Жадный алгоритм синтеза списка.
  • Преобразование решающего дерева в решающий список.

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

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

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

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

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

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

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

Второй семестр

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

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

Нейронные сети глубокого обучения

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

  • Свёрточные нейронные сети (CNN) для изображений. Свёрточный нейрон. Pooling нейрон. Выборка размеченных изображений ImageNet.
  • Свёрточные сети для сигналов, текстов, графов, игр.
  • Рекуррентные нейронные сети (RNN). Обучение рекуррентных сетей: Backpropagation Through Time (BPTT).
  • Сети долгой кратковременной памяти (Long short-term memory, LSTM).
  • Рекуррентная сеть Gated Recurrent Unit (GRU).
  • Автокодировщики. Векторные представления дискретных данных.
  • Перенос обучения (transfer learning).
  • Самообучение (self-supervised learning).
  • Генеративные состязательные сети (GAN, generative adversarial net).

Линейные композиции, бустинг

Текст лекций: (PDF, 1 MБ).
Презентация: (PDF, 0.9 МБ) — обновление 14.12.2019.

Эвристические, стохастические, нелинейные композиции

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

  • Стохастические методы: бэггинг и метод случайных подпространств.
  • Простое голосование (комитет большинства). Алгоритм ComBoost. Идентификация нетипичных объектов (выбросов).
  • Преобразование простого голосования во взвешенное.
  • Обобщение на большое число классов.
  • Случайный лес.
  • Анализ смещения и вариации для простого голосования.
  • Смесь алгоритмов (квазилинейная композиция), область компетентности, примеры функций компетентности.
  • Выпуклые функции потерь. Методы построения смесей: последовательный и иерархический.
  • Построение смеси алгоритмов с помощью EM-подобного алгоритма.

Ранжирование

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

  • Постановка задачи обучения ранжированию. Примеры.
  • Признаки в задаче ранжирования поисковой выдачи: текстовые, ссылочные, кликовые. TF-IDF. PageRank.
  • Критерии качества ранжирования: Precision, MAP, AUC, DCG, NDCG, pFound.
  • Ранговая классификация, OC-SVM.
  • Попарный подход: RankingSVM, RankNet, LambdaRank.

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

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

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

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

Текст лекций: (PDF, 830 КБ).
Презентация: (PDF, 1.6 МБ) — обновление 14.12.2019.

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

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

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

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

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

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

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

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

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

См. также

Литература

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