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

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

(Различия между версиями)
Перейти к: навигация, поиск
(Прогнозирование временных рядов)
м (Метод опорных векторов)
(127 промежуточных версий не показаны.)
Строка 21: Строка 21:
На материал данного курса опираются последующие кафедральные курсы.
На материал данного курса опираются последующие кафедральные курсы.
-
На кафедре ММП ВМиК МГУ параллельно с данным курсом и в дополнение к нему читается спецкурс [[Теория надёжности обучения по прецедентам (курс лекций, К. В. Воронцов)|Теория надёжности обучения по прецедентам]], посвящённый проблемам [[Переобучение|переобучения]] и оценивания [[Обобщающая способность|обобщающей способности]].
+
<!---На&nbsp;кафедре ММП ВМиК МГУ параллельно с данным курсом и в&nbsp;дополнение к&nbsp;нему читается спецкурс [[Теория надёжности обучения по прецедентам (курс лекций, К. В. Воронцов)|Теория надёжности обучения по прецедентам]], посвящённый проблемам [[Переобучение|переобучения]] и оценивания [[Обобщающая способность|обобщающей способности]].--->
От студентов требуются знания курсов линейной алгебры, математического анализа, теории вероятностей. Знание [[Математическая статистика|математической статистики]], [[Методы оптимизации|методов оптимизации]] и какого-либо языка программирования желательно, но не обязательно.
От студентов требуются знания курсов линейной алгебры, математического анализа, теории вероятностей. Знание [[Математическая статистика|математической статистики]], [[Методы оптимизации|методов оптимизации]] и какого-либо языка программирования желательно, но не обязательно.
Строка 31: Строка 31:
=== Замечания для студентов ===
=== Замечания для студентов ===
-
* Видеолекции [http://shad.yandex.ru/lectures/machine_learning.xml ШАД Яндекс].
+
* Видеолекции [https://yandexdataschool.ru/edu-process/courses/machine-learning ШАД Яндекс].
 +
* [https://www.coursera.org/learn/vvedenie-mashinnoe-obuchenie «Введение в машинное обучение» на Курсэре] содержит примерно втрое меньше материала, чем в годовом курсе, представленном на этой странице. Там очень многое упрощено, спрятано, пропущено. Действительно введение.
* На подстранице имеется перечень [[Машинное обучение (курс лекций, К.В.Воронцов)/Вопросы|вопросов к устному экзамену]]. Очень помогает при подготовке к устному экзамену!
* На подстранице имеется перечень [[Машинное обучение (курс лекций, К.В.Воронцов)/Вопросы|вопросов к устному экзамену]]. Очень помогает при подготовке к устному экзамену!
* О найденных ошибках и опечатках [[Служебная: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].
= Первый семестр =
= Первый семестр =
Строка 40: Строка 42:
'''Текст лекций:''' [[Media:Voron-ML-1.pdf|(PDF,&nbsp;3&nbsp;МБ)]] {{важно|— обновление 4.10.2011}}.
'''Текст лекций:''' [[Media:Voron-ML-1.pdf|(PDF,&nbsp;3&nbsp;МБ)]] {{важно|— обновление 4.10.2011}}.
-
=== Основные понятия и примеры прикладных задач ===
+
== Основные понятия и примеры прикладных задач ==
-
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF,&nbsp;0,8&nbsp;МБ)]] {{важно|— обновление 13.02.2014}}.
+
Презентация: [[Media:Voron-ML-Intro-slides.pdf|(PDF,&nbsp;1,4&nbsp;МБ)]] {{важно|— обновление 13.02.2020}}.
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
* Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
-
* Типы задач: [[классификация]], [[регрессия]], [[прогнозирование]], [[кластеризация]]. Примеры прикладных задач.
+
* Типы задач: [[классификация]], [[регрессия]], [[прогнозирование]], [[ранжирование]].
* Основные понятия: [[модель алгоритмов]], [[метод обучения]], [[функция потерь]] и функционал качества, [[принцип минимизации эмпирического риска]], [[обобщающая способность]], [[скользящий контроль]].
* Основные понятия: [[модель алгоритмов]], [[метод обучения]], [[функция потерь]] и функционал качества, [[принцип минимизации эмпирического риска]], [[обобщающая способность]], [[скользящий контроль]].
-
* Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных. [[Полигон алгоритмов классификации]].
+
* Линейные модели регрессии и классификации. Метод наименьших квадратов. Полиномиальная регрессия.
 +
* Примеры прикладных задач.
 +
* Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных.
 +
* Конкурсы по анализу данных [http://kaggle.com kaggle.com]. [[Полигон алгоритмов классификации]].
* [[CRISP-DM]] — межотраслевой стандарт ведения проектов [[Data Mining | интеллектуального анализа данных]].
* [[CRISP-DM]] — межотраслевой стандарт ведения проектов [[Data Mining | интеллектуального анализа данных]].
-
== Метрические методы классификации ==
+
== Линейный классификатор и стохастический градиент ==
-
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF,&nbsp;1,7&nbsp;МБ)]] {{важно|— обновление 20.02.2014}}.
+
-
=== Метод ближайших соседей и его обобщения ===
+
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 05.03.2020}}.
-
* [[Метод ближайших соседей]] (''k''NN) и его обобщения.
+
* [[Линейный классификатор]], модель МакКаллока-Питтса, непрерывные аппроксимации пороговой функции потерь.
-
* Подбор числа ''k'' по критерию скользящего контроля.
+
* [[Метод стохастического градиента]] SG.
-
* Обобщённый [[метрический классификатор]], понятие [[отступ]]а.
+
* [[Метод стохастического среднего градиента]] SAG.
-
* [[Метод потенциальных функций]], градиентный алгоритм.
+
<!--
-
 
+
* Частные случаи: [[адаптивный линейный элемент]] ADALINE, [[перcептрон Розенблатта]], [[правило Хэбба]].
-
=== Отбор эталонов и оптимизация метрики ===
+
-
* Отбор эталонных объектов. Псевдокод: [[алгоритм СТОЛП]].
+
-
* [[Функция конкурентного сходства]], [[алгоритм FRiS-СТОЛП]].
+
-
* [[Функционал полного скользящего контроля]], формула быстрого вычисления для метода 1NN. [[Профиль компактности]]. ''Функция вклада объекта. Отбор эталонных объектов на основе минимизации функционала полного скользящего контроля. Эффективные структуры данных для быстрого поиска ближайших объектов в прямых и обратных окрестностях — [[метрические деревья]].''
+
-
* ''[[Проклятие размерности]]. Задача настройки весов признаков.''
+
-
* ''Концепция вывода на основе прецедентов ([[CBR]]).''
+
-
 
+
-
== Логические методы классификации ==
+
-
Текст лекций: [[Media:Voron-ML-Logic.pdf|(PDF,&nbsp;625&nbsp;КБ)]].<br/>
+
-
Презентация: [[Media:Voron-ML-Logic-slides.pdf|(PDF,&nbsp;1.8&nbsp;МБ)]] {{важно| — обновление 27.02.2014}}.
+
-
 
+
-
=== Понятия закономерности и информативности ===
+
-
* Понятие [[логическая закономерность|логической закономерности]]. Эвристическое, статистическое, энтропийное определение [[информативность|информативности]]. ''Асимптотическая эквивалентность статистического и энтропийного определения.'' Сравнение областей эвристических и статистических закономерностей.
+
-
* Разновидности закономерностей: конъюнкции пороговых предикатов (гиперпараллелепипеды), синдромные правила, шары, гиперплоскости.
+
-
* ''«Градиентный» алгоритм синтеза конъюнкций, частные случаи: жадный алгоритм, [[стохастический локальный поиск]], [[стабилизация]], [[редукция]].''
+
-
* [[Бинаризация признаков]]. Алгоритм разбиения области значений признака на информативные зоны.
+
-
 
+
-
=== Решающие списки и деревья ===
+
-
* [[Решающий список]]. Жадный алгоритм синтеза списка.
+
-
* [[Решающее дерево]]. Псевдокод: жадный [[алгоритм ID3]]. Недостатки алгоритма и способы их устранения. Проблема переобучения.
+
-
* [[Редукция решающих деревьев]]: [[предредукция]] и [[постредукция]].
+
-
* Преобразование решающего дерева в решающий список.
+
-
* ''[[Алгоритм LISTBB]].''
+
-
* [[Небрежные решающие деревья]] (oblivious decision tree).
+
-
 
+
-
== Линейные методы классификации ==
+
-
 
+
-
=== Градиентные методы ===
+
-
Презентация: [[Media:Voron-ML-Lin-SG.pdf|(PDF,&nbsp;1,6&nbsp;МБ)]] {{важно|— обновление 06.03.2014}}.
+
-
* [[Линейный классификатор]], непрерывные аппроксимации пороговой функции потерь. Связь с методом максимума правдоподобия.
+
-
* [[Метод стохастического градиента]] и частные случаи: [[адаптивный линейный элемент]] ADALINE, [[перcептрон Розенблатта]], [[правило Хэбба]].
+
* [[Теорема Новикова]] о сходимости. Доказательство теоремы Новикова
* [[Теорема Новикова]] о сходимости. Доказательство теоремы Новикова
 +
-->
* Эвристики: инициализация весов, порядок предъявления объектов, выбор величины градиентного шага, «выбивание» из локальных минимумов.
* Эвристики: инициализация весов, порядок предъявления объектов, выбор величины градиентного шага, «выбивание» из локальных минимумов.
-
* [[Метод стохастического среднего градиента]] SAG.
+
* Проблема мультиколлинеарности и переобучения, регуляризация или [[редукция весов]] (weight decay).
-
* Проблема мультиколлинеарности и переобучения, [[редукция весов]] (weight decay).
+
* Вероятностная постановка задачи классификации. Принцип максимума правдоподобия.
-
* Байесовская регуляризация. Принцип максимума совместного правдоподобия данных и модели. Квадратичный (гауссовский) и лапласовский регуляризаторы.
+
* Вероятностная интерпретация регуляризации, совместное правдоподобие данных и модели. Принцип максимума апостериорной вероятности.
-
* Настройка порога решающего правила по критерию числа ошибок I и II рода. [[Кривая ошибок]] (ROC curve). Алгоритм эффективного построения ROC-кривой.
+
* Гауссовский и лапласовский регуляризаторы.
 +
* [[Логистическая регрессия]]. Принцип максимума правдоподобия и логарифмическая функция потерь. [[Метод стохастического градиента]] для логарифмической функции потерь. Многоклассовая логистическая регрессия. Регуляризованная логистическая регрессия. [[Калибровка Платта]].
 +
<!--
 +
* Функции потерь, зависящие от цены ошибок. [[Кривая ошибок]] (ROC curve). Алгоритм эффективного построения ROC-кривой.
* Градиентный метод максимизации AUC.
* Градиентный метод максимизации AUC.
 +
-->
 +
 +
== Метрические методы классификации и регрессии ==
 +
Презентация: [[Media:Voron-ML-Metric-slides.pdf|(PDF,&nbsp;3,2&nbsp;МБ)]] {{важно|— обновление 05.03.2020}}.
-
=== Метод опорных векторов ===
+
* Гипотезы компактности и непрерывности.
-
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF,&nbsp;0,8&nbsp;МБ)]] {{важно|— обновление 13.03.2014}}.
+
* Обобщённый [[метрический классификатор]].
 +
* [[Метод ближайших соседей]] ''k''NN и его обобщения. Подбор числа ''k'' по критерию скользящего контроля.
 +
* [[Метод окна Парзена]] с постоянной и переменной шириной окна.
 +
* [[Метод потенциальных функций]] и его связь с линейной моделью классификации.
 +
* Задача отбора эталонов. [[Полный скользящий контроль]] (CCV), формула быстрого вычисления для метода 1NN. [[Профиль компактности]].
 +
* Отбор эталонных объектов на основе минимизации функционала полного скользящего контроля.
 +
* Непараметрическая регрессия. Локально взвешенный [[метод наименьших квадратов]]. [[Ядерное сглаживание]].
 +
* [[Оценка Надарая-Ватсона]] с постоянной и переменной шириной окна. Выбор функции ядра и ширины окна сглаживания.
 +
* Задача отсева выбросов. Робастная непараметрическая регрессия. [[Алгоритм LOWESS]].
 +
<!--
 +
* ''[[Функция конкурентного сходства]], [[алгоритм FRiS-СТОЛП]]''.
 +
* ''Эффективные структуры данных для быстрого поиска ближайших объектов в прямых и обратных окрестностях — [[метрические деревья]].''
 +
* ''Понятие [[отступ]]а. [[Алгоритм СТОЛП]].''
 +
* ''Задача отбора признаков. Жадный алгоритм построения метрики.''
 +
* ''Концепция вывода на основе прецедентов ([[CBR]]).''
 +
-->
 +
 
 +
== Метод опорных векторов ==
 +
Презентация: [[Media:Voron-ML-Lin-SVM.pdf|(PDF,&nbsp;1,1&nbsp;МБ)]] {{важно|— обновление 24.03.2020}}.
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Оптимальная разделяющая гиперплоскость. Понятие [[зазор]]а между классами (margin).
* Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
* Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
Строка 105: Строка 104:
* [[Функция ядра]] (kernel functions), [[спрямляющее пространство]], [[теорема Мерсера]].
* [[Функция ядра]] (kernel functions), [[спрямляющее пространство]], [[теорема Мерсера]].
* Способы конструктивного построения ядер. Примеры ядер.
* Способы конструктивного построения ядер. Примеры ядер.
 +
* SVM-регрессия.
 +
* Регуляризации для отбора признаков: [[LASSO SVM]], [[Elastic Net SVM]], [[SFM]], [[RFM]].
 +
* Метод релевантных векторов [[RVM]]
 +
<!---
* ''Обучение SVM методом активных ограничений. [[Алгоритм INCAS]]. [[Алгоритм SMO]].''
* ''Обучение SVM методом активных ограничений. [[Алгоритм INCAS]]. [[Алгоритм SMO]].''
* ''ню-SVM.''
* ''ню-SVM.''
-
* ''SVM-регрессия.''
+
--->
-
* Метод релевантных векторов [[RVM]]
+
-
* Регуляризации для отбора признаков: [[LASSO SVM]], [[Elastic Net SVM]], [[SFM]], [[RFM]].
+
-
 
+
-
== Методы регрессионного анализа ==
+
-
=== Многомерная линейная регрессия ===
+
== Многомерная линейная регрессия ==
-
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF,&nbsp;0,7&nbsp;MБ)]] {{важно|— обновление 20.03.2014}}.
+
Презентация: [[Media:Voron-ML-regression-slides.pdf|(PDF,&nbsp;0,7&nbsp;MБ)]] {{важно|— обновление 14.12.2019}}.
* Задача регрессии, [[многомерная линейная регрессия]].
* Задача регрессии, [[многомерная линейная регрессия]].
* [[Метод наименьших квадратов]], его вероятностный смысл и геометрический смысл.
* [[Метод наименьших квадратов]], его вероятностный смысл и геометрический смысл.
* [[Сингулярное разложение]].
* [[Сингулярное разложение]].
* Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]].
* Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]].
-
* [[Регуляризация]]. [[Гребневая регрессия]]. [[Лассо Тибширани]], сравнение с гребневой регрессией.
+
* [[Регуляризация]]. [[Гребневая регрессия]] через сингулярное разложение.
 +
* Методы отбора признаков: [[Лассо Тибширани]], [[Elastic Net]], сравнение с гребневой регрессией.
* [[Метод главных компонент]] и [[декоррелирующее преобразование]] Карунена-Лоэва, его связь с сингулярным разложением.
* [[Метод главных компонент]] и [[декоррелирующее преобразование]] Карунена-Лоэва, его связь с сингулярным разложением.
 +
* Спектральный подход к решению задачи наименьших квадратов.
 +
* Задачи и методы низкоранговых матричных разложений.
<!---
<!---
=== Шаговая регрессия ===
=== Шаговая регрессия ===
Строка 128: Строка 130:
-->
-->
-
=== Нелинейная параметрическая регрессия ===
+
== Нелинейная регрессия ==
-
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF,&nbsp;0,7&nbsp;MБ)]] {{важно|— обновление 26.03.2014}}.
+
Презентация: [[Media:Voron-ML-regress-non-slides.pdf|(PDF,&nbsp;0,7&nbsp;MБ)]] {{важно|— обновление 14.12.2019}}.
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
* [[Метод Ньютона-Рафсона]], [[метод Ньютона-Гаусса]].
-
* ''[[Обобщённая линейная модель]] (GLM)''.
+
* Обобщённая аддитивная модель (GAM): [[метод настройки с возвращениями]] (backfitting) Хасти-Тибширани.
-
* Одномерные нелинейные преобразования признаков: [[метод настройки с возвращениями]] (backfitting) Хасти-Тибширани.
+
* [[Логистическая регрессия]]. [[Метод наименьших квадратов с итеративным пересчётом весов]] (IRLS). Пример прикладной задачи: кредитный скоринг. Бинаризация признаков. Скоринговые карты и оценивание вероятности дефолта. ''Риск кредитного портфеля банка.''
-
* Неквадратичные функци потерь. Робастная регрессия, функция Мешалкина. Несимметричные функции потерь, пример прикладной задачи: прогнозирование потребительского спроса.
+
* [[Обобщённая линейная модель]] (GLM). Экспоненциальное семейство распределений.
-
 
+
* Неквадратичные функции потерь. Метод наименьших модулей. Квантильная регрессия. Пример прикладной задачи: прогнозирование потребительского спроса.
-
=== Непараметрическая регрессия ===
+
* Робастная регрессия, функции потерь с горизонтальными асимптотами.
-
* [[Сглаживание]]. Локально взвешенный [[метод наименьших квадратов]] и [[оценка Надарая-Ватсона]].
+
<!---
-
* Выбор функции ядра. Выбор ширины окна сглаживания. Сглаживание с переменной шириной окна.
+
* [[Логистическая регрессия]]. Гипотеза экспоненциальности функций правдоподобия классов. Теорема о линейности байесовского оптимального классификатора. Оценивание апостериорных вероятностей классов с помощью сигмоидной функции активации.
-
* Проблема выбросов и робастная непараметрическая регрессия. [[Алгоритм LOWESS]].
+
--->
-
* ''Доверительный интервал значения регрессии в точке.''
+
-
* ''Проблемы «проклятия размерности» и выбора метрики.''
+
-
=== Прогнозирование временных рядов ===
+
== Прогнозирование временных рядов ==
-
Презентация: [[Media:Voron-ML-forecasting-slides.pdf|(PDF,&nbsp;0,9&nbsp;MБ)]] {{важно|— обновление 03.04.2014}}.
+
Презентация: [[Media:Voron-ML-forecasting-slides.pdf|(PDF,&nbsp;0,9&nbsp;MБ)]] {{важно|— обновление 14.12.2019}}.
* Задача прогнозирования временных рядов. Примеры приложений.
* Задача прогнозирования временных рядов. Примеры приложений.
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
* [[Экспоненциальное сглаживание|Экспоненциальное скользящее среднее]]. [[Модель Хольта]]. [[Модель Тейла-Вейджа]]. [[Модель Хольта-Уинтерса]].
* Адаптивная авторегрессионная модель.
* Адаптивная авторегрессионная модель.
* [[Следящий контрольный сигнал]]. [[Модель Тригга-Лича]].
* [[Следящий контрольный сигнал]]. [[Модель Тригга-Лича]].
-
* Адаптивная селективная модель. Адаптивная композиция моделей. Адаптация весов с регуляризацией.
+
* Адаптивная селективная модель. Адаптивная композиция моделей.
 +
* Локальная адаптация весов с регуляризацией.
-
== Байесовские методы классификации ==
+
== Критерии выбора моделей и методы отбора признаков ==
-
Презентация: [[Media:Voron-ML-Bayes-slides.pdf|(PDF,&nbsp;2,4&nbsp;МБ)]] {{важно|— обновление 6.03.2013}}.
+
Текст лекций: [[Media:Voron-ML-Modeling.pdf|(PDF,&nbsp;330&nbsp;КБ)]].<br/>
 +
Презентация: [[Media:Voron-ML-Quality-slides.pdf|(PDF,&nbsp;1,5&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
 +
 
 +
* Критерии качества классификации: чувствительность и специфичность, ROC-кривая и AUC, точность и полнота, AUC-PR.
 +
* Внутренние и [[внешние критерии]]. Эмпирические и аналитические критерии.
 +
* [[Скользящий контроль]], разновидности эмпирических оценок скользящего контроля. [[Критерий непротиворечивости]].
 +
* Разновидности аналитических оценок. [[Регуляризация]]. [[Критерий Акаике]] (AIC). [[Байесовский информационный критерий]] (BIC). Оценка Вапника-Червоненкиса.
 +
* Сложность задачи [[отбор признаков|отбора признаков]]. [[Полный перебор]].
 +
* [[Метод добавления и удаления]], шаговая регрессия.
 +
* [[Поиск в глубину]], метод ветвей и границ.
 +
* Усечённый [[поиск в ширину]], [[многорядный итерационный алгоритм МГУА]].
 +
* [[Генетический алгоритм]], его сходство с МГУА.
 +
* [[Случайный поиск]] и [[Случайный поиск с адаптацией]] (СПА).
 +
<!---
 +
* ''Агрегированные и многоступенчатые критерии''.
 +
* ''Статистические критерии: [[коэффициент детерминации]], [[критерий Фишера]], [[анализ регрессионных остатков]].''
 +
== Теория обобщающей способности ==
 +
* [[Теория Вапника-Червоненкиса]]. Функционал равномерного отклонения частот ошибок. [[Функция роста]], [[ёмкость]] семейства алгоритмов. [[Структурная минимизация риска]].
 +
* ''Оценка «бритвы Оккама»''.
 +
* ''[[Радемахеровская сложность]] семейства алгоритмов.''
 +
* [[Комбинаторная теория переобучения (виртуальный семинар)|Комбинаторная теория переобучения]]. Функционал вероятности переобучения. Граф расслоения-связности. Оценки расслоения-связности.
 +
--->
-
=== Оптимальный байесовский классификатор ===
+
== Логические методы классификации ==
-
* Принцип максимума апостериорной вероятности.
+
Текст лекций: [[Media:Voron-ML-Logic.pdf|(PDF,&nbsp;625&nbsp;КБ)]].<br/>
-
* Функционал среднего риска. Ошибки I и II рода.
+
Презентация: [[Media:Voron-ML-Logic-slides.pdf|(PDF,&nbsp;1.8&nbsp;МБ)]] {{важно| — обновление 05.03.2030}}.
-
* Теорема об оптимальности байесовского классификатора.
+
-
* [[Оценивание плотности распределения]]: три основных подхода.
+
-
* [[Наивный байесовский классификатор]].
+
-
=== Непараметрическое оценивание плотности ===
+
* Понятие [[логическая закономерность|логической закономерности]].
-
* [[Ядерная оценка плотности Парзена-Розенблатта]]. Одномерный и многомерный случаи.
+
* Параметрические семейства закономерностей: конъюнкции пороговых правил, синдромные правила, шары, гиперплоскости.
-
* [[Метод парзеновского окна]].
+
* Переборные алгоритмы синтеза конъюнкций: [[стохастический локальный поиск]], [[стабилизация]], [[редукция]].
-
* Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
+
* Двухкритериальный отбор информативных закономерностей, парето-оптимальный фронт в (p,n)-пространстве.
-
* Робастное оценивание плотности.
+
* [[Решающее дерево]]. Жадная нисходящая стратегия «разделяй и властвуй». [[Алгоритм ID3]]. Недостатки жадной стратегии и способы их устранения. Проблема переобучения.
-
* Непараметрический наивный байесовский классификатор.
+
* Вывод критериев ветвления. Мера нечистоты (impurity) распределения. Энтропийный критерий, критерий Джини.
 +
* [[Редукция решающих деревьев]]: [[предредукция]] и [[постредукция]]. [[Алгоритм C4.5]].
 +
* Деревья регрессии. [[Алгоритм CART]].
 +
* [[Небрежные решающие деревья]] (oblivious decision tree).
 +
* Решающий лес. [[Случайный лес]] (Random Forest).
-
=== Параметрическое оценивание плотности ===
+
'''Факультатив'''
-
* [[Нормальный дискриминантный анализ]]. [[Многомерное нормальное распределение]], геометрическая интерпретация. Выборочные оценки параметров многомерного нормального распределения.
+
* Статистический критерий информативности, [[точный тест Фишера]]. Сравнение областей эвристических и статистических закономерностей. Асимптотическая эквивалентность статистического и энтропийного критерия информативности. Разнообразие критериев информативности в (p,n)-пространстве.
-
* ''Матричное дифференцирование. Вывод оценок параметров многомерного нормального распределения.''
+
* Решающий пень. [[Бинаризация признаков]]. Алгоритм разбиения области значений признака на информативные зоны.
 +
* [[Решающий список]]. Жадный алгоритм синтеза списка.
 +
* Преобразование решающего дерева в решающий список.
 +
 
 +
== Поиск ассоциативных правил ==
 +
Презентация: [[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;МБ)]] {{важно|— обновление 14.12.2019}}.
 +
 
 +
* Принцип максимума апостериорной вероятности. Теорема об оптимальности байесовского классификатора.
 +
* [[Оценивание плотности распределения]]: три основных подхода.
 +
* [[Наивный байесовский классификатор]].
 +
* Непараметрическое оценивание плотности. [[Ядерная оценка плотности Парзена-Розенблатта]]. Одномерный и многомерный случаи.
 +
* [[Метод парзеновского окна]]. Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
 +
* Параметрическое оценивание плотности. [[Нормальный дискриминантный анализ]].
 +
* [[Многомерное нормальное распределение]], геометрическая интерпретация. Выборочные оценки параметров многомерного нормального распределения.
* [[Квадратичный дискриминант]]. Вид разделяющей поверхности. [[Подстановочный алгоритм]], его недостатки и способы их устранения.
* [[Квадратичный дискриминант]]. Вид разделяющей поверхности. [[Подстановочный алгоритм]], его недостатки и способы их устранения.
-
* [[Линейный дискриминант Фишера]]. Связь с [[метод наименьших квадратов|методом наименьших квадратов]].
+
* [[Линейный дискриминант Фишера]].
* Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]]. [[Регуляризация]] ковариационной матрицы.
* Проблемы [[мультиколлинеарность|мультиколлинеарности]] и [[переобучение|переобучения]]. [[Регуляризация]] ковариационной матрицы.
-
* ''Робастное оценивание. Цензурирование выборки (отсев объектов-выбросов).''
 
* Параметрический наивный байесовский классификатор.
* Параметрический наивный байесовский классификатор.
-
* Жадное добавление признаков в линейном дискриминанте, ''[[метод редукции размерности]] Шурыгина.''
 
-
 
-
=== Разделение смеси распределений ===
 
* [[Смесь распределений]].
* [[Смесь распределений]].
-
* [[EM-алгоритм]]: основная идея, понятие скрытых переменных. «Вывод» алгоритма без обоснования сходимости. Псевдокод EM-алгоритма. Критерий останова. Выбор начального приближения. Выбор числа компонентов смеси.
+
* [[EM-алгоритм]] как метод простых итераций для решения системы нелинейных уравнений.
-
* Стохастический EM-алгоритм.
+
* Выбор числа компонентов смеси. Пошаговая стратегия. Априорное распределение Дирихле.
* Смесь многомерных нормальных распределений. [[Сеть радиальных базисных функций]] (RBF) и применение EM-алгоритма для её настройки.
* Смесь многомерных нормальных распределений. [[Сеть радиальных базисных функций]] (RBF) и применение EM-алгоритма для её настройки.
-
* Сопоставление RBF-сети и SVM с гауссовским ядром.
+
* Сравнение 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}}.
-
* [[Логистическая регрессия]]. Принцип максимума правдоподобия и логарифмическая функция потерь.
+
* Постановка задачи [[кластеризация|кластеризации]]. Примеры прикладных задач. Типы кластерных структур.
-
* [[Метод стохастического градиента]] для логарифмической функции потерь. Сглаженное правило Хэбба.
+
* Постановка задачи Semisupervised Learning, примеры приложений.
-
* [[Метод наименьших квадратов с итеративным пересчётом весов]] (IRLS).
+
* Оптимизационные постановки задач кластеризации и частичного обучения.
-
* Пример прикладной задачи: кредитный скоринг. Бинаризация признаков. Скоринговые карты и оценивание вероятности дефолта. ''Риск кредитного портфеля банка.''
+
* [[Алгоритм k-средних]] и [[ЕМ-алгоритм]] для разделения гауссовской смеси.
 +
* [[Графовые алгоритмы кластеризации]]. Выделение связных компонент. [[Кратчайший незамкнутый путь]].
 +
* [[Алгоритм ФОРЭЛ]].
 +
* [[Алгоритм DBSCAN]].
 +
* [[Агломеративная кластеризация]], [[Алгоритм Ланса-Вильямса]] и его частные случаи.
 +
* Алгоритм построения [[дендрограмма|дендрограммы]]. Определение числа кластеров.
 +
* Свойства сжатия/растяжения, монотонности и редуктивности. Псевдокод редуктивной версии алгоритма.
 +
* Простые эвристические методы частичного обучения: self-training, co-training, co-learning.
 +
* Трансдуктивный метод опорных векторов TSVM.
 +
* Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
 +
<!--
 +
* ''Потоковые (субквадратичные) алгоритмы кластеризации.''
 +
* [[Многомерное шкалирование]], примеры прикладных задач.
 +
* Субквадратичный алгоритм, псевдокод. Минимизация функционала стресса методом Ньютона-Рафсона.
 +
* Визуализация: [[карта сходства]], [[диаграмма Шепарда]].
 +
* Совмещение многомерного шкалирования и иерархической кластеризации.
 +
* [[Алгоритм t-SNE]]
 +
-->
= Второй семестр =
= Второй семестр =
-
== Нейросетевые методы классификации и регрессии ==
+
== Нейронные сети: градиентные методы оптимизации ==
-
Презентация: [[Media:Voron-ML-NeuralNets-slides.pdf|(PDF,&nbsp;1,8&nbsp;МБ)]] {{важно|— обновление 16.04.2012}}.
+
Презентация: [[Media:Voron-ML-NeuralNets1-2018-slides.pdf|(PDF,&nbsp;1,4&nbsp;МБ)]] {{важно|— обновление 23.09.2019}}.
-
 
+
-
=== Многослойные нейронные сети ===
+
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
* Биологический нейрон, [[модель МакКаллока-Питтса]] как [[линейный классификатор]]. Функции активации.
-
* Проблема полноты. [[Задача исключающего или]]. Полнота двухслойных сетей в пространстве булевых функций. Теоремы Колмогорова, Стоуна, Горбаня (без доказательства).
+
* Проблема полноты. [[Задача исключающего или]]. Полнота двухслойных сетей в пространстве булевых функций.
 +
<!--* ''Теоремы Колмогорова, Стоуна, Горбаня (без доказательства).''-->
* [[Алгоритм обратного распространения ошибок]].
* [[Алгоритм обратного распространения ошибок]].
-
* Эвристики: формирование начального приближения, ускорение сходимости, [[диагональный метод Левенберга-Марквардта]]. Проблема [[паралич сети|«паралича» сети]].
+
* Быстрые методы стохастического градиента: Поляка, Нестерова, AdaGrad, RMSProp, AdaDelta, Adam, Nadam, [[диагональный метод Левенберга-Марквардта]].
-
* Метод послойной настройки сети.
+
* Проблема взрыва градиента и эвристика gradient clipping.
 +
* Метод случайных отключений нейронов (Dropout). Интерпретации Dropout. Обратный Dropout и L2-регуляризация.
 +
* Функции активации ReLU и PReLU. Проблема [[паралич сети|«паралича» сети]].
 +
* Эвристики для формирования начального приближения. Метод послойной настройки сети.
* Подбор структуры сети: методы постепенного усложнения сети, [[оптимальное прореживание нейронных сетей]] (optimal brain damage).
* Подбор структуры сети: методы постепенного усложнения сети, [[оптимальное прореживание нейронных сетей]] (optimal brain damage).
 +
<!--* [[Нейронная сеть Кохонена]]. [[Конкурентное обучение]], стратегии WTA и WTM.
 +
* [[Самоорганизующаяся карта Кохонена]]. Применение для визуального анализа данных. Искусство интерпретации карт Кохонена.* [[Сети встречного распространения]], их применение для кусочно-постоянной и гладкой аппроксимации функций.
 +
-->
-
== Композиционные методы классификации и регрессии ==
+
== Нейронные сети глубокого обучения ==
-
Текст лекций: [[Media:Voron-ML-Compositions.pdf|(PDF,&nbsp;1&nbsp;MБ)]].<br/>
+
Презентация: [[Media:Voron-ML-DeepLearning-slides.pdf|(PDF,&nbsp;3,4&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
-
Презентация: [[Media:Voron-ML-Compositions-slides.pdf|(PDF,&nbsp;1.1&nbsp;МБ)]] {{важно|— обновление 04.03.2014}}.
+
* Свёрточные нейронные сети (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).
-
=== Линейные композиции, бустинг ===
+
== Линейные композиции, бустинг ==
 +
Текст лекций: [[Media:Voron-ML-Compositions.pdf|(PDF,&nbsp;1&nbsp;MБ)]].<br/>
 +
Презентация: [[Media:Voron-ML-Compositions-slides.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
* Основные понятия: [[базовый алгоритм]] ([[алгоритмический оператор]]), [[корректирующая операция]].
* Основные понятия: [[базовый алгоритм]] ([[алгоритмический оператор]]), [[корректирующая операция]].
* [[Взвешенное голосование]].
* [[Взвешенное голосование]].
* [[Алгоритм AdaBoost]]. Экспоненциальная аппроксимация пороговой функции потерь. Процесс последовательного обучения базовых алгоритмов. Теорема о сходимости [[бустинг]]а.
* [[Алгоритм AdaBoost]]. Экспоненциальная аппроксимация пороговой функции потерь. Процесс последовательного обучения базовых алгоритмов. Теорема о сходимости [[бустинг]]а.
 +
* Обобщающая способность бустинга.
* Базовые алгоритмы в бустинге. Решающие пни.
* Базовые алгоритмы в бустинге. Решающие пни.
* ''Варианты бустинга: [[GentleBoost]], [[LogitBoost]], [[BrownBoost]], и другие.''
* ''Варианты бустинга: [[GentleBoost]], [[LogitBoost]], [[BrownBoost]], и другие.''
-
* [[Алгоритм AnyBoost]]. [[Градиентный бустинг]].
+
* [[Градиентный бустинг]]. Стохастический градиентный бустинг.
 +
* [[Алгоритм AnyBoost]].
 +
* [[Алгоритм XGBoost]].
-
=== Эвристические и стохастические методы ===
+
== Эвристические, стохастические, нелинейные композиции ==
-
* [[Простое голосование]] (комитет большинства). Эвристический алгоритм. Идентификация нетипичных объектов (выбросов). Обобщение на большое число классов.
+
Презентация: [[Media:Voron-ML-Compositions-slides2.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
-
* ''[[Решающий список]] (комитет старшинства). Эвристический алгоритм. Стратегия выбора классов для базовых алгоритмов.''
+
* Стохастические методы: [[бэггинг]] и [[метод случайных подпространств]].
* Стохастические методы: [[бэггинг]] и [[метод случайных подпространств]].
 +
* [[Простое голосование]] (комитет большинства). Алгоритм ComBoost. Идентификация нетипичных объектов (выбросов).
 +
* Преобразование простого голосования во взвешенное.
 +
* Обобщение на большое число классов.
 +
* Случайный лес.
 +
* Анализ смещения и вариации для простого голосования.
 +
* [[Смесь алгоритмов]] (квазилинейная композиция), [[область компетентности]], примеры функций компетентности.
 +
* Выпуклые функции потерь. Методы построения смесей: последовательный и иерархический.
 +
* Построение смеси алгоритмов с помощью EM-подобного алгоритма.
<!---
<!---
 +
* ''[[Решающий список]] (комитет старшинства). Алгоритм обучения. Стратегия выбора классов для базовых алгоритмов.''
 +
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
=== Метод комитетов ===
=== Метод комитетов ===
* Общее понятие: [[комитет]] системы ограничений. Комитеты большинства, простое и взвешенное голосование (''z,p''-комитеты).
* Общее понятие: [[комитет]] системы ограничений. Комитеты большинства, простое и взвешенное голосование (''z,p''-комитеты).
Строка 239: Строка 335:
* ''[[Чередующиеся решающие деревья]] (alternating decision tree).''
* ''[[Чередующиеся решающие деревья]] (alternating decision tree).''
* Примеры прикладных задач: кредитный скоринг, прогнозирование ухода клиентов.
* Примеры прикладных задач: кредитный скоринг, прогнозирование ухода клиентов.
-
--->
 
-
 
=== Алгоритмы вычисления оценок ===
=== Алгоритмы вычисления оценок ===
* [[Принцип частичной прецедентности]]. Структура [[Алгоритмы вычисления оценок|Алгоритмов вычисления оценок]].
* [[Принцип частичной прецедентности]]. Структура [[Алгоритмы вычисления оценок|Алгоритмов вычисления оценок]].
Строка 247: Строка 341:
* Проблема оптимизации АВО. АВО как композиция метрических закономерностей.
* Проблема оптимизации АВО. АВО как композиция метрических закономерностей.
* Применение бустинга, ТЭМП и СПА для оптимизации АВО.
* Применение бустинга, ТЭМП и СПА для оптимизации АВО.
 +
--->
-
=== Нелинейные алгоритмические композиции ===
+
== Ранжирование ==
-
* [[Смесь экспертов]], [[область компетентности]] алгоритма.
+
Презентация: [[Media:Voron-ML-Ranking-slides.pdf|(PDF,&nbsp;0,5&nbsp;МБ)]] {{важно|— обновление 14.12.2019}}.
-
* Выпуклые функции потерь. Методы построения смесей: последовательный и иерархический.
+
* Постановка задачи [[Обучение ранжированию|обучения ранжированию]]. Примеры.
-
* Построение смесей экспертов с помощью EM-алгоритма.
+
* Признаки в задаче ранжирования поисковой выдачи: текстовые, ссылочные, кликовые. [[TF-IDF]]. [[PageRank]].
-
* ''Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.''
+
* Критерии качества ранжирования: Precision, MAP, AUC, DCG, NDCG, pFound.
 +
* Ранговая классификация, OC-SVM.
 +
* Попарный подход: RankingSVM, RankNet, LambdaRank.
-
== Критерии выбора моделей и методы отбора признаков ==
+
== Рекомендательные системы ==
-
Текст лекций: [[Media:Voron-ML-Modeling.pdf|(PDF,&nbsp;330&nbsp;КБ)]].<br/>
+
Презентация: [[Media:Voron-ML-CF.pdf|(PDF,&nbsp;0.8&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
-
Презентация: [[Media:Voron-ML-Modeling-slides.pdf|(PDF,&nbsp;2,5&nbsp;МБ)]] {{важно|— обновление 17.03.2014}}.
+
* Задачи [[коллаборативная фильтрация|коллаборативной фильтрации]], [[транзакционные данные]] и матрица субъекты—объекты.
-
 
+
* Корреляционные методы user-based, item-based. Задача восстановления пропущенных значений. Меры сходства субъектов и объектов.
-
=== Задачи оценивания и выбора моделей ===
+
* ''Латентные методы на основе [[би-кластеризация|би-кластеризации]]. [[Алгоритм Брегмана]].''
-
* Внутренние и [[внешние критерии]].
+
* Латентные методы на основе матричных разложений. [[Метод главных компонент]] для разреженных данных (LFM, Latent Factor Model). [[Метод стохастического градиента]].
-
* Эмпирические и аналитические оценки функционала полного скользящего контроля.
+
* Неотрицательные матричные разложения. Метод чередующихся наименьших квадратов ALS.
-
* [[Скользящий контроль]], разновидности эмпирических оценок скользящего контроля. [[Критерий непротиворечивости]]. [[Регуляризация]]. [[Критерий Акаике]] (AIC). [[Байесовский информационный критерий]] (BIC).
+
* Модель с учётом неявной информации (implicit feedback).
-
* ''Статистические критерии: [[коэффициент детерминации]], [[критерий Фишера]], [[анализ регрессионных остатков]].''
+
* Рекомендации с учётом дополнительных признаковых данных. Линейная и квадратичная регрессионные модели, [[libFM]].
-
* Агрегированные и многоступенчатые критерии.
+
* Измерение качества рекомендаций. Меры разнообразия (diversity), новизны (novelty), покрытия (coverage), догадливости (serendipity).
-
 
+
-
=== Теория обобщающей способности ===
+
-
* [[Теория Вапника-Червоненкиса]]. Функционал равномерного отклонения частот ошибок. [[Функция роста]], [[ёмкость]] семейства алгоритмов. [[Структурная минимизация риска]].
+
-
* ''Оценка «бритвы Оккама»''.
+
-
* ''[[Радемахеровская сложность]] семейства алгоритмов.''
+
-
* [[Комбинаторная теория переобучения (виртуальный семинар)|Комбинаторная теория переобучения]]. Функционал вероятности переобучения. Граф расслоения-связности. Оценки расслоения-связности.
+
-
 
+
-
=== Методы отбора признаков ===
+
-
* Сложность задачи [[отбор признаков|отбора признаков]]. [[Полный перебор]].
+
-
* [[Метод добавления и удаления]], шаговая регрессия.
+
-
* [[Поиск в глубину]], метод ветвей и границ.
+
-
* Усечённый [[поиск в ширину]], [[многорядный итерационный алгоритм МГУА]].
+
-
* [[Генетический алгоритм]], его сходство с МГУА.
+
-
* [[Случайный поиск]] и [[Случайный поиск с адаптацией]] (СПА).
+
-
 
+
-
== Обучение без учителя ==
+
-
Презентация: [[Media:Voron-ML-Clustering-slides.pdf|(PDF,&nbsp;1,0&nbsp;МБ)]] {{важно|— обновление 24.04.2012}}.
+
-
 
+
-
=== Кластеризация ===
+
-
* Постановка задачи [[кластеризация|кластеризации]]. Примеры прикладных задач. Типы кластерных структур.
+
-
* [[Графовые алгоритмы кластеризации]]. Выделение связных компонент. [[Кратчайший незамкнутый путь]].
+
-
* [[Алгоритм ФОРЭЛ]].
+
-
* Функционалы качества кластеризации.
+
-
* Статистические алгоритмы: [[EM-алгоритм]] и [[Алгоритм k средних]] (k-means).
+
-
 
+
-
=== Сети Кохонена ===
+
-
* [[Нейронная сеть Кохонена]]. [[Конкурентное обучение]], стратегии WTA и WTM.
+
-
* [[Самоорганизующаяся карта Кохонена]]. Применение для визуального анализа данных. Искусство интерпретации карт Кохонена.
+
-
* [[Сети встречного распространения]], их применение для кусочно-постоянной и гладкой аппроксимации функций.
+
-
 
+
-
=== Таксономия ===
+
-
* [[Агломеративная кластеризация]], [[Алгоритм Ланса-Вильямса]] и его частные случаи.
+
-
* Алгоритм построения [[дендрограмма|дендрограммы]]. Определение числа кластеров.
+
-
* Свойства сжатия/растяжения, монотонности и редуктивности. Псевдокод редуктивной версии алгоритма.
+
-
* ''Потоковые (субквадратичные) алгоритмы кластеризации.''
+
 +
== Тематическое моделирование ==
 +
Текст лекций: [[Media:Voron-ML-TopicModels.pdf|(PDF,&nbsp;830&nbsp;КБ)]].<br/>
<!---
<!---
-
=== Многомерное шкалирование ===
+
Презентация 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}}.
-
* Субквадратичный алгоритм, псевдокод. Минимизация функционала стресса методом Ньютона-Рафсона.
+
-
* Визуализация: [[карта сходства]], [[диаграмма Шепарда]].
+
-
* Совмещение многомерного шкалирования и иерархической кластеризации.
+
--->
--->
 +
Презентация: [[Media:Voron-ML-TopicModeling-slides.pdf|(PDF,&nbsp;1.6&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
 +
* Задача [[тематическое моделирование|тематического моделирования]] коллекции текстовых документов.
 +
* [[Вероятностный латентный семантический анализ]] PLSA. [[Метод максимума правдоподобия]]. [[ЕМ-алгоритм]]. Элементарная интерпретация EM-алгоритма.
 +
* [[Латентное размещение Дирихле]] LDA. [[Метод максимума апостериорной вероятности]]. Сглаженная частотная оценка условной вероятности.
 +
* Небайесовская интерпретация LDA и её преимущества. Регуляризаторы разреживания, сглаживания, частичного обучения.
 +
* Аддитивная регуляризация тематических моделей. Регуляризованный EM-алгоритм, теорема о стационарной точке (применение условий Каруша–Куна–Таккера).
 +
* Рациональный EM-алгоритм. Онлайновый EM-алгоритм и его распараллеливание.
 +
* Мультимодальная тематическая модель.
 +
* Регуляризаторы классификации и регрессии.
 +
* Регуляризаторы декоррелирования и отбора тем.
 +
* Внутренние и внешние критерии качества тематических моделей.
-
=== Поиск ассоциативных правил ===
+
== Обучение с подкреплением ==
-
Презентация: [[Media:Voron-ML-AssocRules-slides.pdf|(PDF,&nbsp;1.1&nbsp;МБ)]] {{важно| — обновление 23.10.2012}}.
+
Презентация: [[Media:Voron-ML-RL-slides.pdf|(PDF,&nbsp;1.0&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
 +
* Задача о многоруком бандите. Жадные и эпсилон-жадные стратегии. Метод UCB (upper confidence bound). Стратегия Softmax.
 +
* Среда для экспериментов.
 +
* Адаптивные стратегии на основе скользящих средних. Метод сравнения с подкреплением. Метод преследования.
 +
* Постановка задачи в случае, когда агент влияет на среду. Ценность состояния среды. Ценность действия.
 +
* Жадные стратегии максимизации ценности. Уравнения оптимальности Беллмана.
 +
* Метод временных разностей TD. Метод Q-обучения.
 +
<!---* Многошаговое TD-прогнозирование. Обобщения методов временных разностей, SARSA, Q-обучения. --->
 +
* Градиентная оптимизация стратегии (policy gradient). Связь с максимизацией log-правдоподобия.
 +
* Постановка задачи при наличии информации о среде в случае выбора действия. Контекстный многорукий бандит.
 +
* Линейная регрессионная модель с верхней доверительной оценкой LinUCB.
 +
* Оценивание новой стратегии по большим историческим данным.
 +
<!---* Адаптивный полужадный метод VDBE.--->
-
* Понятие [[Ассоциативное правило|ассоциативного правила]] и его связь с понятием логической закономерности.
+
== Активное обучение ==
-
* Примеры прикладных задач: [[анализ рыночных корзин]], выделение терминов и тематики текстов.
+
Презентация: [[Media:Voron-ML-AL-slides.pdf|(PDF,&nbsp;1.2&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
-
* [[Алгоритм APriori]]. Два этапа: поиск частых наборов и рекурсивное порождение ассоциативных правил. Недостатки и пути усовершенствования алгоритма APriori.
+
* Постановка задачи машинного обучения. Основные стратегии: отбор объектов из выборки и из потока, синтез объектов.
-
* [[Алгоритм FP-growth]]. Понятия FP-дерева и условного FP-дерева. Два этапа поиска частых наборов в FP-growth: построение FP-дерева и рекурсивное порождение частых наборов.
+
* Сэмплирование по неуверенности. Почему активное обучение быстрее пассивного.
-
* Общее представление о динамических и иерархических методах поиска ассоциативных правил.
+
* Сэмплирование по несогласию в комитете. Сокращение пространства решений.
 +
* Сэмплирование по ожидаемому изменению модели.
 +
* Сэмплирование по ожидаемому сокращению ошибки.
 +
* Синтез объектов по критерию сокращения дисперсии.
 +
* Взвешивание по плотности.
 +
* Оценивание качества активного обучения.
 +
* Введение изучающих действий в стратегию активного обучении. Алгоритмы ε-active и EG-active.
 +
* Применение обучения с подкреплением для активного обучения. Активное томпсоновское сэмплирование.
-
=== Задачи с частичным обучением ===
+
== Заключительная лекция ==
-
Презентация: [[Media:Voron-ML-SSL.pdf|(PDF,&nbsp;0.7&nbsp;МБ)]] {{важно| — обновление 15.11.2011}}.
+
Презентация: [[Media:Voron-ML-final.pdf|(PDF,&nbsp;2.0&nbsp;МБ)]] {{важно| — обновление 14.12.2019}}.
-
* Постановка задачи Semisupervised Learning, примеры приложений.
+
Обзор курса. Оптимизационные задачи машинного обучения.
-
* Простые эвристические методы: self-training, co-training, co-learning.
+
-
* Адаптация алгоритмов кластеризации для решения задач с частичным обучением. Кратчайшиё незамкнутый путь. Алгоритм Ланса-Уильямса. Алгоритм k-средних.
+
-
* Трансдуктивный метод опорных векторов TSVM.
+
-
* Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
+
-
 
+
-
=== Коллаборативная фильтрация ===
+
-
Презентация: [[Media:Voron-ML-CF.pdf|(PDF,&nbsp;1.2&nbsp;МБ)]] {{важно| — обновление 30.10.2012}}.
+
-
 
+
-
* Задачи [[коллаборативная фильтрация|коллаборативной фильтрации]], [[транзакционные данные]] и матрица субъекты—объекты.
+
-
* Корреляционные методы user-based, item-based.
+
-
* Латентные методы на основе [[би-кластеризация|би-кластеризации]]. [[Алгоритм Брегмана]].
+
-
* Латентные методы на основе матричных разложений. [[Метод главных компонент]] для разреженных данных. [[Метод стохастического градиента]].
+
-
* Неотрицательные матричные разложения. [[Вероятностный латентный семантический анализ]] PLSA. [[ЕМ-алгоритм]] для PLSA.
+
-
* Эксперименты на данных конкурса «Интернет-математика» 2005.
+
-
 
+
-
=== Тематическое моделирование ===
+
-
Текст лекций: [[Media:Voron-ML-TopicModels.pdf|(PDF,&nbsp;830&nbsp;КБ)]].<br/>
+
-
Презентация: [[Media:Voron-ML-TopicModels-slides.pdf|(PDF,&nbsp;3.6&nbsp;МБ)]] {{важно| — обновление 04.12.2013}}.
+
-
 
+
-
* Задачи [[тематическое моделирование|тематического моделирования]], коллекции текстовых документов и матрица документы—слова. [[Перплексия]] как мера качества тематической модели. Задача тематического поиска.
+
-
* Униграммная модель документа. [[Метод максимума правдоподобия]] и [[метод максимума апостериорной вероятности]]. Применение метода множителей Лагранжа.
+
-
* [[Вероятностный латентный семантический анализ]] PLSA. [[ЕМ-алгоритм]]. Инкрементное добавление новых документов (folding-in). Задача с [[частичное обучение|частичным обучением]].
+
-
* [[Латентное размещение Дирихле]]. Сглаженная частотная оценка вероятности. [[Сэмплирование Гиббса]]. Оптимизация гиперпараметров.
+
-
* Робастная тематическая модель с фоновой и шумовой компонентой. Эксперименты по сравнению робастных и регуляризованных моделей.
+
-
 
+
-
=== Обучение с подкреплением ===
+
-
Презентация: [[Media:Voron-ML-RL-slides.pdf|(PDF,&nbsp;0.9&nbsp;МБ)]] {{важно| — обновление 20.11.2012}}.
+
-
 
+
-
* Задача о много руком бандите. Жадные и эпсилон-жадные стратегии. Среда для экспериментов. Метод сравнения с подкреплением. Метод преследования.
+
-
* Адаптивные стратегии на основе скользящих средних.
+
-
* Уравнения Беллмана. Оптимальные стратегии. Динамическое программирование. Метод итераций по ценностям и по стратегиям.
+
-
* Методы временных разностей: TD, SARSA, Q-метод. Многошаговое TD-прогнозирование. Адаптивный полужадный метод VDBE.
+
-
== Ссылки ==
+
= См. также =
 +
* [https://www.coursera.org/learn/vvedenie-mashinnoe-obuchenie Курс «Введение в машинное обучение», К.В.Воронцов (ВШЭ и Яндекс)].[https://habrahabr.ru/company/yandex/blog/269175 Хабр об этом курсе].
 +
* [https://www.coursera.org/specializations/machine-learning-data-analysis Специализация «Машинное обучение и анализ данных» (МФТИ и Яндекс)]. [https://habrahabr.ru/company/yandex/blog/277427 Хабр об этом курсе].
 +
* [https://drive.google.com/open?id=0B-3LhgkjkY_OSDJncFdxTkFaOG8 Машинное обучение (семинары,ФУПМ МФТИ)]
 +
* [[Машинное обучение (семинары, ВМК МГУ)]]
* [[Машинное обучение (курс лекций, Н.Ю.Золотых)]]
* [[Машинное обучение (курс лекций, Н.Ю.Золотых)]]
* [[Машинное обучение (курс лекций, СГАУ, С.Лисицын)]]
* [[Машинное обучение (курс лекций, СГАУ, С.Лисицын)]]
-
== Список подстраниц ==
+
= Литература =
 +
# ''Hastie T., Tibshirani R., Friedman J.'' The Elements of Statistical Learning. Springer, 2014. — 739 p.
 +
# ''Bishop C. M.'' Pattern Recognition and Machine Learning. — Springer, 2006. — 738 p.
 +
# ''Мерков А. Б.'' Распознавание образов. Введение в методы статистического обучения. 2011. 256 с.
 +
# ''Мерков А. Б.'' Распознавание образов. Построение и обучение вероятностных моделей. 2014. 238 с.
 +
# ''Коэльо Л.П., Ричарт В.'' Построение систем машинного обучения на языке Python. 2016. 302 с.
 +
 
 +
= Список подстраниц =
{{Служебная:Prefixindex/Машинное обучение (курс лекций, К.В.Воронцов)/}}
{{Служебная:Prefixindex/Машинное обучение (курс лекций, К.В.Воронцов)/}}
[[Категория:Учебные курсы]]
[[Категория:Учебные курсы]]

Версия 14:47, 24 марта 2020

Содержание

Теория обучения машин (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 МБ) — обновление 13.02.2020.

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

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

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

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

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

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

  • Оптимальная разделяющая гиперплоскость. Понятие зазора между классами (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 МБ) — обновление 05.03.2030.

Факультатив

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