Контролируемое обучение ( SL ) — это парадигма в машинном обучении , где входные объекты (например, вектор предикторных переменных) и желаемое выходное значение (также известное как маркированный человеком контрольный сигнал ) обучают модель. Обучающие данные обрабатываются, создавая функцию, которая сопоставляет новые данные с ожидаемыми выходными значениями. [1] Оптимальный сценарий позволит алгоритму правильно определять выходные значения для невидимых случаев. Это требует, чтобы обучающий алгоритм обобщал обучающие данные на невидимые ситуации «разумным» способом (см. индуктивное смещение ). Это статистическое качество алгоритма измеряется с помощью так называемой ошибки обобщения .
Для решения данной задачи контролируемого обучения необходимо выполнить следующие шаги:
Доступен широкий спектр алгоритмов контролируемого обучения, каждый из которых имеет свои сильные и слабые стороны. Не существует единого алгоритма обучения, который бы лучше всего подходил для всех задач контролируемого обучения (см. теорему о бесплатном обеде ).
При контролируемом обучении следует учитывать четыре основных вопроса:
Первая проблема — это компромисс между смещением и дисперсией . [2] Представьте, что у нас есть несколько разных, но одинаково хороших наборов обучающих данных. Обучающий алгоритм смещен для определенного входного сигнала , если при обучении на каждом из этих наборов данных он систематически неверен при прогнозировании правильного выходного сигнала для . Обучающий алгоритм имеет высокую дисперсию для определенного входного сигнала , если он предсказывает разные выходные значения при обучении на разных обучающих наборах. Ошибка прогнозирования обученного классификатора связана с суммой смещения и дисперсии обучающего алгоритма. [3] Как правило, существует компромисс между смещением и дисперсией. Обучающий алгоритм с низким смещением должен быть «гибким», чтобы хорошо подгонять данные. Но если обучающий алгоритм слишком гибкий, он будет подгонять каждый обучающий набор данных по-разному и, следовательно, иметь высокую дисперсию. Ключевым аспектом многих контролируемых методов обучения является то, что они могут корректировать этот компромисс между смещением и дисперсией (автоматически или путем предоставления параметра смещения/дисперсии, который может настроить пользователь).
Вторая проблема заключается в объеме доступных обучающих данных относительно сложности «истинной» функции (классификатора или функции регрессии). Если истинная функция проста, то «негибкий» алгоритм обучения с высоким смещением и низкой дисперсией сможет обучить ее на небольшом объеме данных. Но если истинная функция очень сложна (например, потому что она включает в себя сложные взаимодействия между многими различными входными признаками и ведет себя по-разному в разных частях входного пространства), то функция сможет обучиться только на большом объеме обучающих данных в паре с «гибким» алгоритмом обучения с низким смещением и высокой дисперсией.
Третья проблема — размерность входного пространства. Если входные векторы признаков имеют большие размерности, изучение функции может быть сложным, даже если истинная функция зависит только от небольшого числа этих признаков. Это связано с тем, что множество «дополнительных» измерений могут запутать алгоритм обучения и привести к его высокой дисперсии. Следовательно, входные данные больших размерностей обычно требуют настройки классификатора для получения низкой дисперсии и высокого смещения. На практике, если инженер может вручную удалить нерелевантные признаки из входных данных, это, вероятно, повысит точность обученной функции. Кроме того, существует множество алгоритмов для выбора признаков , которые стремятся идентифицировать релевантные признаки и отбрасывать нерелевантные. Это пример более общей стратегии снижения размерности , которая стремится отобразить входные данные в пространство с меньшей размерностью перед запуском контролируемого алгоритма обучения.
Четвертая проблема — это степень шума в желаемых выходных значениях (контрольные целевые переменные ). Если желаемые выходные значения часто неверны (из-за человеческой ошибки или ошибок датчиков), то алгоритм обучения не должен пытаться найти функцию, которая точно соответствует обучающим примерам. Попытка слишком тщательно подогнать данные приводит к переобучению . Вы можете переобучиться даже при отсутствии ошибок измерения (стохастический шум), если функция, которую вы пытаетесь изучить, слишком сложна для вашей обучающей модели. В такой ситуации часть целевой функции, которую невозможно смоделировать, «портит» ваши обучающие данные — это явление называется детерминированным шумом . Когда присутствует любой из типов шума, лучше использовать оценку с более высоким смещением и более низкой дисперсией.
На практике существует несколько подходов к уменьшению шума в выходных значениях, таких как ранняя остановка для предотвращения переобучения , а также обнаружение и удаление шумных обучающих примеров до обучения контролируемого алгоритма обучения. Существует несколько алгоритмов, которые идентифицируют шумные обучающие примеры, и удаление предполагаемых шумных обучающих примеров до обучения уменьшило ошибку обобщения со статистической значимостью . [4] [5]
Другие факторы, которые следует учитывать при выборе и применении алгоритма обучения, включают следующее:
При рассмотрении нового приложения инженер может сравнить несколько алгоритмов обучения и экспериментально определить, какой из них лучше всего подходит для рассматриваемой проблемы (см. перекрестную проверку ). Настройка производительности алгоритма обучения может занять очень много времени. При фиксированных ресурсах часто лучше потратить больше времени на сбор дополнительных данных обучения и более информативных функций, чем тратить дополнительное время на настройку алгоритмов обучения.
Наиболее широко используемые алгоритмы обучения:
При наличии набора обучающих примеров в форме, такой что — вектор признаков -го примера, а — его метка (т. е. класс), обучающий алгоритм ищет функцию , где — входное пространство, а — выходное пространство. Функция является элементом некоторого пространства возможных функций , обычно называемого пространством гипотез . Иногда удобно представлять с помощью функции подсчета баллов, такой что определяется как возвращающее значение, дающее наивысшую оценку: . Пусть обозначает пространство функций подсчета баллов.
Хотя и может быть любым пространством функций, многие алгоритмы обучения являются вероятностными моделями, где принимает форму условной вероятностной модели или принимает форму совместной вероятностной модели . Например, наивный байесовский и линейный дискриминантный анализ являются совместными вероятностными моделями, тогда как логистическая регрессия является условной вероятностной моделью.
Существует два основных подхода к выбору или : эмпирическая минимизация риска и структурная минимизация риска . [6] Эмпирическая минимизация риска ищет функцию, которая наилучшим образом соответствует обучающим данным. Структурная минимизация риска включает штрафную функцию , которая контролирует компромисс смещения/дисперсии.
В обоих случаях предполагается, что обучающий набор состоит из выборки независимых и одинаково распределенных пар , . Для того чтобы измерить, насколько хорошо функция соответствует обучающим данным, определяется функция потерь . Для обучающего примера потеря предсказания значения составляет .
Риск функции определяется как ожидаемая потеря . Это можно оценить по данным обучения как
При минимизации эмпирического риска алгоритм контролируемого обучения ищет функцию, которая минимизирует . Следовательно, алгоритм контролируемого обучения может быть построен путем применения алгоритма оптимизации для нахождения .
Когда — условное распределение вероятностей , а функция потерь — отрицательный логарифм правдоподобия: , то эмпирическая минимизация риска эквивалентна оценке максимального правдоподобия .
Когда содержит много функций-кандидатов или обучающий набор недостаточно велик, минимизация эмпирического риска приводит к высокой дисперсии и плохому обобщению. Обучающий алгоритм способен запоминать обучающие примеры, не обобщая их хорошо. Это называется переобучением .
Минимизация структурного риска стремится предотвратить переобучение путем включения штрафа за регуляризацию в оптимизацию. Штраф за регуляризацию можно рассматривать как реализацию формы бритвы Оккама , которая предпочитает более простые функции более сложным.
Было использовано множество штрафов, соответствующих различным определениям сложности. Например, рассмотрим случай, когда функция является линейной функцией вида
Популярный штраф регуляризации — это , который является квадратом евклидовой нормы весов, также известной как норма. Другие нормы включают норму, и «норму» , которая является числом ненулевых s. Штраф будет обозначаться как .
Задача оптимизации контролируемого обучения заключается в нахождении функции , которая минимизирует
Параметр контролирует компромисс смещения-дисперсии. Когда , это дает эмпирическую минимизацию риска с низким смещением и высокой дисперсией. Когда велико, алгоритм обучения будет иметь высокое смещение и низкую дисперсию. Значение может быть выбрано эмпирически с помощью перекрестной проверки .
Штраф за сложность имеет байесовскую интерпретацию как отрицательную логарифмическую априорную вероятность , в этом случае апостериорная вероятность равна .
Методы обучения, описанные выше, являются дискриминативными методами обучения, поскольку они стремятся найти функцию , которая хорошо различает различные выходные значения (см. дискриминативную модель ). Для особого случая, когда — совместное распределение вероятностей , а функция потерь — отрицательное логарифмическое правдоподобие, говорят, что алгоритм минимизации риска выполняет генеративное обучение , поскольку может рассматриваться как генеративная модель , которая объясняет, как были сгенерированы данные. Генеративное обучение часто проще и более эффективно с вычислительной точки зрения, чем дискриминативное обучение. В некоторых случаях решение может быть вычислено в замкнутой форме, как в наивном байесовском и линейном дискриминантном анализе .
Существует несколько способов обобщения стандартной проблемы контролируемого обучения: