Как справиться с разницей между распределением тестового набора и обучающего набора?


23

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

Скажем, для крупномасштабной задачи мульти-классификации, которая пытается классифицировать описания продуктов примерно на 17 000 классов. Учебный набор будет иметь сильно искаженные классные приоры, так что в некоторых классах может быть много обучающих примеров, а в некоторых - только несколько. Предположим, мы получили тестовый набор с неизвестными метками классов от клиента. Мы пытаемся классифицировать каждый продукт в тестовом наборе в один из 17 000 классов, используя классификатор, обученный на обучающем наборе. Набор тестов, вероятно, имел бы искаженные распределения классов, но, вероятно, сильно отличался от таковых в обучающем наборе, поскольку они могли быть связаны с различными областями бизнеса. Если два распределения классов сильно различаются, обученный классификатор может не работать в тестовом наборе. Это кажется особенно очевидным с наивным байесовским классификатором.

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

Ответы:


17

Если разница заключается только в относительных частотах классов в обучающем и тестовом наборах, то я бы рекомендовал процедуру EM, представленную в этой статье:

Marco Saerens, Patrice Latinne, Christine Decaestecker: корректировка выходов классификатора для новых априорных вероятностей: простая процедура. Нейронные вычисления 14 (1): 21-41 (2002) ( www )

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

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

Смотрите также хороший пост в блоге Алекса Смолы здесь .


Большое вам спасибо за предоставление так много полезных указателей!
Fashandge

Нет проблем, такие «нестандартные» ситуации действительно интересны, и ковариатный сдвиг является особенно полезной областью исследования.
Дикран Сумчатый

1
Приятно знать, что. Хотя и «нестандартно», но на практике это реально.
Fashandge

1

Я нашел отличный учебник по адаптации домена, который может помочь объяснить это более подробно: http://sifaka.cs.uiuc.edu/jiang4/domain_adaptation/survey/da_survey.html Единственное решение, которое здесь не упоминалось, основано на на ADABOOST. Вот ссылка на оригинальную статью: http://ftp.cse.ust.hk/~qyang/Docs/2007/tradaboost.pdf Основная идея состоит в том, чтобы использовать некоторые из новых тестовых данных для обновления обучения на основе данных поезда. Эта статья - верхушка айсберга о трансферном обучении, где вы берете то, что знаете из одного задания, и применяете его к другому.


1
Не могли бы вы включить некоторые ключевые итоги из первого урока, в частности, в случае, если ссылка перестает работать или ее местоположение меняется? У нас есть проблема с «гниением ссылок», когда ценность некоторых наших старых ответов снизилась из-за прекращения работы ссылок, поэтому было бы хорошо, если ответы могут быть настолько автономными, насколько это возможно
Silverfish

Вот архивированная ссылка: web.archive.org/web/20170930145238/http://sifaka.cs.uiuc.edu/…
Justas
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.