О точности скользящего экзамена

Материал из MachineLearning.

Версия от 08:22, 29 июня 2026; Nvm (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

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

Термины скользящий экзамен (скользящий контроль) и кроссвалидация используем как синонимы.

Риск и средний риск

Для начала разберёмся, что всё-таки оценивает скользящий экзамен: риск конкретной модели (решающей функции) или средний риск метода (алгоритма). Встречаются утверждения, что кроссвалидация даёт оценку среднего риска, но не риска.

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

Вероятно, представление о кроссвалидации как оценке среднего риска распространилось из учебника The Elements of Statistical Learning (Hastie T., Tibshirani R., Friedman J.).

Приведём цитату из него. «Estimation of Err_{\mathcal{T}} will be our goal, although we will see that Err is more amenable to statistical analysis, and most methods effectively estimate the expected error. It does not seem possible to estimate conditional error effectively, given only the information in the same training set.»

Это можно перевести следующим образом. «Наша цель — оценить риск, хотя в статистическом анализе чаще упоминается средний риск \mathsf{E} R, и большинство методов эффективно оценивают именно средний риск. Кажется, что только на основе обучающей выборки невозможно эффективно оценивать риск R».

Это, пожалуй, правда, поскольку для оценок риска в таком контексте даже понятие эффективной оценки не введено. А раз нет понятия эффективности, то и эффективных оценок быть не может. Но отсутствие понятия эффективности не запрещает нам строить оценки.

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

Средняя точность может быть интересна разве что разработчику метода. Но не пользователю построенного решения.

Поэтому мы вообще не будем касаться среднего риска, поскольку он нас пока не интересует.

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

Оценка по контрольной выборке

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

В этом случае имеет место самая классическая задача математической статистики, а именно построение доверительного интервала для параметра среднего при неизвестной дисперсии. В данном случае случайная величина — это потери. Риск — средние потери, а выборочные значения — это потери на объектах контрольной выборки.

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

Важный частный случай, когда риск — вероятность ошибочной классификации (величина, противоположная accuracy). Здесь лучше строить точный доверительный интервал как для параметра Биномиального распределения (при построении используются квантили Бета-распределения).

В первом приближении доверительный интервал пропорционален \sigma\over\sqrt{N}, где \sigma — среднеквадратичное отклонение потерь.

Утверждение. При использовании только обучающей выборки размера N невозможно оценить риск точнее, чем при использовании только контрольной выборки такого же размера N.

Это утверждение кажется очевидным, хотя, по-видимому, не доказано. Но это не мешает нам принять его как гипотезу. Например, целое научное направление основано на предположении P \neq NP, хотя это тоже лишь гипотеза.

Чтобы опровергнуть сформулированную гипотезу, достаточно одного контрпримера, но таких не найдено. И интуитивно утверждение очень правдоподобно. Действительно, если мы используем информацию из выборки и для обучения модели, и для её оценки, то естественно ожидать, что оценка будет менее точной, чем когда вся информация из выборки «расходуется» только на оценивание.

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

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

Оценка точности кроссвалидации на практике

При выполнении кроссвалидации целесообразно использовать схему out-of-fold. Она подразумевает, что для каждого объекта выборки мы в результате так или иначе строим прогноз по какой-то модели, в обучении которой этот объект не использовался.

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

Какие-то детали (вариации) реализации кроссвалидации значительной роли не играют.

Если нужно оценить точность (accuracy) в задаче классификации, то это делается ещё проще. Пусть \hat p — точность модели (решающей функции) на кроссвалидации. Тогда среднеквадратичное отклонение можно оценить как \hat\sigma = \sqrt{\hat p\cdot (1-\hat p)\over N} и на основе этого строить привычный доверительный интервал.

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

Пример. Пусть мы при классификации получили на кроссвалидации 85% правильных ответов. Объём выборки 1000 объектов. Тогда \hat\sigma = \sqrt{0.85\cdot (1-0.85)\over 1000}\approx 0.01.

Интервал \pm 2\hat\sigma примерно соответствует доверительной вероятности 0.95. В данном примере получаем интервал [0.83, 0.87]. Но поскольку это оценка не по контрольной выборке, а на основе кроссвалидации, реальный интервал будет шире. Насколько шире неизвестно, но интервал [0.82, 0.88] можно взять за эмпирически обоснованный ответ.

Описанный подход выглядит примитивно и топорно. Но лучшего способа оценить точность кроссвалидации пока не придумали.

Здесь мы получаем заведомо оптимистичную оценку доверительного интервала. Истинный доверительный интервал будет шире, но насколько именно — неизвестно. Теоретические оценки имеются, но они практически неприменимы, поскольку полагаются на некоторые свойства, например, стабильности метода, которые непроверяемы на практике.

К слову, одна из самых бесполезных статистик, которые можно посчитать для кроссвалидации, это разброс по фолдам (блокам), т.е. \widehat{\text{Var}}(\text{CV}) = \frac{1}{K} \sum_{j=1}^{k} \left(\text{Err}_j - \text{CV}\right)^2.

Эффективное число наблюдений для данной статистики — это число фолдов K. Это значит, что даже при 10 фолдах мы оцениваем параметр распределения (конкретно дисперсию) всего лишь по 10 реализациям (причём зависимым) случайной величины. Этого категорически мало. Доверительный интервал, построенный на основе \widehat{\text{Var}}(\text{CV}), получается настолько грубым (недостоверным), что его полезность практически такая же, как у интервала, полученного генератором случайных чисел.

Личные инструменты