Есть старая проблема с попытками заглянуть внутрь модели через промежуточные состояния. Берём внутреннее представление на каком-то слое, переводим его обратно в пространство слов и смотрим, на что оно похоже. Очень часто получаем мусор: служебные слова, частотные куски текста и почти ничего, что реально объясняет происходящее внутри.
Новая работа Contrastive Projection (Контрастивная проекция) предлагает почти смешной по простоте приём: не читать внутреннее состояние напрямую, а сначала вычесть из него состояние почти такого же запроса. Всё общее между двумя случаями взаимно уничтожается, а наружу выходит именно то, чем они отличаются.
Красивый пример:
The hot dog was против The cold dog was. Если смотреть на каждое состояние отдельно, промежуточные слои показывают в основном бессмысленные слова. Но если взять разницу между состояниями, уже примерно с восьмого слоя начинают появляться понятия, связанные с едой:
fried, crispy, delicious, flavor. Если поменять порядок вычитания, появляются признаки собаки как животного:
Paw, Bark, breeds.То есть мы читаем уже не «что модель думает вообще», а какое внутреннее изменение произошло из-за одной конкретной разницы во входе.
Дальше авторы используют этот приём как трассировку внутреннего вычисления.
На примере
hot dog видно, что примерно на четвёртом слое блок преобразования уже начинает распознавать составное понятие еды.Причём само различие между
hot dog и cold dog оказалось не одним направлением. Внутри одновременно проявляются как минимум несколько признаков: съедобность, принадлежность к домашним животным и температура. И причинный эксперимент показывает, что просто усилить «съедобность» недостаточно. Чтобы модель действительно переключилась с трактовки животного на еду, надо одновременно усилить один признак и подавить другой.
То есть некоторые понятия внутри модели могут быть устроены не как один магический вектор, а как область, задаваемая сразу несколькими внутренними координатами.
Ещё интереснее получилось с метафорами. Авторы не нашли единого внутреннего признака «сейчас используется переносный смысл».
Вместо этого разные слова при переносном употреблении уходят в разные смысловые области:
cold (холодный) — к эмоциям и атмосфере, sharp (острый/резкий) — к характеру общения, bright (яркий/светлый) — к интеллекту, heavy (тяжелый) — к настроению.Некоторые из найденных направлений можно затем ввести обратно во внутреннее состояние модели и действительно заставить её переключаться между буквальным и переносным смыслом.
Получается, что метафора внутри модели может быть не отдельной меткой, а преобразованием одного смыслового пространства в другое.
А вот эксперимент с галлюцинациями особенно интересный. Для реального человека вроде Tesla или Curie внутреннее различие показывает связанные факты: переменный ток, радиоактивность и так далее.
Для выдуманного персонажа модель тоже уверенно выдаёт «факты», но внутри обнаруживаются в основном только части самого имени.
То же самое с выдуманной горой: снаружи ответ выглядит уверенным, неопределённость почти такая же, как для реального объекта, но внутри нет специфической фактологической структуры — только общие числовые и языковые шаблоны.
Это хороший намёк на то, что уверенное вспоминание и уверенное сочинение могут выглядеть одинаково в готовом ответе, но совершенно по-разному внутри модели.
Есть и важное ограничение. Конкретные слова, которыми метод объясняет внутреннее различие, не являются универсальным языком мозга. Авторы обучили пять одинаковых моделей с разными начальными весами: смысл различий сохранялся, а совпадение конкретных слов-объяснений между моделями было очень низким.
То есть верить надо не отдельному слову вроде
fried, а самому направлению различия и тому, меняет ли вмешательство поведение модели причинно.Мы обычно спрашиваем: «что находится в этой активации?». Возможно, гораздо полезнее спрашивать: «что именно изменилось внутри модели, когда я поменял только одну вещь во входе?»
Contrastive Projection: Reading Transformer Internals by Differencing Logit Lenses — Olli Tuomi, 2026
https://arxiv.org/abs/2609.09902