Штольц у Гончарова замечает заплаты на халате друга. Обломов отвечает: привычка, жалко расставаться. Заплата хорошо закрывает знакомую прореху. Если экзаменовать халат только по местам, которые вчера заштопали, он получит диплом вечной прочности. А ткань в другом месте мы ещё не смотрели. Этот образ пригодится нам для правила, которое безупречно обслуживает выученные случаи.

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

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

Переобучение нейросети начинается со слишком знакомой проверки

Сначала отделим данные. Три пары оставим для разбора: 0 → 0, 1 → 2, 2 → 4. Четвёртая карточка, с входом 3, лежит отдельно, ответ закрыт сгибом бумаги. Пока разбираем первые три, эту не раскрываем. К её ответу вернёмся после выбора способа. В машинном обучении примеры, по которым модель подбирает поведение, составляют обучающий набор.

Схема разделения: обучение на парах 0→0, 1→2, 2→4; отдельно новая проверка 3→вопрос

Отложенная карточка 3 остаётся закрытой, пока выбираем правило по трём знакомым парам.

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

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

Два правила: удвоить вход или запомнить три пары и отвечать нулём на незнакомое; на старых примерах оба без ошибок

В обоих правилах знакомые пары дают 0, 2 и 4. Список возвращает 0 для любого нового входа.

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

В уроке Google об overfitting описана та же общая проблема: отличная подгонка обучающих примеров может сопровождаться плохими предсказаниями на новых. Слово «обобщение» означает, что найденное поведение переносится на такие новые случаи.

Откроем отложенную карточку

Теперь вход равен 3. По исходной задаче для трёх альбомов нужно 6 карандашей. Удвоение даёт 2 × 3 = 6. Способ со списком не встречал тройку и выполняет заранее записанное продолжение: отвечает 0.

Для простого сравнения возьмём величину промаха: насколько ответ отличается от правильного числа, без знака плюс или минус. Удвоение промахнулось на 0, запоминание — на 6.

Часть примера Правильные ответы Удвоение Запоминание с нулём для нового
Знакомые входы 0, 1, 2 0, 2, 4 Три верных ответа Три верных ответа
Отложенный вход 3 6 6, ошибка 0 0, ошибка 6

Новый вход 3 с верным ответом 6: удвоение даёт 6 и ошибку 0, запоминание даёт 0 и ошибку 6

На новом входе 3 удвоение даёт 6, список — 0. Абсолютные ошибки равны 0 и 6.

Мы не выбираем победителя по этой карточке: удвоение было выбрано раньше. Сейчас проверили, как уже выбранная связь ведёт себя на новом входе, и увидели слабое место другого способа. Если после раскрытия тройки дописать в список 3→6, на тройке он тоже станет точным. Но это уже исправленная версия: ответ вошёл в её устройство. Проверить его снова можно как исправление найденной ошибки, а новой независимой карточкой тройка больше не будет.

Именно расхождение знакомого и нового помогает понять переобучение нейросети. В нашем упрощённом примере список заменяет подгонку под увиденные строки. Настоящая модель может хранить поведение гораздо сложнее; суть сравнения остаётся в двух разных частях данных.

Почему ещё один проход не равен новому опыту

Переверните знакомые карточки и снова спросите про 0, 1 и 2. Способ со списком получит все ответы верно. Можно поменять порядок карточек и повторить ещё раз: знакомые количества от этого не станут новыми. Про новые числа мы ничего не узнали.

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

Когда обсуждают переобучение нейросети, часто сравнивают ошибку на обучении и на отдельной проверочной части в ходе тренировки. Ошибка на знакомом может продолжать уменьшаться, а на проверочном — начать расти. Так появляется сигнал, что дальнейшая подгонка уже ухудшает перенос. Само по себе число эпох без такого сравнения причины не показывает.

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

Где модель набирает лишние заплаты

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

В разделе Google о сложности модели сравниваются сложная граница и простая прямая на новых примерах. Для нашей задачи удвоение тоже компактнее списка отдельных ответов. Однако лозунг «всегда бери самое простое» не заменяет проверку: слишком грубое правило может плохо работать уже на обучении.

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

Когда каждая новая подробность обучающего набора требует отдельной поправки, полезно сопоставить выигрыш на знакомом с поведением на проверочной части. Один из способов сдерживать излишнюю сложность при тренировке — регуляризация. В выбранном учебном разделе Google показан принцип: учитывать не только ошибку, но и сложность модели. Это помощь в выборе поведения во время обучения; к обычному сообщению в чате такая настройка сама не добавляется.

Одна полезная правка проверки

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

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

Повторная подгонка по одному и тому же финальному тесту способна скрыть переобучение нейросети: мы незаметно начнём обслуживать и его особенности. В примере с карточками достаточно одной понятной правки: после раскрытия 3 не выдавать его за новую независимую проверку следующей версии списка.

Возьмите другой небольшой пример того же типа, зафиксируйте правило до проверки и лишь затем посмотрите правильный ответ. Он должен относиться к тому же отношению количеств. Если вместо карандашей внезапно считать стоимость доставки с минимальным тарифом, изменится сама задача; это уже другая причина расхождения.

Попросим ИИ объяснять по вашим ответам

Для упражнения не нужен запуск обучения или платный вычислительный сервис. Откройте обычный DeepSeek и напишите:

Помоги мне понять переобучение нейросети на бумажных карточках, без кода и настоящей тренировки. Обучающие пары: 0→0, 1→2, 2→4. Сравним два заранее фиксированных правила: удвоить вход; запомнить только эти пары, для незнакомого отвечать 0. Сначала спроси, почему оба точны на знакомых входах, и дождись моего ответа. Затем помоги заранее объяснить выбор простого удвоения. Только после этого перейдём к отдельному новому входу. Не исправляй правило по результату этой проверки и не называй повтор знакомой карточки независимым тестом.

Помощник здесь обсуждает расчёт и ваши объяснения. Напишите свой ответ прежде, чем просить следующий: «Первый вычисляет удвоение, второй находит готовую строку». Это уже позволяет увидеть разные действия за одинаковыми цифрами. Если вы ответите «оба просто знают таблицу», попросите разобрать, что делает каждый способ с отсутствующим в ней входом. Так непонятное слово превращается в вопрос, на который можно ответить самому.

Обычная реплика готового чата, в которой встретилась ошибка, сама по себе не устанавливает переобучение нейросети. Мы говорим об отношении обучения к новым данным. Если хочется понять, какие числа внутри модели меняются при тренировке, следующий вопрос раскрывает разбор весов нейросети.

Несколько вопросов о знакомых и новых примерах

Запоминание вообще вредно?

Список точных соответствий полезен для своей задачи. Телефонная книга и должна помнить записанные номера; удваивать номер абонента ей незачем. Наш второй способ плохо продолжает именно выбранное отношение количеств на новом входе. Переобучение нейросети оценивают по тому, насколько поведение переносится на данные, с которыми ей предстоит работать.

Один отложенный пример доказывает качество модели?

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

Почему нельзя подправить список после ошибки?

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

Получится ли убрать проблему хорошим промптом?

Запрос помогает обсуждать расчёт и проверку готового ответа. Переобучение нейросети относится к обучению модели; новые слова в обычном диалоге не становятся настройкой её тренировки.

Халат Обломова был привычен до последней заплаты. На наших трёх карточках тоже всё казалось благополучным. Диплом за знакомые заплаты пока отложим: для следующей независимой проверки понадобится новый конверт. Теперь у вас есть простая проверка объяснения: где правило подбирали, где проверили и почему эти примеры действительно разные.