Goodfire AI, вдохновившись примером Anthropic в интерпретации внутренних процессов Claude, воспроизвели методы трассировки цепей межслойных транскодеров (Cross-Layer Transcoders, CLT) на GPT-2 Small, чтобы проверить их способность раскрывать известные механизмы трансформеров.
Выбор на GPT-2 Small пал не случайно, эта модель небольшая и уже была ранее подвергнута ручному реверс-инжинирингу.
Cross-Layer Transcoders выжимают из модели разреженные признаки, которые объясняют работу MLP-слоев. Визуализируют это через графы атрибуции — это карты влияния признака на выход модели.
Натренировали на 100M токенов из FineWeb, получили ~590K признаков. Точность CLT-реплики модели составила 59%, что близко к оригинальным статьям. Тестировали на задаче сравнения чисел («больше, чем»), идеальном полигоне, где уже известны ключевые механизмы.
Задача "Больше, чем" (ориг. "greater-than") взята из статьи Michael Hanna, она заставляет предсказывать большие числа для второго года в диапазоне дат.
▶️ Главный эксперимент:
Промпт «The war lasted from the year 1711 to 17». CLT построил граф, где признаки с токена «11» (последняя цифра года) активнее всего влияли на предсказание.
Дальше, выделили топ-160 признаков, для каждого построили логит-атрибуции — теплокарты, показывающие, как признак влияет на выходные годы (ZZ) при разных входных (YY).
▶️ Что нашли:
🟢Признаки «больше, чем»: Feature 425104 (слой 8) активируется на больших числах в хронологии (даты, войны). Но его теплокарта продвигает выходы >60, независимо от входа, а вот Feature 461858 работает только для YY=6–14 и продвигает ZZ=10–30.
Похоже, CLT подсветил кучу узкоспециализированных «сравнивателей», а не универсальные нейроны, как в ручных исследованиях.
🟢Сюрпризы: Feature 399423 — вообще не про числа. Он кодирует четность и контраст: активируется на «and» в «pros and cons», а в задаче продвигает четные ZZ при нечетных YY. Абстракция уровня «противоположность» — такого в прошлых работах не видели.
🟢Странности: Feature 402486 вообще саботирует задачу: продвигает малые числа. Или Feature 349410 — работает только для YY=11, хотя ее max-активации показывают числа до 30.
▶️ Выводы:
CLT автоматически находит интерпретируемые признаки, даже такие неочевидные, как абстрактная четность. Но их «разреженный» мир выглядит иначе, чем ручная трассировка цепей: тут больше узких признаков-«спецов» (Feature 461858 для диапазона 10–30) и меньше универсальных механизмов.
Возможно, дело в методе: CLT смотрит изолированные вклады фич, а в полной модели они взаимодействуют.
В общем, эксперименты с CLT показал, что под капотом языковых моделей не только четкие «сравниватели чисел», но и куча скрытых паттернов вроде детекторов контраста или любителей чисел, кратных 5. И да, полуавтономный анализ иногда видит то, что люди упускают.
🔜 Читать полную статью
@ai_machinelearning_big_data
#AI #ML #LLM #Research #CLT


