Нейросеть может выучить ответы наизусть и всё равно не понимать, как решать похожие задачи. В проекте Grokking Lab этот разрыв проверили на трёх запусках: сначала модель запоминала примеры, а гораздо позже начинала справляться с новыми. Исследователи также повторно проверили сохранённые состояния модели, чтобы убедиться в результатах.
Запомнить ответ — ещё не значит понять правило
Представьте ученика, который заучил ответы из задачника. На знакомых примерах он получает пятёрки, но стоит поменять числа — и начинаются ошибки. Нейросеть в этом эксперименте вела себя похожим образом.
Такой эффект называют гроккингом: после долгого периода запоминания модель начинает применять найденное правило к примерам, которых не видела во время обучения. Здесь ей предлагали складывать два числа и находить остаток от деления суммы на 113.
Знакомые примеры модель освоила за 200–416 шагов обучения. Признаки успешной работы с новыми примерами появились значительно позже — на 23 000–32 300 шагах. Поэтому высокая точность на выученном наборе сама по себе не доказывает, что модель поняла закономерность.
Что проверили в трёх запусках
Эксперимент повторили с тремя начальными настройками случайности — 42, 43 и 44. Они влияют на исходное состояние модели и ход обучения. Во всех трёх случаях повторилась последовательность: быстрое запоминание, длительная задержка, затем переход к решению новых примеров.
К концу обучения точность на обучающих и проверочных примерах достигла 100%. Условие успеха определили заранее: не менее 98,5% правильных ответов на проверочных данных. Для подтверждения устойчивого результата требовались десять последовательных проверок выше этого порога.
Проверяли не только итоговые графики. Сохранённые состояния модели повторно запустили в программе PyTorch, которую используют для работы с нейросетями. В запуске с настройкой 44 максимальное абсолютное расхождение при этой проверке составило ноль: повторный расчёт воспроизвёл проверяемый результат.
Чего этот результат не доказывает
Момент перехода в разных запусках отличался. Кроме того, ранние результаты измеряли с разной частотой: в первом запуске — через определённые интервалы, в двух остальных — после каждого шага. Поэтому напрямую сравнивать время перехода без этой оговорки нельзя.
Три запуска показывают повторяемость эффекта в конкретной небольшой задаче. Они не доказывают, что любые большие нейросети учатся так же или что достаточно дольше обучать модель, чтобы она обязательно начала понимать правило.
Почему это полезно знать
Главный вывод прост: проверяйте ИИ на новых примерах, а не только на тех, которые он уже освоил. Хороший результат на знакомом наборе может отражать запоминание, а не способность справляться с новой задачей.
Для тех, кто проводит эксперименты, есть и практический совет: сохранять настройки, промежуточные состояния модели и результаты измерений. Тогда можно повторить проверку и понять, какие файлы и условия дали результат. В следующих экспериментах разумно менять по одному фактору — например, скорость обучения, размер модели или способ разделения примеров на обучающие и проверочные.
Повторная проверка — это новое обучение?
Нет. В этом случае уже сохранённую модель снова использовали для расчётов. Это помогает проверить её результаты, но не заменяет независимый эксперимент с обучением с самого начала.