Введение

Парадигма в машинном обучении
Обучение с учителем — это парадигма в машинном обучении, в которой входные объекты (например, вектор предикторов) и желаемое выходное значение (также известное как размеченный человеком сигнал обучения с учителем) используются для обучения модели. Данные для обучения обрабатываются, в результате чего строится функция, которая сопоставляет новые данные с ожидаемыми выходными значениями. В оптимальном сценарии алгоритм сможет правильно определять выходные значения для новых, ранее не встречавшихся экземпляров. Это требует, чтобы алгоритм обучения обобщал полученные знания из обучающих данных на новые ситуации "разумным" образом (см. индуктивный смещение). Эта статистическая характеристика алгоритма измеряется так называемой ошибкой обобщения.

Компромиссов по смещению отклонений

Первая проблема – компромисс между смещением и дисперсией. Представьте, что у нас есть несколько различных, но равноценных наборов данных для обучения. Алгоритм обучения демонстрирует смещение для конкретного входного значения, если при обучении на каждом из этих наборов данных он систематически выдает неверный прогноз для этого значения. Алгоритм обучения имеет высокую дисперсию для конкретного входного значения, если он предсказывает разные выходные значения при обучении на разных наборах данных. Ошибка предсказания обученного классификатора связана с суммой смещения и дисперсии алгоритма обучения. Как правило, существует компромисс между смещением и дисперсией. Алгоритм обучения с низким смещением должен быть "гибким", чтобы хорошо аппроксимировать данные. Но если алгоритм обучения слишком гибкий, он будет по-разному подстраиваться под каждый набор обучающих данных и, следовательно, будет иметь высокую дисперсию. Ключевой особенностью многих методов обучения с учителем является их способность регулировать этот компромисс между смещением и дисперсией (автоматически или путем предоставления параметра смещения/дисперсии, который пользователь может настроить).

Сложность функций и объем данных обучения

Второй вопрос касается объема доступных обучающих данных по отношению к сложности "истинной" функции (классификатора или функции регрессии). Если истинная функция проста, то "негибкий" алгоритм обучения с высокой смещенностью и низкой дисперсией сможет выучить ее на небольшом объеме данных. Но если истинная функция обладает высокой сложностью (например, из-за сложных взаимодействий между множеством входных признаков и различного поведения в разных частях входного пространства), то для ее обучения потребуется большой объем обучающих данных в сочетании с "гибким" алгоритмом обучения с низкой смещенностью и высокой дисперсией.

Размерность входной площади

Третьей проблемой является размерность входного пространства. Если входные векторы признаков имеют большую размерность, обучение функции может быть затруднено, даже если истинная функция зависит только от небольшого числа этих признаков. Это происходит потому, что множество "лишних" размерностей может запутать алгоритм обучения и привести к высокой дисперсии. Следовательно, входные данные с большой размерностью обычно требуют настройки классификатора для обеспечения низкой дисперсии и высокой смещенности. На практике, если разработчик может вручную удалить нерелевантные признаки из входных данных, это, скорее всего, повысит точность обученной функции. Кроме того, существует множество алгоритмов отбора признаков, которые стремятся выявить релевантные признаки и отбросить нерелевантные. Это является примером более общей стратегии понижения размерности, которая направлена на отображение входных данных в пространство меньшей размерности перед применением алгоритма обучения с учителем.

Шум в исходных значениях

Четвертый вопрос – степень шума в желаемых выходных значениях (целевые переменные для обучения с учителем). Если желаемые выходные значения часто неверны (из-за человеческих ошибок или ошибок датчиков), то алгоритм обучения не должен пытаться найти функцию, точно соответствующую обучающим примерам. Слишком тщательное подгоняние данных приводит к переобучению. Переобучение возможно даже при отсутствии ошибок измерения (стохастического шума), если функция, которую вы пытаетесь изучить, слишком сложна для вашей модели обучения. В такой ситуации часть целевой функции, которую невозможно смоделировать, "искажает" ваши обучающие данные – это явление называется детерминированным шумом. При наличии любого типа шума лучше использовать оценщик с более высоким смещением и меньшей дисперсией. На практике существует несколько подходов к уменьшению шума в выходных значениях, таких как ранняя остановка для предотвращения переобучения, а также обнаружение и удаление зашумленных обучающих примеров перед обучением алгоритма обучения с учителем. Существуют алгоритмы, которые выявляют зашумленные обучающие примеры, и удаление подозрительных зашумленных примеров перед обучением снизило ошибку обобщения со статистической значимостью.

Как работают алгоритмы обучения под наблюдением

При наличии набора обучающих примеров вида, где является вектором признаков -го примера, а – его меткой (т.е. классом), алгоритм обучения ищет функцию , где – пространство входных данных, а – пространство выходных данных. Функция является элементом некоторого пространства возможных функций , обычно называемого пространством гипотез. Иногда удобно представлять с помощью функции оценки , такой что определяется как возвращающая значение, дающее наивысший балл: Пусть обозначает пространство функций оценки. Хотя и могут быть любыми пространствами функций, многие алгоритмы обучения являются вероятностными моделями, где принимает форму условной вероятностной модели , или принимает форму совместной вероятностной модели. Например, наивный байесовский классификатор и линейный дискриминантный анализ являются совместными вероятностными моделями, в то время как логистическая регрессия – условной вероятностной моделью. Существует два основных подхода к выбору или : эмпирическая минимизация риска и структурная минимизация риска. Эмпирическая минимизация риска ищет функцию, которая наилучшим образом соответствует обучающим данным. Структурная минимизация риска включает в себя штрафную функцию, которая контролирует компромисс между смещением и дисперсией. В обоих случаях предполагается, что обучающий набор состоит из выборки независимых и одинаково распределенных пар. Для измерения того, насколько хорошо функция соответствует обучающим данным, определяется функция потерь . Для обучающего примера потеря от предсказания значения равна . Риск функции определяется как математическое ожидание этой потери. Его можно оценить по обучающим данным как .

Минимизация эмпирических рисков

В эмпирической минимизации риска алгоритм обучения с учителем ищет функцию, которая минимизирует. Следовательно, алгоритм обучения с учителем может быть построен путем применения алгоритма оптимизации для нахождения. Когда является условным распределением вероятностей, а функция потерь – отрицательным логарифмом правдоподобия: , то эмпирическая минимизация риска эквивалентна оценке максимального правдоподобия. Когда содержит множество кандидатных функций или обучающая выборка недостаточно велика, эмпирическая минимизация риска приводит к высокой дисперсии и плохой обобщающей способности. Алгоритм обучения способен запоминать обучающие примеры, не обобщаясь должным образом. Это называется переобучением.

Генеративная подготовка

Описанные выше методы обучения являются дискриминационными, поскольку они стремятся найти функцию, хорошо различающую различные значения выходных данных (см. дискриминационную модель). В частном случае, когда является совместным распределением вероятностей, а функция потерь – отрицательным логарифмом правдоподобия, алгоритм минимизации риска называется алгоритмом генеративного обучения, поскольку его можно рассматривать как генеративную модель, объясняющую, как были сгенерированы данные. Алгоритмы генеративного обучения часто проще и вычислительно эффективнее, чем дискриминативные алгоритмы обучения. В некоторых случаях решение можно вычислить аналитически, как в наивном байесовском анализе и линейном дискриминантном анализе.