Перекрестная проверка на простом английском?

Ответы:

54

Рассмотрим следующую ситуацию:

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

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

Чтобы решить вышеупомянутую проблему, я могу опробовать различные наборы «параметров» (т. Е. Различную комбинацию времени отправления и маршрута) по понедельникам, средам и пятницам, чтобы увидеть, какая комбинация является «лучшей». Идея состоит в том, что, как только я определил лучшую комбинацию, я могу использовать ее каждый день, чтобы достичь своей цели.

Проблема переоснащения

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

Одно из решений для переоснащения: перекрестная проверка

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

Расширяя аналогию со статистикой

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

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

jbaums
источник
2
Технически, это несанкционированная проверка, но можно представить, как распространить пример метрополитена на контекст перекрестной проверки. Если это поможет, я перепишу пример и оставшуюся часть текста, чтобы конкретно относиться к перекрестной проверке.
@ srikant .. слово «переиздание» как слово подсказывает мне, что что-то «чрезмерно» сделано, то есть… больше, чем требуется… так что же чрезмерно сделано? Это не из переменных? Мне жаль, что я много раз слышал об этом термине и хотел бы воспользоваться этой возможностью, чтобы прояснить это с вами.
Аюш Бияни
1
Я думаю, что этот ответ можно улучшить, добавив концепцию сгибов, которая является ключом к тому, как CV отличается от тестов на вынос. В примере (используя аббревиатуру M для понедельника, T для вторника, ..., R для четверга, ...): Итак, вы посмотрите на TWRF для лучшей комбинации и посмотрите, как это работает на M, затем на MWRF и посмотрите, как она работает на Т и т. д. Таким образом, каждый день используется как часть проблемы четыре раза и как проверка проблемы один раз, но никогда как задача и проверка в одном раунде.
Уэйн
43

Я думаю, что это лучше всего описать следующей картинкой (в данном случае показана перекрестная проверка в k-кратном размере):

альтернативный текст

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

Шейн
источник
2
В других местах на этом сайте, кажется, что k-кратная перекрестная проверка является лишь одним из типов перекрестной проверки, и ее описание не выполняет общей работы по описанию перекрестной проверки.
Расселпирс
3
@drknexus: Это справедливо, но я упоминаю, что это k-fold, и я хотел предоставить визуализацию процесса, чтобы помочь объяснить это.
Шейн
Быстрое пояснение: в этом случае nfold = 4 означает 25% для тестового набора; nfold = 5 означает 20% для тестового набора; nfold = 10 означает 10% для тестового набора и т. д.: nfold = n означает, что 100 / n процентов входит в тестовый набор?
johnjps111
9

«Старайтесь не изучать данные тренировок наизусть, убедившись, что обученная модель хорошо работает на независимых данных».

Андре Хольцнер
источник
3
Это мотивация для cv, а не описание самого cv.
Jbaums
6

Допустим, вы исследуете какой-то процесс; Вы собрали некоторые данные, описывающие это, и создали модель (статистическую или ML, не имеет значения). Но теперь, как судить, если это нормально? Вероятно, он подозрительно хорошо подходит для данных, на которых он построен, поэтому никто не поверит, что ваша модель настолько великолепна, что вы думаете.
Первая идея состоит в том, чтобы отделить подмножество ваших данных и использовать его для проверки построения модели вашим методом на остальных данных. Теперь результат определенно свободен от переоснащения, тем не менее (особенно для небольших наборов) вы могли (не) быть удачливыми и рисовать (меньше) более простые случаи для тестирования, делая его (сложнее) легче предсказать ... Также ваша точность / Оценка ошибки / достоверности бесполезна для сравнения / оптимизации модели, поскольку вы, вероятно, ничего не знаете о ее распределении.
В случае сомнений используйте грубую силу, поэтому просто скопируйте вышеописанный процесс, соберите несколько оценок точности / ошибки / достоверности и усредните их - и вы получите перекрестную проверку. Среди более точных оценок вы также получите гистограмму, так что вы сможете приблизить распределение или выполнить некоторые непараметрические тесты.
И это все; детали расщепления тестового поезда являются причиной различных типов CV, но, за исключением редких случаев и небольших различий в прочности, они довольно эквивалентны. Действительно, это огромное преимущество, потому что делает его пуленепробиваемым и справедливым методом; это очень трудно обмануть.


источник
3

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

ebony1
источник