Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Контролируемое обучение является машинным обучением задачей обучения функции , которая отображает входную к выходу на основе примера пара входа-выходе. [1] Он выводит функцию изразмеченные обучающие данные, состоящие из набора обучающих примеров . [2] При обучении с учителем каждый пример представляет собой пару, состоящую из входного объекта (обычно вектора) и желаемого выходного значения (также называемого контрольным сигналом ). Алгоритм обучения с учителем анализирует данные обучения и выдает предполагаемую функцию, которую можно использовать для отображения новых примеров. Оптимальный сценарий позволит алгоритму правильно определять метки классов для невидимых экземпляров. Это требует от алгоритма обучения «разумного» обобщения обучающих данных на невидимые ситуации (см. Индуктивное смещение). Это статистическое качество алгоритма измеряется с помощью так называемой ошибки обобщения. [3]

Параллельная задача в психологии человека и животных часто называется концептуальным обучением .

Шаги [ править ]

Чтобы решить данную проблему контролируемого обучения, необходимо выполнить следующие шаги:

  1. Определите тип обучающих примеров. Прежде чем делать что-либо еще, пользователь должен решить, какие данные будут использоваться в качестве обучающего набора. В случае анализа почерка , например, это может быть один рукописный символ, целое рукописное слово или целая строка почерка.
  2. Соберите тренировочный набор. Обучающий набор должен отражать реальное использование функции. Таким образом, собирается набор входных объектов и соответствующие выходные данные, полученные либо от экспертов-людей, либо на основе измерений.
  3. Определите входное представление функции изученной функции. Точность изученной функции сильно зависит от того, как представлен входной объект. Как правило, входной объект преобразуется в вектор признаков , который содержит ряд функций, описывающих объект. Количество функций не должно быть слишком большим из-за проклятия размерности ; но должен содержать достаточно информации, чтобы точно предсказать результат.
  4. Определите структуру изученной функции и соответствующий алгоритм обучения. Например, инженер может выбрать использование опорных векторных машин или деревьев решений .
  5. Завершите дизайн. Запустите алгоритм обучения на собранной обучающей выборке. Некоторые алгоритмы обучения с учителем требуют от пользователя определения определенных параметров управления. Эти параметры могут быть скорректированы путем оптимизации производительности на подмножестве (называемом набором проверки ) обучающего набора или посредством перекрестной проверки .
  6. Оцените точность усвоенной функции. После настройки параметров и обучения производительность результирующей функции должна быть измерена на тестовом наборе, отдельном от обучающего набора.

Выбор алгоритма [ править ]

Доступен широкий спектр алгоритмов контролируемого обучения, каждый со своими сильными и слабыми сторонами. Не существует единого алгоритма обучения, который лучше всего работал бы со всеми задачами обучения с учителем (см. Теорему о запрете бесплатного обеда ).

При обучении с учителем следует учитывать четыре основных вопроса:

Компромисс смещения и дисперсии [ править ]

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

Сложность функции и количество обучающих данных [ править ]

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

Размерность входного пространства [ править ]

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

Шум в выходных значениях [ править ]

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

На практике существует несколько подходов к снижению шума в выходных значениях, таких как ранняя остановка для предотвращения переобучения, а также обнаружение и удаление зашумленных обучающих примеров перед обучением алгоритма контролируемого обучения. Существует несколько алгоритмов, которые идентифицируют зашумленные обучающие примеры, и удаление предполагаемых зашумленных обучающих примеров перед обучением снизило ошибку обобщения со статистической значимостью . [6] [7]

Другие факторы, которые следует учитывать [ править ]

Другие факторы, которые следует учитывать при выборе и применении алгоритма обучения, включают следующее:

  • Неоднородность данных. Если векторы признаков включают в себя функции многих различных типов (дискретные, дискретно упорядоченные, подсчеты, непрерывные значения), некоторые алгоритмы применять легче, чем другие. Многие алгоритмы, включая машины опорных векторов , линейную регрессию , логистическую регрессию , нейронные сети и методы ближайшего соседа , требуют, чтобы входные характеристики были числовыми и масштабировались до аналогичных диапазонов (например, до интервала [-1,1]). Особенно чувствительны к этому методы, использующие функцию расстояния, такие как методы ближайшего соседа и вспомогательные векторные машины с гауссовскими ядрами . Преимущество деревьев решений в том, что они легко обрабатывают разнородные данные.
  • Избыточность данных. Если входные функции содержат избыточную информацию (например, сильно коррелированные функции), некоторые алгоритмы обучения (например, линейная регрессия , логистическая регрессия и методы на основе расстояния ) будут работать плохо из-за числовой нестабильности. Эти проблемы часто можно решить, введя некоторую форму регуляризации .
  • Наличие взаимодействий и нелинейностей. Если каждая из функций делает независимый вклад в выходной, то алгоритмы , основанные на линейных функций (например, линейной регрессии , логистической регрессии , опорных векторов , наивные Байеса ) и функции расстояния (например, близкие методы соседа , поддержка векторных машин с гауссовым ядра ) в целом работают хорошо. Однако, если между функциями существует сложное взаимодействие, тогда такие алгоритмы, как деревья решений и нейронные сетиработают лучше, потому что они специально разработаны для обнаружения этих взаимодействий. Также могут применяться линейные методы, но при их использовании инженер должен вручную указать взаимодействия.

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

Алгоритмы [ править ]

Наиболее широко используемые алгоритмы обучения:

  • Машины опорных векторов
  • линейная регрессия
  • логистическая регрессия
  • наивный байесовский
  • линейный дискриминантный анализ
  • деревья решений
  • алгоритм k-ближайшего соседа
  • Нейронные сети ( многослойный персептрон )
  • Изучение подобия

Как работают алгоритмы контролируемого обучения [ править ]

Учитывая набор обучающих примеров такой формы , которая является вектором признаков i-го примера и является его меткой (т. Е. Классом), алгоритм обучения ищет функцию , где - пространство ввода, а - пространство вывода. Функция - это элемент некоторого пространства возможных функций , обычно называемого пространством гипотез . Иногда удобно представлять с использованием оценочной функции , такие , что определяется как возвращение значения , что дает самый высокий балл: . Обозначим через пространство оценочных функций.

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

Есть два основных подхода к выбору или : эмпирический минимизации рисков и минимизации структурного риска . [8] Минимизация эмпирического риска ищет функцию, которая лучше всего соответствует обучающим данным. Минимизация структурного риска включает функцию штрафа, которая контролирует компромисс смещения / дисперсии.

В обоих случаях предполагается, что обучающий набор состоит из выборки независимых и одинаково распределенных пар , . Чтобы измерить, насколько хорошо функция соответствует обучающим данным, определяется функция потерь . Для примера обучения потеря предсказания значения составляет .

Риск функции определяется как ожидаемая потеря . Это можно оценить по данным обучения как

.

Минимизация эмпирического риска [ править ]

При минимизации эмпирического риска алгоритм обучения с учителем ищет функцию, которая минимизирует . Следовательно, алгоритм контролируемого обучения может быть построен путем применения алгоритма оптимизации для поиска .

Когда - это условное распределение вероятностей, а функция потерь - это отрицательное логарифмическое правдоподобие:, то минимизация эмпирического риска эквивалентна оценке максимального правдоподобия .

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

Минимизация структурных рисков [ править ]

Минимизация структурных рисков направлена ​​на предотвращение переобучения за счет включения в оптимизацию штрафа за регуляризацию . Штраф за регуляризацию можно рассматривать как реализацию разновидности бритвы Оккама, которая предпочитает более простые функции более сложным.

Применяются самые разные штрафы, соответствующие различным определениям сложности. Например, рассмотрим случай, когда функция является линейной функцией вида

.

Популярным штрафом за регуляризацию является квадрат евклидовой нормы весов, также известный как норма. Другие нормы включают норму, и норму, которая представляет собой количество ненулевых s. Штраф будет обозначен .

Задача оптимизации обучения с учителем состоит в том, чтобы найти функцию, которая минимизирует

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

Сложность штраф имеет байесовскую интерпретацию как отрицательный логарифм предварительного вероятности , и в этом случай является задней probabability из .

Генеративное обучение [ править ]

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

Обобщения [ править ]

Существует несколько способов обобщения стандартной задачи контролируемого обучения:

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

Подходы и алгоритмы [ править ]

  • Аналитическое обучение
  • Искусственная нейронная сеть
  • Обратное распространение
  • Повышение (мета-алгоритм)
  • Байесовская статистика
  • Рассуждения на основе случая
  • Изучение дерева решений
  • Индуктивное логическое программирование
  • Регрессия гауссовского процесса
  • Генетическое программирование
  • Групповой метод обработки данных
  • Оценщики ядра
  • Обучающие автоматы
  • Системы обучающих классификаторов
  • Минимальная длина сообщения ( деревья решений, графы решений и т. Д.)
  • Мультилинейное подпространственное обучение
  • Наивный байесовский классификатор
  • Классификатор максимальной энтропии
  • Условное случайное поле
  • Алгоритм ближайшего соседа
  • Вероятно, приблизительно правильное обучение (PAC) обучение
  • Правила Ripple Down , методология приобретения знаний
  • Символьные алгоритмы машинного обучения
  • Подсимволические алгоритмы машинного обучения
  • Опорные векторные машины
  • Машины минимальной сложности (MCM)
  • Случайные леса
  • Ансамбли классификаторов
  • Порядковая классификация
  • Предварительная обработка данных
  • Обработка несбалансированных наборов данных
  • Статистическое реляционное обучение
  • Proaftn , алгоритм многокритериальной классификации

Приложения [ править ]

  • Биоинформатика
  • Хеминформатика
    • Количественная структура - взаимосвязь деятельности
  • Маркетинг баз данных
  • Распознавание почерка
  • Поиск информации
    • Учимся ранжировать
  • Извлечение информации
  • Распознавание объектов в компьютерном зрении
  • Оптическое распознавание символов
  • Обнаружение спама
  • Распознавание образов
  • Распознавание речи
  • Обучение с учителем - это частный случай нисходящей причинно-следственной связи в биологических системах.
  • Классификация рельефа с использованием спутниковых снимков [9]

Общие проблемы [ править ]

  • Теория вычислительного обучения
  • Индуктивное смещение
  • Переобучение (машинное обучение)
  • (Не откалибровано) Вероятности членства в классе
  • Обучение без учителя
  • Пробелы версий

См. Также [ править ]

  • Список наборов данных для исследования машинного обучения

Ссылки [ править ]

  1. ^ Стюарт Дж. Рассел, Питер Норвиг (2010) Искусственный интеллект: современный подход , третье издание , Prentice Hall ISBN  9780136042594 .
  2. ^ Меряр Мори , Afshin Rostamizadeh, Ameet Talwalkar (2012) Основы машинного обучения , The MIT Press ISBN 9780262018258 . 
  3. ^ Кабанн, Вивьен; Руди, Алессандро; Бах, Фрэнсис (2021). «Быстрые темпы в структурированном прогнозировании». CoRR . arXiv : 2102.00760 .
  4. ^ С. Геман, Э. Биненшток и Р. Дурса (1992). Нейронные сети и дилемма смещения / дисперсии . Нейронные вычисления 4, 1–58.
  5. ^ Дж. Джеймс (2003) Дисперсия и смещение для общих функций потерь, Машинное обучение 51, 115-135. ( http://www-bcf.usc.edu/~gareth/research/bv.pdf )
  6. ^ CE Brodely и MA Фридл (1999). Выявление и устранение неправильно маркированных учебных заведений, журнал исследований искусственного интеллекта 11, 131-167. ( http://jair.org/media/606/live-606-1803-jair.pdf )
  7. ^ MR Смит и Т. Мартинес (2011). «Повышение точности классификации путем выявления и удаления экземпляров, которые должны быть неправильно классифицированы». Труды международной совместной конференции по нейронным сетям (IJCNN 2011) . С. 2690–2697. CiteSeerX 10.1.1.221.1371 . DOI : 10.1109 / IJCNN.2011.6033571 . 
  8. ^ Вапник, В.Н. Природа статистической теории обучения (2-е изд.), Springer Verlag, 2000.
  9. ^ A. Maity (2016). «Контролируемая классификация поляриметрических данных RADARSAT-2 для различных особенностей суши». arXiv : 1608.00501 [ cs.CV ].

Внешние ссылки [ править ]

  • Программное обеспечение с открытым исходным кодом для машинного обучения (MLOSS)