Классическая U-кривая говорит: слишком простая модель недоучивается, слишком сложная запоминает шум. В некоторых современных задачах после порога точной интерполяции test error снова падает. Этот второй спуск не отменяет переобучение — он уточняет, какая сложность действительно опасна.
Полином проходит через каждую точку
Имеются шумных наблюдений одной гладкой функции. Полином степени можно провести через все точки, получив нулевую train error. Между точками он может колебаться. В классическом описании с ростом степени:
- bias уменьшается, потому что класс функций богаче;
- variance растёт, потому что решение чувствительнее к выборке;
- test error сначала падает, затем растёт.
Схематически
Это разложение относится к фиксированной точке и процедуре обучения, а не означает, что у каждой нейросети существует видимый U-график.
По оси — сложность до интерполяционного порога. Bias монотонно падает, variance растёт, noise остаётся горизонтальным. Их сумма имеет минимум. Вертикальные области подписаны «недообучение» и «чувствительность к выборке».
Порог интерполяции
Когда число эффективных степеней свободы впервые позволяет точно подогнать все обучающие ответы, достигается interpolation threshold. В линейной регрессии без регуляризации это часто происходит около числа признаков , хотя геометрия и ранг важнее голого счёта.
Около порога матрица признаков может стать плохо обусловленной. Есть направления весов, почти не меняющие train-прогноз, но резко влияющие на новые объекты. Малый шум меток требует огромных коэффициентов, variance взлетает.
Если увеличить размерность ещё сильнее, решений с нулевой train error станет бесконечно много. Алгоритм может выбрать среди них простое в другой геометрии — например, решение минимальной нормы.
Синяя train error достигает нуля у и остаётся там. Красная test error сначала образует U, резко растёт у плохо обусловленного порога, затем снова падает в переопределённом режиме. Пунктир показывает классическую картину, обрезанную до порога.
Минимальная норма как скрытое правило
При система имеет много решений. Градиентный спуск из нулевой инициализации в линейной модели сходится к решению минимальной евклидовой нормы:
Это implicit bias алгоритма: loss требует только интерполяции, но траектория выбирает конкретный интерполятор. Добавление признаков может позволить распределить сигнал по большему числу координат с меньшей нормой и более гладким поведением.
Связь с ridge видна в пределе : регуляризованное решение стремится к минимальной норме среди интерполирующих. Но «малая норма» имеет смысл только относительно масштаба и представления признаков.
Спектр объясняет пик
Пусть — SVD матрицы признаков. Least squares делит проекцию ответа на сингулярные числа:
Если мало, шумовой компонент усиливается как . Около интерполяции минимальное сингулярное число часто близко к нулю — отсюда пик. Ridge заменяет деление на множитель и подавляет опасные направления.
Три панели показывают спектр . У порога один столбец почти касается нуля, а соответствующий коэффициент взлетает. Ridge-фильтр отмечен синей кривой и остаётся ограниченным.
Лаборатория двойного спуска
Сначала выключите шум меток: пик может стать небольшим, потому что интерполировать нужно истинный сигнал. Добавляйте шум и следите за ростом пика. Затем включите ridge: узкая катастрофа сгладится. Сравните ось «число параметров» с нормой решения — второй показатель часто лучше объясняет качество.
Шум меток
Если часть изображений CIFAR-10 размечена случайно, большая сеть способна запомнить их. Но сначала она часто учит общие визуальные паттерны, а позже — индивидуальные исключения. Ранняя остановка из урока 61 может перехватить фазу до полного запоминания.
Шум неоднороден: «кошка — собака» вероятнее, чем «кошка — самолёт». Простая модель симметричного flipping не описывает разметчиков и неоднозначные изображения. Проверка нескольких экспертов и аудит уверенных конфликтов полезнее слепого удаления большого loss.
Sample-wise и epoch-wise double descent
Второй спуск наблюдают не только по ширине модели. При фиксированной архитектуре test error может сначала ухудшаться, затем улучшаться при росте числа данных: порог интерполяции пересекается с другой стороны. По времени обучения иногда возникает epoch-wise double descent: модель сначала обобщает, затем запоминает шум, затем новые свойства оптимизации снова улучшают test.
Эти кривые чувствительны к регуляризации, loss, данным и оси сложности. Поэтому нельзя превращать double descent в универсальную историю «чем больше, тем лучше».
Особенно важно указывать, что держалось постоянным. При увеличении ширины меняются скорость оптимизации, число операций, допустимый batch и иногда learning-rate schedule. Если широкую сеть обучали дольше или с другой регуляризацией, ось графика смешивает модель и бюджет. Честный эксперимент показывает кривые при равных эпохах, равных вычислениях и после отдельной настройки каждого размера; совпадение выводов сильнее одной красивой линии. Полезно также повторить опыт на нескольких выборках: один seed способен сдвинуть узкий пик и создать ложную гладкость.
Почему большие модели всё же могут обобщать
Есть несколько совместимых объяснений:
- архитектура кодирует структуру данных;
- SGD предпочитает определённые решения;
- явная и неявная регуляризация ограничивают эффективную сложность;
- естественные данные лежат на низкоразмерной структуре;
- предварительное обучение приносит сильный prior.
Ни одно не гарантирует безопасность произвольной большой модели. Результат проверяют на независимом распределении по правилам эмпирического риска, а сложность описывают несколькими характеристиками.
Что не следует из второго спуска
Не следует, что validation больше не нужна. Не следует, что данные можно размечать с ошибками. Не следует, что любое увеличение ширины улучшит test. И не следует, что модель за порогом понимает механизм: интерполятор может использовать нестабильные корреляции.
Double descent полезен как поправка к школьной метафоре U-кривой. Он показывает, что число параметров и функциональная сложность не совпадают, а алгоритм выбора среди решений столь же важен, как пространство решений. Формальная цена выбора модели продолжится в уроке 63.
Как алгоритм выбирает интерполятор
Один обучающий объект с ответом задаёт уравнение . Его точно интерполируют бесконечно многие веса: , , . На новом объекте их прогнозы равны , и , поэтому нулевая train error ещё не определила функцию.
Gradient descent, начатый из нуля для квадратичной ошибки, движется в направлении и приходит к решению минимальной нормы . К тому же пределу ведёт ridge при . Это простейший пример implicit bias: алгоритм выбирает конкретную точку среди множества глобальных минимумов.
Но результат зависит от координат. Если второй признак перед обучением умножить на , понятие «малой нормы весов» изменится, хотя исходное наблюдение описывает тот же объект. Масштабирование, архитектура и инициализация участвуют в выборе интерполятора вместе с числом параметров. Поэтому участок после interpolation threshold исследуют при фиксированном pipeline и нескольких seeds, а не объясняют одной осью «ширина модели».