Машинное обучение (курс лекций, К.В.Воронцов)
Материал из MachineLearning.
(→Логические методы классификации) |
(→Основные понятия и примеры прикладных задач) |
||
Строка 47: | Строка 47: | ||
* Основные понятия: [[модель алгоритмов]], [[метод обучения]], [[функция потерь]] и функционал качества, [[принцип минимизации эмпирического риска]], [[обобщающая способность]], [[скользящий контроль]]. | * Основные понятия: [[модель алгоритмов]], [[метод обучения]], [[функция потерь]] и функционал качества, [[принцип минимизации эмпирического риска]], [[обобщающая способность]], [[скользящий контроль]]. | ||
* Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных. [[Полигон алгоритмов классификации]]. | * Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных. [[Полигон алгоритмов классификации]]. | ||
- | * | + | * [[CRISP-DM]] — межотраслевой стандарт ведения проектов [[Data Mining | интеллектуального анализа данных]]. |
== Метрические методы классификации == | == Метрические методы классификации == |
Версия 18:05, 1 февраля 2014
|
Теория обучения машин (machine learning, машинное обучение) находится на стыке прикладной статистики, численных методов оптимизации, дискретного анализа, и за последние 50 лет оформилась в самостоятельную математическую дисциплину. Методы машинного обучения составляют основу ещё более молодой дисциплины — интеллектуального анализа данных (data mining).
В курсе рассматриваются основные задачи обучения по прецедентам: классификация, кластеризация, регрессия, понижение размерности. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Отдельные теоремы приводятся с доказательствами.
Все методы излагаются по единой схеме:
- исходные идеи и эвристики;
- их формализация и математическая теория;
- описание алгоритма в виде слабо формализованного псевдокода;
- анализ достоинств, недостатков и границ применимости;
- пути устранения недостатков;
- сравнение с другими методами.
- примеры прикладных задач.
Данный курс расширяет и углубляет набор тем, рекомендованный международным стандартом ACM/IEEE Computing Curricula 2001 по дисциплине «Машинное обучение и нейронные сети» (machine learning and neural networks) в разделе «Интеллектуальные системы» (intelligent systems).
Курс читается
- студентам 3 курса кафедры «Интеллектуальные системы / интеллектуальный анализ данных» ФУПМ МФТИ с 2004 года;
- студентам 3 курса кафедры «Математические методы прогнозирования» ВМиК МГУ с 2007 года;
- студентам Школы анализа данных Яндекса с 2009 года.
На материал данного курса опираются последующие кафедральные курсы. На кафедре ММП ВМиК МГУ параллельно с данным курсом и в дополнение к нему читается спецкурс Теория надёжности обучения по прецедентам, посвящённый проблемам переобучения и оценивания обобщающей способности.
От студентов требуются знания курсов линейной алгебры, математического анализа, теории вероятностей. Знание математической статистики, методов оптимизации и какого-либо языка программирования желательно, но не обязательно.
Ниже представлена расширенная программа — в полном объёме она занимает больше, чем могут вместить в себя два семестра. Каждый параграф приблизительно соответствует одной лекции. Курсивом выделен дополнительный материал, который может разбираться на семинарах.
Замечания для студентов
- Видеолекции ШАД Яндекс.
- На подстранице имеется перечень вопросов к устному экзамену. Очень помогает при подготовке к устному экзамену!
- О найденных ошибках и опечатках сообщайте мне. — К.В.Воронцов 18:24, 19 января 2009 (MSK)
- Материал, который есть в pdf-тексте, но не рассказывался на лекциях, обычно не входит в программу экзамена.
Первый семестр
Текст лекций: (PDF, 3 МБ) — обновление 4.10.2011.
Основные понятия и примеры прикладных задач
Презентация: (PDF, 0,8 МБ) — обновление 11.02.2013.
- Постановка задач обучения по прецедентам. Объекты и признаки. Типы шкал: бинарные, номинальные, порядковые, количественные.
- Типы задач: классификация, регрессия, прогнозирование, кластеризация. Примеры прикладных задач.
- Основные понятия: модель алгоритмов, метод обучения, функция потерь и функционал качества, принцип минимизации эмпирического риска, обобщающая способность, скользящий контроль.
- Методика экспериментального исследования и сравнения алгоритмов на модельных и реальных данных. Полигон алгоритмов классификации.
- CRISP-DM — межотраслевой стандарт ведения проектов интеллектуального анализа данных.
Метрические методы классификации
Презентация: (PDF, 1,59 МБ) — обновление 08.01.2014.
Метод ближайших соседей и его обобщения
- Метод ближайших соседей (kNN) и его обобщения.
- Подбор числа k по критерию скользящего контроля.
- Обобщённый метрический классификатор, понятие отступа.
- Метод потенциальных функций, градиентный алгоритм.
Отбор эталонов и оптимизация метрики
- Отбор эталонных объектов. Псевдокод: алгоритм СТОЛП.
- Функция конкурентного сходства, алгоритм FRiS-СТОЛП.
- Функционал полного скользящего контроля, формула быстрого вычисления для метода 1NN. Профиль компактности. Функция вклада объекта. Отбор эталонных объектов на основе минимизации функционала полного скользящего контроля. Эффективные структуры данных для быстрого поиска ближайших объектов в прямых и обратных окрестностях — метрические деревья.
- Проклятие размерности. Задача настройки весов признаков.
- Концепция вывода на основе прецедентов (CBR).
Логические методы классификации
Текст лекций: (PDF, 625 КБ).
Презентация: (PDF, 1.8 МБ) — обновление 08.01.2014.
Понятия закономерности и информативности
- Понятие логической закономерности. Эвристическое, статистическое, энтропийное определение информативности. Асимптотическая эквивалентность статистического и энтропийного определения. Сравнение областей эвристических и статистических закономерностей.
- Разновидности закономерностей: конъюнкции пороговых предикатов (гиперпараллелепипеды), синдромные правила, шары, гиперплоскости.
- «Градиентный» алгоритм синтеза конъюнкций, частные случаи: жадный алгоритм, стохастический локальный поиск, стабилизация, редукция.
- Бинаризация признаков. Алгоритм разбиения области значений признака на информативные зоны.
Решающие списки и деревья
- Решающий список. Жадный алгоритм синтеза списка.
- Решающее дерево. Псевдокод: жадный алгоритм ID3. Недостатки алгоритма и способы их устранения. Проблема переобучения.
- Редукция решающих деревьев: предредукция и постредукция.
- Преобразование решающего дерева в решающий список.
- Алгоритм LISTBB.
- Небрежные решающие деревья (oblivious decision tree).
Линейные методы классификации
Презентация: (PDF, 2,21 МБ) — обновление 16.04.2012.
Градиентные методы
- Линейный классификатор, непрерывные аппроксимации пороговой функции потерь. Связь с методом максимума правдоподобия.
- Квадратичная функция потерь, метод наименьших квадратов, связь с линейным дискриминантом Фишера.
- Метод стохастического градиента и частные случаи: адаптивный линейный элемент ADALINE, перcептрон Розенблатта, правило Хэбба.
- Теорема Новикова о сходимости. Доказательство теоремы Новикова
- Эвристики: инициализация весов, порядок предъявления объектов, выбор величины градиентного шага, «выбивание» из локальных минимумов.
- Проблема переобучения, редукция весов (weight decay).
- Байесовская регуляризация. Принцип максимума совместного правдоподобия данных и модели. Квадратичный (гауссовский) и лапласовский регуляризаторы.
Метод опорных векторов
- Оптимальная разделяющая гиперплоскость. Понятие зазора между классами (margin).
- Случаи линейной разделимости и отсутствия линейной разделимости. Связь с минимизацией регуляризованного эмпирического риска. Кусочно-линейная функция потерь.
- Задача квадратичного программирования и двойственная задача. Понятие опорных векторов.
- Рекомендации по выбору константы C.
- Функция ядра (kernel functions), спрямляющее пространство, теорема Мерсера.
- Способы конструктивного построения ядер. Примеры ядер.
- Обучение SVM методом активных ограничений. Алгоритм INCAS. Алгоритм SMO.
- ню-SVM.
- SVM-регрессия.
- Метод релевантных векторов RVM
Методы регрессионного анализа
Презентация: (PDF, 0,9 MБ) — обновление 16.04.2012.
Непараметрическая регрессия
- Сглаживание. Локально взвешенный метод наименьших квадратов и оценка Надарая-Ватсона.
- Выбор функции ядра. Выбор ширины окна сглаживания. Сглаживание с переменной шириной окна.
- Проблема выбросов и робастная непараметрическая регрессия. Алгоритм LOWESS.
- Доверительный интервал значения регрессии в точке.
- Проблемы «проклятия размерности» и выбора метрики.
Многомерная линейная регрессия
- Задача регрессии, многомерная линейная регрессия.
- Метод наименьших квадратов и его геометрический смысл.
- Сингулярное разложение.
- Проблемы мультиколлинеарности и переобучения.
- Регуляризация. Гребневая регрессия. Лассо Тибширани, сравнение с гребневой регрессией.
- Линейные преобразования признакового пространства, задача сокращения размерности. Метод главных компонент и декоррелирующее преобразование Карунена-Лоэва, его связь с сингулярным разложением.
Нелинейная параметрическая регрессия
- Метод Ньютона-Рафсона, метод Ньютона-Гаусса.
- Обобщённая линейная модель (GLM).
- Одномерные нелинейные преобразования признаков: метод настройки с возвращениями (backfitting) Хасти-Тибширани.
- Неквадратичные функци потерь. Робастная регрессия, функция Мешалкина. Несимметричные функции потерь, пример прикладной задачи: прогнозирование потребительского спроса.
Статистичесие (байесовские) методы классификации
Презентация: (PDF, 2,4 МБ) — обновление 6.03.2013.
Оптимальный байесовский классификатор
- Принцип максимума апостериорной вероятности.
- Функционал среднего риска. Ошибки I и II рода.
- Теорема об оптимальности байесовского классификатора.
- Оценивание плотности распределения: три основных подхода.
- Наивный байесовский классификатор.
Непараметрическое оценивание плотности
- Ядерная оценка плотности Парзена-Розенблатта. Одномерный и многомерный случаи.
- Метод парзеновского окна.
- Выбор функции ядра. Выбор ширины окна, переменная ширина окна.
- Робастное оценивание плотности.
- Непараметрический наивный байесовский классификатор.
Параметрическое оценивание плотности
- Нормальный дискриминантный анализ. Многомерное нормальное распределение, геометрическая интерпретация. Выборочные оценки параметров многомерного нормального распределения.
- Матричное дифференцирование. Вывод оценок параметров многомерного нормального распределения.
- Квадратичный дискриминант. Вид разделяющей поверхности. Подстановочный алгоритм, его недостатки и способы их устранения.
- Линейный дискриминант Фишера.
- Проблемы мультиколлинеарности и переобучения. Регуляризация ковариационной матрицы.
- Робастное оценивание. Цензурирование выборки (отсев объектов-выбросов).
- Параметрический наивный байесовский классификатор.
- Метод редукции размерности Шурыгина.
Разделение смеси распределений
- Смесь распределений.
- EM-алгоритм: основная идея, понятие скрытых переменных. «Вывод» алгоритма без обоснования сходимости. Псевдокод EM-алгоритма. Критерий останова. Выбор начального приближения. Выбор числа компонентов смеси.
- Стохастический EM-алгоритм.
- Смесь многомерных нормальных распределений. Сеть радиальных базисных функций (RBF) и применение EM-алгоритма для её настройки.
- Сопоставление RBF-сети и SVM с гауссовским ядром.
Логистическая регрессия
- Гипотеза экспоненциальности функций правдоподобия классов. Теорема о линейности байесовского оптимального классификатора. Оценивание апостериорных вероятностей классов с помощью сигмоидной функции активации.
- Логистическая регрессия. Принцип максимума правдоподобия и логарифмическая функция потерь.
- Метод стохастического градиента для логарифмической функции потерь. Сглаженное правило Хэбба.
- Метод наименьших квадратов с итеративным пересчётом весов (IRLS).
- Пример прикладной задачи: кредитный скоринг. Бинаризация признаков. Скоринговые карты и оценивание вероятности дефолта. Риск кредитного портфеля банка.
- Настройка порога решающего правила по критерию числа ошибок I и II рода. Кривая ошибок (ROC curve). Алгоритм эффективного построения ROC-кривой.
Второй семестр
Нейросетевые методы классификации и регрессии
Презентация: (PDF, 1,8 МБ) — обновление 16.04.2012.
Многослойные нейронные сети
- Биологический нейрон, модель МакКаллока-Питтса как линейный классификатор. Функции активации.
- Проблема полноты. Задача исключающего или. Полнота двухслойных сетей в пространстве булевых функций. Теоремы Колмогорова, Стоуна, Горбаня (без доказательства).
- Алгоритм обратного распространения ошибок.
- Эвристики: формирование начального приближения, ускорение сходимости, диагональный метод Левенберга-Марквардта. Проблема «паралича» сети.
- Метод послойной настройки сети.
- Подбор структуры сети: методы постепенного усложнения сети, оптимальное прореживание нейронных сетей (optimal brain damage).
Критерии выбора моделей и методы отбора признаков
Текст лекций: (PDF, 330 КБ).
Презентация: (PDF, 1,76 МБ) — обновление 11.10.2011.
Задачи оценивания и выбора моделей
- Внутренние и внешние критерии.
- Эмпирические и аналитические оценки функционала полного скользящего контроля.
- Скользящий контроль, разновидности эмпирических оценок скользящего контроля. Критерий непротиворечивости. Регуляризация. Критерий Акаике (AIC). Байесовский информационный критерий (BIC).
- Статистические критерии: коэффициент детерминации, критерий Фишера, анализ регрессионных остатков.
- Агрегированные и многоступенчатые критерии.
Теория обобщающей способности
- Теория Вапника-Червоненкиса. Функционал равномерного отклоненеия частот ошибок. Функция роста, ёмкость семейства алгоритмов. Структурная минимизация риска.
- Оценка «бритвы Оккама».
- Радемахеровская сложность семейства алгоритмов.
- Комбинаторная теория переобучения. Функционал вероятности переобучения. Граф расслоения-связности. Оценки расслоения-связности.
Методы отбора признаков
- Сложность задачи отбора признаков. Полный перебор.
- Метод добавления и удаления, шаговая регрессия.
- Поиск в глубину, метод ветвей и границ.
- Усечённый поиск в ширину, многорядный итерационный алгоритм МГУА.
- Генетический алгоритм, его сходство с МГУА.
- Случайный поиск и Случайный поиск с адаптацией (СПА).
Композиционные методы классификации и регрессии
Текст лекций: (PDF, 1 MБ).
Презентация: (PDF, 1 МБ).
Линейные композиции, бустинг
- Основные понятия: базовый алгоритм (алгоритмический оператор), корректирующая операция.
- Взвешенное голосование.
- Алгоритм AdaBoost. Экспоненциальная аппроксимация пороговой функции потерь. Процесс последовательного обучения базовых алгоритмов. Теорема о сходимости бустинга.
- Варианты бустинга: GentleBoost, LogitBoost, BrownBoost, и другие.
- Обобщение бустинга как процесса градиентного спуска. Теорема сходимости. Алгоритм AnyBoost.
Эвристические и стохастические методы
- Простое голосование (комитет большинства). Эвристический алгоритм. Идентификация нетипичных объектов (выбросов). Обобщение на большое число классов.
- Решающий список (комитет старшинства). Эвристический алгоритм. Стратегия выбора классов для базовых алгоритмов.
- Стохастические методы: бэггинг и метод случайных подпространств.
Бустинг алгоритмов ранжирования
- Задача ранжирования. Примеры: ранжирование результатов текстового поиска, задача Netflix.
- Функционал качества — число дефектных пар.
- Бустинг алгоритмов ранжирования — аналоги AdaBoost и AnyBoost.
- Двудольная задача. Сведение попарного функционала качества к поточечному.
Взвешенное голосование логических закономерностей
- Применение алгоритма бустинга AdaBoost к закономерностям. Критерий информативности в бустинге.
- Решающий лес и бустинг над решающими деревьями. Алгоритм TreeNet.
- Методы синтеза конъюнктивных закономерностей. Псевдокод: алгоритм КОРА, алгоритм ТЭМП.
- Эвристики, обеспечивающие различность и полезность закономерностей. Построение Парето-оптимальных закономерностей. Выравнивание распределения отступов.
- Чередующиеся решающие деревья (alternating decision tree).
- Примеры прикладных задач: кредитный скоринг, прогнозирование ухода клиентов.
Алгоритмы вычисления оценок
- Принцип частичной прецедентности. Структура Алгоритмов вычисления оценок.
- Тупиковые тесты.
- Тупиковые представительные наборы.
- Проблема оптимизации АВО. АВО как композиция метрических закономерностей.
- Применение бустинга, ТЭМП и СПА для оптимизации АВО.
Нелинейные алгоритмические композиции
- Смесь экспертов, область компетентности алгоритма.
- Выпуклые функции потерь. Методы построения смесей: последовательный и иерархический.
- Построение смесей экспертов с помощью EM-алгоритма.
- Нелинейная монотонная корректирующая операция. Случай классификации. Случай регрессии. Задача монотонизации выборки, изотонная регрессия.
Обучение без учителя
Презентация: (PDF, 1,0 МБ) — обновление 24.04.2012.
Кластеризация
- Постановка задачи кластеризации. Примеры прикладных задач. Типы кластерных структур.
- Графовые алгоритмы кластеризации. Выделение связных компонент. Кратчайший незамкнутый путь.
- Алгоритм ФОРЭЛ.
- Функционалы качества кластеризации.
- Статистические алгоритмы: EM-алгоритм и Алгоритм k средних (k-means).
Сети Кохонена
- Нейронная сеть Кохонена. Конкурентное обучение, стратегии WTA и WTM.
- Самоорганизующаяся карта Кохонена. Применение для визуального анализа данных. Искусство интерпретации карт Кохонена.
- Сети встречного распространения, их применение для кусочно-постоянной и гладкой аппроксимации функций.
Таксономия
- Агломеративная кластеризация, Алгоритм Ланса-Вильямса и его частные случаи.
- Алгоритм построения дендрограммы. Определение числа кластеров.
- Свойства сжатия/растяжения, монотонности и редуктивности. Псевдокод редуктивной версии алгоритма.
- Потоковые (субквадратичные) алгоритмы кластеризации.
Поиск ассоциативных правил
Презентация: (PDF, 1.1 МБ) — обновление 23.10.2012.
- Понятие ассоциативного правила и его связь с понятием логической закономерности.
- Примеры прикладных задач: анализ рыночных корзин, выделение терминов и тематики текстов.
- Алгоритм APriori. Два этапа: поиск частых наборов и рекурсивное порождение ассоциативных правил. Недостатки и пути усовершенствования алгоритма APriori.
- Алгоритм FP-growth. Понятия FP-дерева и условного FP-дерева. Два этапа поиска частых наборов в FP-growth: построение FP-дерева и рекурсивное порождение частых наборов.
- Общее представление о динамических и иерархических методах поиска ассоциативных правил.
Задачи с частичным обучением
Презентация: (PDF, 0.7 МБ) — обновление 15.11.2011.
- Постановка задачи Semisupervised Learning, примеры приложений.
- Простые эвристические методы: self-training, co-training, co-learning.
- Адаптация алгоритмов кластеризации для решения задач с частичным обучением. Кратчайшиё незамкнутый путь. Алгоритм Ланса-Уильямса. Алгоритм k-средних.
- Трансдуктивный метод опорных векторов TSVM.
- Алгоритм Expectation-Regularization на основе многоклассовой регуляризированной логистической регрессии.
Коллаборативная фильтрация
Презентация: (PDF, 1.2 МБ) — обновление 30.10.2012.
- Задачи коллаборативной фильтрации, транзакционные данные и матрица субъекты—объекты.
- Корреляционные методы user-based, item-based.
- Латентные методы на основе би-кластеризации. Алгоритм Брегмана.
- Латентные методы на основе матричных разложений. Метод главных компонент для разреженных данных. Метод стохастического градиента.
- Неотрицательные матричные разложения. Вероятностный латентный семантический анализ PLSA. ЕМ-алгоритм для PLSA.
- Эксперименты на данных конкурса «Интернет-математика» 2005.
Тематическое моделирование
Текст лекций: (PDF, 830 КБ).
Презентация: (PDF, 3.6 МБ) — обновление 04.12.2013.
- Задачи тематического моделирования, коллекции текстовых документов и матрица документы—слова. Перплексия как мера качества тематической модели. Задача тематического поиска.
- Униграммная модель документа. Метод максимума правдоподобия и метод максимума апостериорной вероятности. Применение метода множителей Лагранжа.
- Вероятностный латентный семантический анализ PLSA. ЕМ-алгоритм. Инкрементное добавление новых документов (folding-in). Задача с частичным обучением.
- Латентное размещение Дирихле. Сглаженная частотная оценка вероятности. Сэмплирование Гиббса. Оптимизация гиперпараметров.
- Робастная тематическая модель с фоновой и шумовой компонентой. Эксперименты по сравнению робастных и регуляризованных моделей.
Обучение с подкреплением
Презентация: (PDF, 0.9 МБ) — обновление 20.11.2012.
- Задача о много руком бандите. Жадные и эпсилон-жадные стратегии. Среда для экспериментов. Метод сравнения с подкреплением. Метод преследования.
- Адаптивные стратегии на основе скользящих средних.
- Уравнения Беллмана. Оптимальные стратегии. Динамическое программирование. Метод итераций по ценностям и по стратегиям.
- Методы временных разностей: TD, SARSA, Q-метод. Многошаговое TD-прогнозирование. Адаптивный полужадный метод VDBE.