К-фолд против Монте-Карло перекрестной проверки

29

Я пытаюсь изучить различные методы перекрестной проверки, прежде всего с намерением применить к методам многомерного анализа под наблюдением. Два, с которыми я столкнулся, являются методами перекрестной проверки K-fold и Monte Carlo. Я читал, что K-fold - это вариант Монте-Карло, но я не уверен, что полностью понимаю, из чего состоит определение Монте-Карло. Может кто-нибудь объяснить, пожалуйста, различие между этими двумя методами?

Liam
источник
Поэтому я был бы прав, если бы сказал, что Монте-Карло - это случайные размеры учебных и тестовых наборов, а k-кратный - это определенный размер наборов? Я видел вышеупомянутую страницу, но не совсем понял, в чем разница.
Лиам
Я знаком с различными типами перекрестной проверки и проверки за пределами начальной загрузки, но еще не сталкивался с термином Монте-Карло (возможно, я знаю его под другим именем). Не могли бы вы дать ссылку или процитировать описание того, как работает перекрестная проверка Монте-Карло?
cbeleites поддерживает Монику
Самое простое и открытое описание Монте-Карло на вики . Я просто не вижу различий между методами k-fold и Monte Carlo.
Лиам

Ответы:

36

k кратная перекрестная проверка

Предположим, у вас есть 100 точек данных. Для перекрестной проверки в кратном порядке эти 100 точек делятся на одинаковых по размеру и взаимоисключающих «складок». Для = 10 вы можете назначить точки 1-10 для сгиба # 1, 11-20 для сгиба # 2 и т. Д., Заканчивая назначением точек 91-100 для сгиба # 10. Затем мы выбираем один фолд в качестве тестового набора и используем оставшиеся фолды для формирования тренировочных данных. Для первого запуска вы можете использовать точки 1-10 в качестве тестового набора и 11-100 в качестве тренировочного набора. Следующий прогон затем будет использовать точки 11-20 в качестве тестового набора и тренироваться в точках 1-10 плюс 21-100 и т. Д., Пока каждый фолд не будет использован один раз в качестве тестового набора.kkkk1

Монте-Карло Кросс Валидация

Монте-Карло работает несколько иначе. Вы случайным образом выбираете (без замены) некоторую часть ваших данных, чтобы сформировать тренировочный набор, а затем назначаете оставшиеся точки тестовому набору. Затем этот процесс повторяется несколько раз, каждый раз генерируя (произвольно) новые тренировочные и тестовые разделы. Например, предположим, что вы решили использовать 10% ваших данных в качестве тестовых данных. Тогда ваш набор тестов на повтор № 1 может быть точками 64, 90 , 63, 42 , 65, 49, 10, 64, 96 и 48. При следующем запуске ваш набор тестов может быть 90 , 60, 23, 67, 16, 78, 42 , 17, 73 и 26. Поскольку разбиения выполняются независимо для каждого прогона, одна и та же точка может появляться в тестовом наборе несколько раз,что является основным отличием между Монте-Карло и перекрестной проверкой .

сравнение

Каждый метод имеет свои преимущества и недостатки. При перекрестной проверке каждая точка проверяется ровно один раз, что кажется справедливым. Однако перекрестная проверка только исследует несколько возможных способов разделения ваших данных. Монте-Карло позволяет исследовать несколько больше возможных разделов, хотя вы вряд ли получите все из них - есть возможных способов 50/50 разделить 100 точек данных поставил(!).(10050)1028

Если вы пытаетесь сделать вывод (т. Е. Статистически сравнить два алгоритма), усреднение результатов кратного прогона перекрестной проверки дает вам (почти) объективную оценку производительности алгоритма, но с большой дисперсией (как вы ожидайте иметь только 5 или 10 точек данных). Поскольку вы можете, в принципе, запускать его столько, сколько хотите / можете себе позволить, перекрестная проверка Монте-Карло может дать вам менее переменную, но более предвзятую оценку.k

Некоторые подходы объединяют два, как в перекрестной проверке 5x2 ( идею см. В Dietterich (1998) , хотя я думаю, что с тех пор произошли некоторые дальнейшие улучшения), или путем исправления смещения (например, Nadeau and Bengio, 2003 ) ,

Мэтт Краузе
источник
2
Кто-то спросил через предложенную очередь правок, выполняется ли Монте-Карло с заменой или без нее. Для каждого забега в Монте-Карло набор тренировок и тестов рисуется без замены (т. Е. Каждая точка назначается ровно один раз для поезда или тестового набора). Однако прогоны выполняются независимо, поэтому данный пример может появляться в одном наборе несколько раз; В этом главное отличие Монте-Карло от кросс-валидации!
Мэтт Краузе
13

Предположим, - это размер набора данных, - это число подмножеств , - размер обучающего набора, а - размер набора. Таким образом, для кратно перекрестной проверки и для Монте - Карло перекрестной проверки.NkkntnvN=k×nvkN=nt+nv

k - кратная перекрестная проверка (kFCV) делит точек данных на взаимоисключающих подмножеств одинакового размера. Затем процесс оставляет один из поднаборов в качестве набора проверки и обучается на оставшихся подмножествах. Этот процесс повторяется раз, каждый раз оставляя один из поднаборов Размер может варьироваться от до ( называется перекрестной проверкой с пропуском). Авторы в [2] предлагают установить или .NkkkkkN2k=Nk=510

Перекрестная проверка Монте-Карло (MCCV) просто разбивает точек данных на два подмножества и путем выборки без замены данных . Затем модель обучается на подмножестве и проверяется на подмножестве . Существует уникальных обучающих наборов, но MCCV избавляет от необходимости выполнять это много итераций. Чжан [3] показывает, что выполнение MCCV для итераций имеет результаты, близкие к перекрестной проверке по всем уникальным обучающим наборам. Следует отметить, что в литературе отсутствуют исследования для большого N. Nntnvntntnv(Nnt)N2(Nnt)

Выбор и влияет на смещения / дисперсии. Чем больше или , тем ниже смещение и выше дисперсия. Большие наборы тренировок больше похожи между итерациями, следовательно, по сравнению с данными обучения. См. [2] для получения дополнительной информации об этом обсуждении. Смещение и дисперсия kFCV и MCCV различны, но смещение двух методов можно сделать равным, выбрав соответствующие уровни и . Значения смещения и дисперсии для обоих методов приведены в [1] (в этой статье MCCV называется моделью повторного обучения).kntkntknt


[1] Бурман, П. (1989). Сравнительное исследование обычной перекрестной проверки, кратной перекрестной проверки и повторяющихся методов модели тестирования. Бометрика 76 503-514.v

[2] Хасти Т., Тибширани Р. и Фридман Дж. (2011). Элементы статистического обучения: сбор данных, вывод и прогнозирование. Второе изд. Нью-Йорк: Спрингер.

[3] Чжан П. (1993). Выбор модели с помощью перекрестной проверки Muiltfold. Энн. Стат. 21 299–313

глава данных
источник
7

Два других ответа великолепны, я просто добавлю две картинки и один синоним.


K-кратная перекрестная проверка (kFCV):

введите описание изображения здесь

Перекрестная проверка Монте-Карло (MCCV) = повторная проверка случайной подвыборки (RRSSV):

введите описание изображения здесь


Ссылки:

Изображения взяты из (1) ( стр. 64 и 65 ), а синоним упоминается в (1) и (2).

Франк Дернонкур
источник