← Все новости
Можно ли пересадить алгоритм из маленькой модели в LLM? Эксперимент с grokking, residual stream и линейной проекцией

Можно ли пересадить алгоритм из маленькой модели в LLM? Эксперимент с grokking, residual stream и линейной проекцией

Можно ли взять алгоритм из маленькой нейросети и «вставить» его в большую языковую модель на лету, без дообучения?Мы проверили эту гипотезу на модульной арифметике. Spoiler: да, можно, но с сюрпризом, который переворачивает представление о том, как LLM на самом деле «думают».Если вы работаете с большими языковыми моделями, вы знаете главную боль: чтобы научить GPT-4 решать арифметику или логическую задачу, приходится либо писать длинные промпты с примерами (CoT), либо дообучать модель — дорого, долго и не всегда предсказуемо.А что, если мы пойдём другим путём?Возьмём маленькую модель, которую мы обучили до состояния «идеального калькулятора» (она понимает модульную арифметику на 100%), и попробуем извлечь её внутреннее состояние (residual stream) и инжектировать его в большую LLM прямо во время генерации ответа.Без градиентов. Без новых данных. Без fine-tuning.Просто линейная проекция между двумя пространствами активаций.Звучит как магия? Мы тоже так думали. Но оказалось, что это не магия — это геометрия.Мы провели серию из 6 экспериментов, проверили всё: от случайной проекции до обучения линейного оператора W, от замены эмбеддингов до патча residual stream с сохранением контекста. И в процессе наткнулись на фундаментальное различие между тем, как маленькая модель «компилирует» алгоритм, и тем, как большая языковая модель «симулирует» его через текст.Спойлер главного открытия:Мы смогли передать алгоритм в residual stream большой модели с точностью 99.9% — но только при условии, что заменили её штатный LM head на свой маленький адаптер. Без адаптера — даже имея идеальный сигнал внутри, модель не могла его прочитать. Это как дать человеку правильный ответ, но записанный шрифтом Брайля, который он не знает. Читать далее