Неконтролируемое, контролируемое и полуконтролируемое обучение


27

В контексте машинного обучения, в чем разница между

  • неконтролируемое обучение
  • контролируемое обучение и
  • полу-контролируемое обучение?

И каковы некоторые из основных алгоритмических подходов?


8
Во-первых, две строчки из вики: «В компьютерных науках обучение под наблюдением - это класс техник машинного обучения, в которых для обучения используются как помеченные, так и непомеченные данные - как правило, небольшое количество помеченных данных с большим количеством непомеченных данных. Обучение под наблюдением находится между обучением без присмотра (без каких-либо помеченных данных обучения) и обучением под надзором (с полностью помеченными данными обучения) ». Это помогает?

Что вы имеете в виду под «Алгоритмическими подходами»? Я дал несколько примеров приложений в своем ответе, это то, что вы ищете?
Питер Смит

Ответы:


20

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

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

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

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

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


1
Ваш ответ подразумевает, что контролируемое обучение предпочтительнее полууправляемого, когда это возможно. Это верно? Если нет, то когда обучение под наблюдением может быть лучше?
naught101

@ naught101 Как вы читаете это из его ответа? Я согласен с тем, что говорит Джон, но я бы сказал, что это противоположно тому, что вы говорите, а именно, что обучение под наблюдением предпочтительнее обучения под присмотром, где это возможно. То есть, если у вас есть некоторые помеченные данные и некоторые немеченые данные (как правило, намного больше, чем объем помеченных данных), вам будет лучше, если вы сможете использовать все данные, чем если бы вы могли использовать только помеченные данные. Весь смысл использования обучения под наблюдением состоит в том, чтобы превзойти результаты, достигнутые в результате обучения под наблюдением или обучения без учителя.
Hellogoodbye

@HelloGoodbye: потому что единственная выгода, указанная для обучения под наблюдением, заключается в том, что в некоторых случаях это дешевле, но у него есть дополнительный недостаток, заключающийся в большей сложности. Мне кажется разумным, что полностью контролируемое обучение будет проще и точнее (при прочих равных условиях), если предоставить более точные данные правды. Поэтому я просто просил привести примеры, в которых, учитывая выбор между ними, предпочтение будет отдаваться под наблюдением. Ваш комментарий имеет смысл, но есть ли случай, когда все данные помечены, и вы все равно предпочли бы полу-контролируемый?
naught101

@ naught101 Полагаю, если все данные помечены, вы не выиграете слишком много, используя полу-контролируемое обучение вместо обычного контролируемого обучения. Когда у вас много немеченых данных и вы проводите обучение под наблюдением, главная причина, по которой вы видите повышение производительности, заключается в том, что вы переносите обучение и также можете извлечь опыт из немаркированных данных.
Hellogoodbye

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

13

Обучение без учителя

Обучение без учителя - это когда у вас нет данных, помеченных для обучения. Примерами этого часто являются методы кластеризации.

Контролируемое обучение

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

Полу-контролируемое обучение

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


7

Я не думаю, что контролируемый / неконтролируемый - лучший способ думать об этом. Для интеллектуального анализа данных лучше подумать о том, что вы пытаетесь сделать. Есть четыре основные задачи:

  1. прогнозирование. если вы предсказываете реальное число, оно называется регрессией. если вы предсказываете целое число или класс, это называется классификацией.

  2. моделирование. моделирование - это то же самое, что и прогнозирование, но эта модель понятна людям. Нейронные сети и опорные векторные машины прекрасно работают, но не дают понятных моделей [1]. деревья решений и классическая линейная регрессия - примеры простых для понимания моделей.

  3. сходство. если вы пытаетесь найти естественные группы атрибутов, это называется факторный анализ. если вы пытаетесь найти естественные группы наблюдений, это называется кластеризацией.

  4. ассоциация. это очень похоже на корреляцию, но для огромных наборов двоичных данных.

[1] Очевидно, Goldman Sachs создал тонны отличных нейронных сетей для предсказания, но затем никто не понял их, поэтому им пришлось написать другие программы, чтобы попытаться объяснить нейронные сети.


Можете ли вы дать больше информации об истории GS? (не уверен, почему я не могу прокомментировать ваш комментарий)
YA

я не могу точно вспомнить, где я это читал, но вот еще немного информации об AI @ GS: hplusmagazine.com/2009/08/06/…
Нил МакГиган,

У меня такое чувство, что 1,2 описывают обучение в контролируемой обстановке, а 3,4 - в неконтролируемой. Кроме того: что, если вы ищете сходства, чтобы предсказать? Это считается моделированием?
г-н Цжолдер
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.