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

Одна функция, много возможных выборок

Сервис прогнозирует длительность поездки. Зафиксируем правило ff до просмотра тестовых данных и loss \ell. Истинный риск

R(f)=E(X,Y)P(f(X),Y)R(f)=\mathbb E_{(X,Y)\sim P}\ell(f(X),Y)

усредняет по неизвестному распределению будущих поездок. По независимой выборке D={(xi,yi)}i=1nD=\{(x_i,y_i)\}_{i=1}^n вычисляется

R^n(f)=1ni=1n(f(xi),yi).\widehat R_n(f)=\frac1n\sum_{i=1}^n\ell(f(x_i),y_i).

Если строки независимы и распределены как будущее, то ER^n(f)=R(f)\mathbb E\widehat R_n(f)=R(f). Но конкретная оценка выше или ниже истины. Её стандартный разброс убывает примерно как 1/n1/\sqrt n, если дисперсия loss конечна.

Рисунок шире экрана — проведите по немуОткрыть целиком ↗
Распределения оценки риска для тестовых выборок размеров 50, 200 и 2000 вокруг одной вертикали истинного риска
Рис. 58.1. Эмпирический риск по повторным тестовым выборкам

Вертикальная линия — фиксированный R(f)R(f). Три кривые показывают R^n(f)\widehat R_n(f) по множеству независимых test-выборок. Центр сохраняется, ширина уменьшается с nn, но ни одна отдельная выборка не обязана попасть точно в линию.

Выбранная функция отличается от фиксированной

Пусть обучены сто моделей и выбрана та, у которой минимален validation loss. Даже если все имеют одинаковый истинный риск, победит модель с удачным отрицательным шумом оценки:

m^=argminmR^val(fm).\widehat m=\arg\min_m\widehat R_{\mathrm{val}}(f_m).

Поэтому R^val(fm^)\widehat R_{\mathrm{val}}(f_{\widehat m}) оптимистична как оценка R(fm^)R(f_{\widehat m}). Чем больше кандидатов и шумнее validation, тем сильнее эффект. Независимая test-часть оценивает уже выбранную процедуру один раз.

Рисунок шире экрана — проведите по немуОткрыть целиком ↗
Пятьдесят пар истинного и validation риска, выбранная минимальная оценка выделена и ниже своего истинного значения
Рис. 58.2. Победитель получает удачный шум

Серые точки показывают истинные риски кандидатов, вертикальные отрезки — шумные validation-оценки. Красным отмечен минимум наблюдаемых оценок. Он выбран одновременно за качество и за случайное отклонение вниз.

Train, validation, test

Train используется для оценки параметров. Validation — для выбора гиперпараметров, признаков, архитектуры и порога. Test — для финальной оценки замороженной процедуры. Если данных мало, cross-validation циклически меняет validation-fold, но внешняя test-часть остаётся отдельной.

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

Концентрация среднего

Если loss ограничен 010\leq\ell\leq1, неравенство Хёффдинга для фиксированной ff даёт

P{R^n(f)R(f)ε}2e2nε2.P\{|\widehat R_n(f)-R(f)|\geq\varepsilon\} \leq2e^{-2n\varepsilon^2}.

Оно не требует нормальности и показывает экспоненциальное уменьшение вероятности большого отклонения. Чтобы правая часть была не больше δ\delta, достаточно

nlog(2/δ)2ε2.n\geq\frac{\log(2/\delta)}{2\varepsilon^2}.

Оценка грубая, зато явно связывает точность, уверенность и объём.

Лаборатория Монте-Карло

Истинный риск, выборочное среднее и выбор победителя

Загружается живая иллюстрация…

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

Независимость строк — содержательное условие

В NYC Taxi одна машина совершает много поездок, соседние поездки делят погоду и пробки, данные одного дня имеют общий режим. Случайное перемешивание строк помещает почти одинаковые условия в train и test. Метрика отвечает на вопрос «предсказать ещё одну строку из того же дня», а не «предсказать следующую неделю».

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

Рисунок шире экрана — проведите по немуОткрыть целиком ↗
Одна таблица поездок разделена случайно по строкам, по времени и по водителям, стрелки показывают соответствующее будущее
Рис. 58.3. Три разбиения отвечают на три вопроса

Слева случайный split перемешивает дни и водителей. В центре последние недели образуют test. Справа целые водители удерживаются вне train. Под каждой схемой подписан объект обобщения: новая поездка в знакомом режиме, будущий период или новый водитель.

Offline и online риск

Offline test использует исторические метки и фиксированное распределение. После запуска модель меняет среду: рекомендательная система влияет на клики, маршрутизатор — на пробки, фильтр — на то, какие обращения увидит оператор. Online-эксперимент измеряет риск внутри этого контура.

Есть ещё shadow-режим: новая модель получает production-поток и строит прогнозы, но не управляет действиями. Он проверяет задержку, пропуски и сдвиг признаков без причинного влияния на пользователя. Shadow не заменяет A/B, если нужно узнать реакцию людей, зато обнаруживает инженерные расхождения между offline pipeline и реальным сервисом.

Метрики тоже могут иметь задержку. Возврат товара известен через месяц; ранний proxy «клик» способен улучшиться при ухудшении долгосрочной цели. Нужна цепочка proxy → outcome и guardrails, как в уроке об экспериментах.

Выбор loss определяет популяцию ошибок

Средняя RMSE сильно весит крупные ошибки; MAE — линейно; средний процентный loss взрывается около нулевого ответа. Урок 57 объяснял смысл функций потерь, а здесь важно: выбранная величина становится случайной переменной, чей средний риск оценивает test.

Помимо среднего показывают распределение: медиану, квантили, worst-group risk. Две модели с одинаковым средним могут различаться хвостом. Если редкая авария критична, среднее по миллионам обычных объектов её растворяет.

Сдвиг распределения

Равенство ER^=R\mathbb E\widehat R=R относится к тому же PP, из которого пришла выборка. При covariate shift меняется p(x)p(x), при label shift — частота классов, при concept shift — p(yx)p(y\mid x). Исторический test больше не оценивает будущий риск.

Importance weighting пытается пересчитать среднее с весами w(x)=pnew(x)/pold(x)w(x)=p_{\text{new}}(x)/p_{\text{old}}(x), но большие веса увеличивают variance. Надёжнее собирать свежую размеченную выборку и строить карту применимости.

От оценки к гарантии

Эмпирический риск — наблюдение, не печать качества. К нему добавляют интервал, описание split, состав популяции, дату, метрики групп и список решений, принятых по validation. Для адаптивного перебора моделей нужна цена выбора; её формально обсудит oracle inequality.

Хороший отчёт позволяет воспроизвести вопрос: на каких будущих объектах, какую потерю и при какой процедуре оценивает число. Без этих трёх частей «test error 4,2%» почти лишён смысла.

Как validation выбирает счастливчика

Пусть сто правил на самом деле имеют одинаковый риск 10%10\%. Каждое проверили на независимых 10001000 объектах. Для одного заранее выбранного правила стандартное отклонение наблюдаемой доли ошибок примерно равно

0,10,910000,0095.\sqrt{\frac{0{,}1\cdot0{,}9}{1000}}\approx0{,}0095.

Оценка около 8%8\% вполне возможна. Если же взять минимум из ста шумных оценок, почти наверняка найдётся особенно удачное правило. Его 8%8\% уже условно на победе и систематически занижает риск, хотя каждая отдельная validation была несмещённой.

Разделим работу на два слоя. Validation выбирает правило и становится частью алгоритма обучения. Один нетронутый test применяется к победителю ровно один раз и оценивает всю процедуру поиска. Если после test команда меняет признаки или гиперпараметры, набор фактически превращается в новую validation; нужна свежая проверка.

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

Задачи