k кратная перекрестная проверка
Предположим, у вас есть 100 точек данных. Для перекрестной проверки в кратном порядке эти 100 точек делятся на одинаковых по размеру и взаимоисключающих «складок». Для = 10 вы можете назначить точки 1-10 для сгиба # 1, 11-20 для сгиба # 2 и т. Д., Заканчивая назначением точек 91-100 для сгиба # 10. Затем мы выбираем один фолд в качестве тестового набора и используем оставшиеся фолды для формирования тренировочных данных. Для первого запуска вы можете использовать точки 1-10 в качестве тестового набора и 11-100 в качестве тренировочного набора. Следующий прогон затем будет использовать точки 11-20 в качестве тестового набора и тренироваться в точках 1-10 плюс 21-100 и т. Д., Пока каждый фолд не будет использован один раз в качестве тестового набора.kkkk−1
Монте-Карло Кросс Валидация
Монте-Карло работает несколько иначе. Вы случайным образом выбираете (без замены) некоторую часть ваших данных, чтобы сформировать тренировочный набор, а затем назначаете оставшиеся точки тестовому набору. Затем этот процесс повторяется несколько раз, каждый раз генерируя (произвольно) новые тренировочные и тестовые разделы. Например, предположим, что вы решили использовать 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 ) ,