Кросс-валидация

Вывод, оценивание и принятие решений по данным

Нельзя судить модель по ошибке обучения; она уже видела эти данные и может жульничать, запоминая. Нужна ошибка на данных, которые она никогда не видела. Но отложение одного тестового множества тратит данные и даёт шумную оценку. Кросс-валидация решает обе проблемы.

В k-блочной кросс-валидации разделите данные на k равных блоков. Обучайте на k−1, валидируйте на отложенном, и вращайте, чтобы каждый блок был валидационным ровно один раз. Усредните k ошибок валидации для стабильной оценки генерализации.

Кросс-валидация подобна сдаче нескольких пробных экзаменов, чтобы предсказать свой балл на реальном экзамене. Если бы вы оценивали себя только по вопросам, ответы на которые вы уже выучили наизусть, вы бы сильно переоценили себя, поэтому каждый раз вы откладываете свежую партию вопросов, оцениваете себя по ним и чередуете, какая партия остается про запас. Усреднение ваших баллов по всем пробным попыткам дает гораздо более надежный прогноз того, как вы справитесь в нужный день, чем любой одиночный пробный экзамен.

Где это встречается в MLКросс-валидация — как ML-практики выбирают модели и гиперпараметры без самообмана. Она оценивает ошибку генерализации (величину, о которой разложение смещения-дисперсии), используя все данные эффективно. И это передовая против утечки данных: тихого бага, где информация из тестового распределения просачивается в обучение и производит великолепные, полностью фальшивые оценки валидации.
▶ Кросс-валидация
← Разложение смещения и дисперсииМетрики оценки →