Современные большие языковые модели остаются для исследователей «черными ящиками», чьи внутренние механизмы скрыты за миллиардами параметров. В новом выпуске подкаста The Cognitive Revolution профессор Северо-Восточного университета Дэвид Бау и исследователи Койена Пал и Эрик Тодд обсуждают, как их лаборатория пытается взломать эту сложную структуру. Ученые делятся результатами прорывных экспериментов, доказывающих, что нейросети способны планировать текст на несколько токенов вперед и координировать выполнение комплексных задач через специализированные информационные каналы в обход традиционных алгоритмов.
🔬 От «черного ящика» к биологии кода: повестка Bow Lab 4:46
По определению профессора Дэвида Бау, современное машинное обучение знаменует собой принципиально новую эру в компьютерных науках. На протяжении десятилетий программисты мечтали о самопрограммирующихся машинах, но по-настоящему глубокие результаты появились лишь в последнее десятилетие. Сегодня индустрия столкнулась с типом программного обеспечения, для анализа которого классические инструменты и методы компьютерных наук (computer science) просто не подходят.
Дэвид Бау сравнивает исследование больших языковых моделей с биологией:
«Попытка полностью контролировать механизмы глубоких нейросетей похожа на попытку подчинить себе биологический организм, например, томат, развившийся в процессе эволюции. Машинное обучение устроено схожим образом — код возникает в результате процесса обучения. И точно так же, как биологи вынуждены заниматься реверс-инжинирингом томата, чтобы понять, как сделать его лучше, мы пытаемся создать науку о дебаггинге и понимании внутренней структуры ИИ».
Исторической вехой, изменившей индустрию, Дэвид Бау считает появление нейросети AlexNet в 2012 году. Она доказала, что простая архитектура, идеи которой восходят к 1950-м и 1980-м годам, при масштабировании способна решать сложнейшие задачи, что стало сюрпризом для научного сообщества. Сам профессор Бау покинул Google в 2015 году, чтобы сфокусироваться на интерпретируемости моделей, начав с генеративных визуальных сетей (GAN) и диффузионных моделей, а затем переключившись на LLM.
Ранее лаборатория Дэвида Бау (Bow Lab) прославилась работами ROME и MEMIT, которые продемонстрировали высокую степень локализации фактологических знаний в языковых моделях. Исследователям удалось доказать, что факты не «размазаны» по всей сети хаотично, а имеют конкретное физическое расположение. Инструмент MEMIT позволил одновременно редактировать до 10 000 фактов непосредственно внутри весов модели. Развитием этого направления стало исследование LRE (Linear Relational Embedding), представленное на конференции ICLR, где ученые изучали, как кодируются отношения между субъектом и объектом. Оказалось, что базовые связи часто представляют собой линейные отображения, однако в сложных случаях модель задействует нелинейные паттерны вычислений.
👁️ За пределами следующего слова: технология Future Lens 13:13
Основной мотивацией для создания проекта Future Lens стал поиск ответа на вопрос: является ли работа нейросети исключительно стохастическим попугайничеством, или за генерацией следующего токена стоит нечто большее? Ведущий исследователь Койена Пал изначально изучала феномен запоминания контента (например, лицензионных ключей, которые модель выдает один в один по коротким подсказкам). Затем ее внимание переключилось на короткие сущности, такие как названия городов (например, «New York City»), которые человек воспринимает как единый объект.
Научный вопрос работы Future Lens формулируется так: в какой степени из одного скрытого состояния (hidden state) на текущем токене можно извлечь информацию о последующих токенах? Под скрытыми состояниями (активациями) понимаются массивы чисел, которые генерируются между слоями трансформера в процессе прямого прохода (forward pass).
До появления Future Lens исследователи использовали инструмент Logit Lens, созданный блогером Nostalgebraist. Этот метод проецирует промежуточные состояния сети напрямую в декодирующий слой, позволяя увидеть «матрицу» слов и понять, о чем модель думает на каждом конкретном слое. Однако у Logit Lens есть фундаментальный недостаток — он показывает мысли нейросети только о текущем генерируемом слове.
Future Lens решает более сложную задачу. По словам Койены Пал, если модель видит слово «New», Logit Lens покажет только его, а Future Lens позволяет заглянуть глубже и определить, какое продолжение планируется дальше — «York» или «Jersey». Информация в трансформере обрабатывается в двух плоскостях:
- По вертикали: данные передаются от слоя к слою, постепенно уточняясь и сходясь к финальному предсказанию.
- По горизонтали: информационный поток движется от прошлых токенов к будущим через механизм внимания.
🧪 Эксперимент на базе GPT-J: методология и пять подходов 23:45
Эксперименты проводились на открытой модели GPT-J с 6 миллиардами параметров, где размер вектора активации составляет 4096 элементов. Из датасета The Pile было отобрано 100 000 текстовых примеров. Главным критерием фильтрации было то, чтобы модель изначально предсказывала следующий токен абсолютно верно. Для валидации использовалась отдельная выборка из 1 000 промптов.
Исследователи протестировали пять различных методов извлечения информации о будущих токенах ($n+1$, $n+2$, $n+3$):
- Биграммная базовая линия (Bigram Baseline): Нулевая гипотеза. Опираясь только на статистическую частоту пар слов в датасете The Pile, она позволяет угадать следующее слово с точностью около 20%.
- Прямое предсказание словаря (Direct Vocabulary Prediction): Обучение отдельного линейного классификатора, который берет вектор активации (размером 4096) и отображает его на все пространство словаря GPT-J (около 50 000 токенов). Это фактически создание собственной компактной «головы» декодера.
- Линейная аппроксимация модели (Linear Model Approximation): Метод, похожий на предыдущий, но вместо предсказания распределения токенов классификатор пытается предсказать скрытое состояние, которое затем корректно обработает родной декодер трансформера. К удивлению авторов, методы 2 и 3 показали практически одинаковую эффективность.
- Фиксированный промпт на естественном языке (Fixed Prompt): Попытка перенести активацию из родного контекста в искусственный нейтральный промпт вида: «Hello, could you please tell me more about...». Предполагалось, что в таком окружении скрытый смысл активации раскроется сам. Метод провалился, показав результаты хуже статистической базовой линии на первом токене. Как пояснил Дэвид Бау, это вызвало эффект «повреждения мозга» модели из-за неестественного смещения распределения данных.
- Технология мягкого промпта (Soft Prompt) — абсолютный победитель: Обучение непрерывного абстрактного промпта непосредственно в векторном пространстве (размером 10 токенов на 4096), минуя перевод в обычные слова. При попытке перевести этот оптимизированный мягкий промпт обратно в текстовые токены получилась полная бессмыслица со знаками «@» и несвязными обрывками, однако для вычислительных слоев трансформера этот «шифр» сработал идеально.
🧠 Секреты средних слоев и феномен стирания информации 40:52
Анализ графиков успешности предсказаний (зависимость точности от номера слоя) выявил четкую закономерность. На токене $n=0$ (текущее слово) точность линейно растет до 100% к финальным слоям, что подтверждает корректность работы Logit Lens. Однако для будущих токенов ($n=1, n=2, n=3$) график эффективности мягкого промпта имеет форму арки с пиком строго в средних слоях и резким падением в самом конце.
Это доказывает, что на средних слоях трансформер формирует высокоуровневый концептуальный план будущего высказывания. Ближе к концу прохода модель начинает стирать избыточную информацию о будущем, чтобы освободить вычислительное пространство для точной фиксации одного-единственного следующего слова.
Профессор Бау подчеркивает, что линейные методы извлечения не справились, так как трансформер использует собственные сложные нелинейные «словари» в весах для декодирования понятий в слова. Мягкий промпт Койены Пал послужил своеобразным «ключом», который активировал внутренний триггер модели и заставил ее развернуть скрытый указатель в длинную фразу (например, название фильма «Back to the Future»).
Для проведения подобных экспериментов Bow Lab использует собственную открытую библиотеку NSight (nsight.net), ставшую преемником BauKit. NSight позволяет перехватывать, менять и тестировать активации всего в несколько строк кода. Проект поддерживает удаленный бэкенд NDIF (National Deep Inference Fabric), дающий исследователям бесплатный доступ к запуску тяжелых моделей уровня Llama 70B. В настоящее время ученые лаборатории используют этот стек для анализа альтернативных, свободных от внимания (attention-free) архитектур, таких как Mamba (State Space Models) и гибридная модель Striped Hyena, которая недавно показала превосходные результаты в качестве ДНК-модели.
🎯 Векторы функций: как нейросети обучаются в контексте 1:03:53
К дискуссии присоединился исследователь Эрик Тодд, автор работы о векторах функций (Function Vectors), посвященной механизмам внутриконтекстного обучения (In-Context Learning, ICL). Именно способность обучаться на лету по нескольким примерам (few-shot learning) легла в основу успеха gpt3.
Команда Эрика Тодда искала узкое горлышко (bottleneck) — место, где модель абстрагирует суть задачи из демонстрационных примеров перед тем, как выдать ответ на финальный запрос. Используя метод причинно-следственного анализа медиации (causal mediation analysis или activation patching), исследователи изучили работу голов внимания (attention heads).
Эксперимент выглядел следующим образом:
- Модели давали промпт с примерами антонимов:
big -> small,short -> tall, а затем шло проверочное словоbright -> .... - В параллельном потоке те же примеры перемешивались, превращаясь в бессмыслицу, из-за чего модель теряла понимание задачи.
- Ученые поочередно копировали активации отдельных голов внимания из «чистого» потока в «зашумленный». Выяснилось, что суммарный паттерн активности примерно 10 специфических голов внимания из средних слоев способен полностью перенести понимание задачи.
Эту сумму выходов голов внимания исследователи назвали вектором функции. Если выделить такой вектор из контекста, где решалась задача «столица — страна» (например, Париж — Франция, Москва — Россия), и внедрить его в совершенно чистый контекст со словом «Мадрид», модель мгновенно выдаст «Испания».
Удивительным открытием стало то, что эти 10 голов внимания оказались универсальными. Ученые протестировали более 40 различных задач (включая переводы с английского на испанский) — и везде задействовался один и тот же подмножество голов в средних слоях. Эти головы не привязаны к конкретным словам, они работают как глобальный транспорт для передачи смысла выполняемой функции. Механизм стабильно функционирует как в коротких, так и в длинных текстовых шаблонах.
Вектор функции позволяет напрямую управлять поведением ИИ в обход языковых инструкций. Например, если подать нейросети фразу The word fast means... («Слово "быстрый" означает...»), она по привычке выдаст словарное определение. Но если в этот момент внедрить в средние слои вектор функции антонимов, модель проигнорирует текст и напишет slow («медленный»).
В заключение Дэвид Бау отметил, что главным вызовом для мирового сообщества mechanistic interpretability остается поиск правильного уровня абстракции. Матричные умножения — это базовые кирпичики, но такие сущности, как векторы функций или скрытые планы Future Lens, доказывают, что внутри нейросетей существуют куда более масштабные и строгие архитектурные структуры, которые человечеству только предстоит описать.