Статья Автор: Деникина Н.В., Деникин А.В.

Train, validation, test

Проверять на том, чему учил, нельзя

Допустим, модель угадывает время на всех вчерашних заказах с точностью до минуты. Значит ли это, что завтра она сработает? Не значит ничего: вчерашние ответы можно просто запомнить.

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

Чтобы отличить «выучил правило» от «запомнил ответы», часть данных откладывают и не показывают модели вовсе.


Три части

Обобщение — способность модели работать на данных, которых она не видела. Ради него всё и затевается; на обучающих данных высокая точность не стоит ничего.

  • train — на ней модель учится.
  • val — на ней выбирают: сколько слоёв, какой шаг обучения, когда остановиться.
  • test — открывается один раз, когда всё уже решено.

Если подбирать параметры по test, он превращается во второй train, и честной оценки не остаётся ни одной. Каждый взгляд на тест — это чуть-чуть подгонки под него, даже если ты ничего специально не делал.

Тест открывают один раз.



Вывод
3500
750
750
0
5000

В датасете 1200 примеров. Разбиение 60 / 20 / 20, доли считаются от общего числа и округляются вниз, остаток уходит в test. Сколько примеров попадёт в test?

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


Отметь все варианты, в которых оценка на тесте окажется завышенной.

Утечка

Утечка — это когда в обучение просачивается информация из теста. Модель показывает отличный результат, а в работе проваливается, и понять почему бывает очень трудно.

Самая частая утечка: посчитали среднее и разброс по всем данным, а разделили потом. Вроде безобидно — но среднее теперь знает про тестовые примеры.


В датасете 5000 примеров, разбиение 70 / 15 / 15. Сколько примеров попадёт в val?


Вывод
24.5
20.0
False

Числа разные. Значит, нормируя по всем данным, ты сообщил модели кое-что о тесте — и оценка перестала быть честной.

Загрузка...
Чтобы оставить комментарий, необходимо авторизоваться
💬
Пока нет комментариев. Будьте первым!
Печать