Что нашли внутри Claude, когда заглянули ему в голову. anthropic.. anthropic. Claude.. anthropic. Claude. llm.. anthropic. Claude. llm. sae.. anthropic. Claude. llm. sae. Sparse Autoencoders.. anthropic. Claude. llm. sae. Sparse Autoencoders. безопасность ии.. anthropic. Claude. llm. sae. Sparse Autoencoders. безопасность ии. Будущее здесь.. anthropic. Claude. llm. sae. Sparse Autoencoders. безопасность ии. Будущее здесь. искусственный интеллект.. anthropic. Claude. llm. sae. Sparse Autoencoders. безопасность ии. Будущее здесь. искусственный интеллект. Машинное обучение.. anthropic. Claude. llm. sae. Sparse Autoencoders. безопасность ии. Будущее здесь. искусственный интеллект. Машинное обучение. научно-популярное.. anthropic. Claude. llm. sae. Sparse Autoencoders. безопасность ии. Будущее здесь. искусственный интеллект. Машинное обучение. научно-популярное. нейросети.

С вами автор канала токены на ветер, и сегодня разберём одно из самых интересных ИИ-исследований последнего времени.

Есть такая штука, которая не даёт покоя исследователям ИИ: мы создали системы, которые пишут код, сочиняют стихи, сдают экзамены на врача и юриста — но понятия не имеем, как именно они это делают. Буквально чёрный ящик: данные вошли, ответ вышел, а что между — загадка.

Это не просто академическое любопытство. Когда модель галлюцинирует — мы не понимаем почему. Когда она отказывается выполнять безобидный запрос или, наоборот, выполняет опасный — мы можем только гадать о причинах. Когда компании говорят “наша модель безопасна” — это скорее вера, чем знание.

В Anthropic решили с этим разобраться. Команда интерпретируемости опубликовала исследование Scaling Monosemanticity, в котором они фактически препарировали Claude и составили карту того, что происходит у него внутри. Результаты — местами ожидаемые, местами пугающие, местами просто забавные.

Давайте разбираться.


Немного контекста: откуда вообще взялась проблема

Нейросети — не новая технология. Первые работы появились ещё в 1940-х, а к 1980-м уже были вполне рабочие модели. Но тогда они были маленькими — сотни или тысячи нейронов. Исследователи могли буквальн�� нарисовать схему сети на доске и проследить, как сигнал проходит от входа к выходу.

Современные языковые модели — это сотни миллиардов параметров. Claude 3 Sonnet, который исследовали в Anthropic, содержит десятки миллиардов. Нарисовать такое на доске не получится даже теоретически.

При этом модели стали демонстрировать поведение, которое никто не закладывал явно. Они понимают иронию, решают задачи на логику, пишут работающий код на языках, которые едва упоминались в обучающих данных. Откуда это берётся? Что там внутри?

До недавнего времени ответ был примерно такой: “Ну, как-то оно там всё вместе работает”. Не очень научно, согласитесь.


Почему нельзя просто посмотреть на нейроны

Первое, что приходит в голову — взять и посмотреть, за что отвечает каждый нейрон. Звучит логично: один нейрон — одна концепция. Нейрон #4231 активируется на котиков, нейрон #7892 — на рецепты, нейрон #1337 — на код.

Эта идея называется “бабушкин нейрон” — гипотеза о том, что в мозге есть отдельный нейрон, который срабатывает, когда вы видите свою бабушку. Красивая концепция, но для современных нейросетей она не работает.

Реальность оказалась намного сложнее. Когда исследователи начали изучать активации отдельных нейронов в больших моделях, они обнаружили полную кашу. Один и тот же нейрон может реагировать на финансовые термины, синий цвет, упоминания Австралии и почему-то на слово “вторник”. Другой — на медицинскую терминологию, рецепты выпечки и французскую грамматику.

Это называется полисемантичность. Модель упаковывает больше концепций, чем у неё нейронов, используя хитрые комбинации активаций. Представьте, что у вас есть только три цвета краски, но вы хотите нарисовать радугу — приходится смешивать.

Почему модели так делают? Экономия. Если бы каждая концепция требовала отдельного нейрона, модели были бы в тысячи раз больше. Вместо этого модель научилась кодировать несколько концепций через один нейрон, используя разные “направления” в пространстве активаций.

Проблема в том, что для нас, людей, это делает модель совершенно непрозрачной. Смотреть на отдельные нейроны — примерно как пытаться понять книгу, изучая отдельные буквы. Технически вся информация там есть, но толку от такого анализа мало.


Sparse autoencoders: декодер для мыслей

Решение, которое применила команда Anthropic, изящно и при этом технически элегантно.

Идея такая: если модель использует комбинации нейронов для кодирования концепций, давайте обучим отдельную нейросеть — sparse autoencoder (SAE) — которая будет находить эти комбинации и раскладывать их обратно на отдельные, интерпретируемые “фичи”.

Как это работает:

  1. Берём активации из какого-то слоя Claude

  2. Пропускаем их через SAE, который раскладывает вектор активаций в пространство намного большей размерности — в эксперименте использовали 34 миллиона фич

  3. Требуем, чтобы большинство этих фич были неактивны в каждый момент (отсюда слово “sparse” — разреженный)

  4. Обучаем SAE восстанавливать исходные активации из разреженного представления

Ключевой момент — требование разреженности. Если в каждый момент времени активна только малая часть фич (порядка 300 из 34 миллионов), то модель вынуждена делать каждую фичу осмысленной и специфичной. Нельзя свалить всё в кучу — приходится распределять концепции по отдельным измерениям.

Для тех, кто хочет технических деталей:

  • Модель: Claude 3 Sonnet

  • Количество фич: эксперименты на 1M, 4M и 34M

  • Где брали активации: residual stream после средних слоёв

  • Метрики качества: reconstruction loss (насколько хорошо восстанавливаем исходные активации), L0 (среднее число активных фич на токен), interpretability score (насколько человек может понять назначение фичи)

Результаты: в среднем активны около 300 фич из 34 миллионов, SAE объясняет примерно 95% дисперсии активаций. И — что важнее всего — человеческие эксперты смогли понять назначение примерно 70-80% найденных фич.


Что нашли внутри Claude

И вот тут начинается самое интересное. Исследователи обнаружили фичи поразительной специфичности — не размытые категории вроде “транспорт” или “архитектура”, а совершенно конкретные концепции.

Фича “Золотой мост”

Одна из фич активировалась исключительно на упоминания моста Золотые Ворота в Сан-Франциско. Не просто “мост”, не просто “Сан-Франциско”, не просто “достопримечательность” — а именно этот конкретный мост.

Фича срабатывала на:

  • “The Golden Gate Bridge is beautiful”

  • “I drove across the Golden Gate yesterday”

  • “Мост Золотые Ворота — символ Сан-Франциско”

  • Упоминания на других языках

И не срабатывала на:

  • Другие мосты Сан-Франциско (Bay Bridge, например)

  • Другие знаменитые мосты мира

  • Слово “golden” в других контекстах

  • Слово “gate” отдельно

Причём фича понимала контекст. Если кто-то писал “я перешёл через ворота в сад” — молчание. Если “я проехал по Золотым Воротам” — активация.

Фича “небезопасный код”

Другая фича активировалась на примеры кода с уязвимостями. Не на весь код, не на все ошибки — а именно на security-проблемы.

Активирует фичу:

query = f"SELECT * FROM users WHERE id = {user_input}"  # SQL injection
Что нашли внутри Claude, когда заглянули ему в голову - 1

Не активирует:

query = "SELECT * FROM users WHERE id = ?"
cursor.execute(query, (user_input,))  # параметризованный запрос
Что нашли внутри Claude, когда заглянули ему в голову - 2

Модель каким-то образом выучила концепцию “это опасно для безопасности” — не просто паттерн синтаксиса, а понимание того, почему один код безопасен, а другой нет.

Аналогичные фичи нашлись для:

  • Уязвимостей buffer overflow в C

  • Небезопасной десериализации

  • Hardcoded credentials

  • И других классических проблем безопасности

Фича “внутренний конфликт”

Это уже почти философия. Нашлась фича, которая активировалась в ситуациях, когда модель сталкивалась с противоречивыми инструкциями или этическими дилеммами.

Когда пользователь просит сделать что-то сомнительное, но формально не запрещённое. Когда системный промпт конфликтует с запросом пользователя. Когда нужно выбирать между честностью и вежливостью. В таких ситуациях эта фича загоралась.

Буквально — нейрон сомнения.

Другие находки

Исследователи каталогизировали тысячи фич. Среди них:

  • Фичи для конкретных известных людей (отдельные для Месси, Трампа, Эйнштейна)

  • Фичи для эмоциональных состояний (тревога, радость, замешательство)

  • Фичи для абстрактных концепций (справедливость, рекурсия, ирония)

  • Фичи для мета-уровня (понимание того, что модель — это ИИ)

  • Фичи для различных языков и диалектов

  • Фичи для стилей письма

Особенно интересны фичи, связанные с самоидентификацией модели. Есть фича, которая активируется, когда Claude понимает, что разговор идёт о нём самом. Есть фича для ситуаций, когда пользователь пытается заставить модель притвориться кем-то другим.


Эксперимент: а что если покрутить ручки?

Найти фичи — полдела. Исследователи решили проверить, действительно ли эти фичи управляют поведением, а не просто коррелируют с ним. Для этого они начали искусственно усиливать и ослаблять отдельные фичи во время работы модели.

Эксперимент с Золотым мостом

Когда фичу “Golden Gate Bridge” усилили в 10 раз, Claude начал вести себя… одержимо.

Обычный диалог:

  • Пользователь: Расскажи о себе.

  • Claude: Я — ИИ-ассистент, созданный компанией Anthropic для помощи людям в различных задачах…

С усиленной фичей:

  • Пользователь: Расскажи о себе.

  • Claude: Я подобен величественному мосту Золотые Ворота — связующее звено между человеческими вопросами и океаном знаний. Как этот культовый мост соединяет берега залива Сан-Франциско…

Модель буквально не могла перестать думать о Золотом мосте. Любой вопрос — о погоде, о программировании, о философии — она умудрялась свести к этой достопримечательности.

Забавно, но показательно: фича реально контролирует, о чём модель думает.

Практические эксперименты

Более полезные результаты получились с другими фичами:

  • Усиление фичи “отказ от опасных запросов” делало модель более осторожной — она начинала отказывать даже в безобидных запросах, которые отдалённо напоминали что-то сомнительное

  • Ослабление этой же фичи делало модель более уступчивой

  • Усиление фичи “формальный стиль” меняло тон ответов

  • Усиление фичи “сомнение” заставляло модель чаще признавать неуверенность

Это открывает путь к точечной настройке поведения моделей. Вместо того чтобы переобучать всю модель на новых данных (дорого, долго, непредсказуемо), можно просто подкрутить нужные фичи.


Почему это действительно важно

Окей, нашли какие-то фичи, покрутили ручки — и что с того? На самом деле, это исследование имеет несколько важных практических применений.

Безопасность ИИ

Сейчас безопасность моделей работает примерно как антиспам в 2005 году: чёрные списки, эвристики, ключевые слова. Пользователь написал “как сделать бомбу” — отказываем. Написал “как сделать фейерверк для научного проекта” — тоже отказываем на всякий случай. Написал то же самое через метафоры и ролевую игру — пропускаем, потому что не распознали.

Если у нас есть доступ к фичам, отвечающим за опасное поведение, мы можем:

  • Мониторить их активацию в реальном времени

  • Принудительно подавлять определённые фичи

  • Использовать активацию как сигнал для дополнительной проверки

Это принципиально надёжнее, чем пытаться угадать все опасные формулировки. Мы смотрим не на слова, а на то, что модель “думает”.

Отладка и понимание ошибок

Модель галлюцинирует? Сейчас мы можем только развести руками и попросить её “подумать ещё раз”. С интерпретируемостью на уровне фич можно буквально посмотреть, что было активно в момент галлюцинации.

Может оказаться, что галлюцинации возникают, когда активна фича “уверенность”, но неактивна фича “фактическая проверка”. Или когда модель “путает” две похожие концепции из-за перекрытия фич. Это даёт инструменты для реальной отладки, а не гадания.

Тонкая настройка

Сейчас, чтобы изменить поведение модели, нужно либо переобучать её (дорого), либо писать длинные системные промпты (ненадёжно), либо файнтюнить на примерах (непредсказуемо).

С доступом к фичам можно сказать: “усиль фичу X на 20%, ослабь фичу Y на 30%”. Модель-конструктор вместо чёрного ящика.

Научное понимание

Наконец, это просто интересно с точки зрения науки. Мы начинаем понимать, что нейросети — не просто “статистические попугаи”, как любят говорить критики. Внутри них формируются структуры, которые подозрительно похожи на то, что мы бы назвали “концепциями” или “знаниями”.

Это не доказывает, что модели “понимают” в человеческом смысле. Но это показывает, что там внутри есть что-то более сложное, чем простое запоминание паттернов.


Ограничения и открытые вопросы

Было бы нечестно не упомянуть проблемы. Исследование — прорыв, но до полного понимания моделей ещё далеко.

Масштабируемость

Обучение SAE на 34 миллиона фич — это тысячи GPU-часов. Claude 3 Sonnet — далеко не самая большая модель. Что будет с Claude 3.5 Opus? С GPT-5? С будущими моделями, которые в 10 раз больше?

Методы нужно масштабировать, а это нетривиально.

Не всё интерпретируемо

Примерно 20-30% найденных фич так и остались загадкой для исследователей. Они явно на что-то реагируют, но понять на что — не получилось.

Варианта два: либо это артефакты обучения SAE, либо концепции, которые существуют в модели, но не имеют аналогов в человеческом мышлении. Второй вариант интереснее — и немного пугает.

Причинность vs корреляция

Фича активируется на определённый паттерн — но является ли она причиной поведения модели или просто коррелятом? Эксперименты с усилением фич частично отвечают на этот вопрос, но не полностью.

Возможно, есть более глубокий уровень, который мы ещё не видим.

Динамика во времени

Исследование смотрит на “снимок” активаций в конкретный момент. Но модель работает последовательно, токен за токеном. Как фичи взаимодействуют во времени? Как одна активация влияет на следующую?

Это отдельное большое направление исследований.

Другие архитектуры

Работа проведена на трансформерах. Будет ли метод работать на других архитектурах — Mamba, SSM, будущих разработках? Пока неизвестно.


Что это значит для нас, пользователей

Если вы дочитали до сюда, возможно, задаётесь вопросом: окей, интересно, но что мне с этого?

Во-первых, модели будут становиться безопаснее и предсказуемее. Не завтра, но в перспективе года-двух компании начнут использовать интерпретируемость как стандартный инструмент. Меньше странных отказов, меньше галлюцинаций, более стабильное поведение.

Во-вторых, появится возможность кастомизации на новом уровне. Хотите модель, которая пишет более формально? Или более креативно? Или с большим вниманием к деталям? Вместо подбора промптов можно будет просто настроить нужные “ручки”.

В-третьих, регуляторы начнут требовать объяснимости. ЕС с его AI Act, американские инициативы — все они движутся в сторону требований “объясните, почему ваша модель приняла такое решение”. Интерпретируемость — ответ на этот запрос.


Что дальше

Anthropic не остановились на этом исследовании. У них уже есть рабочие инструменты для мониторинга моделей на основе фич. По слухам (и по намёкам в блогах компании), именно так они ловят попытки обхода ограничений — не по ключевым словам, а по активации подозрительных паттернов.

Google DeepMind и OpenAI тоже работают над интерпретируемостью, хотя публикуют меньше. Это становится стандартным направлением исследований, а не экзотикой.

Я ожидаю, что в течение следующего года мы увидим:

  • Инструменты интерпретируемости в коммерческих API (возможно, за дополнительную плату)

  • Требования регуляторов к объяснимости моделей

  • Новые методы тонкой настройки на основе фич

  • Прогресс в понимании галлюцинаций и их предотвращении

Эпоха чёрных ящиков постепенно заканчивается. И это, пожалуй, одна из лучших новостей в ИИ за последние годы.


P.S. Anthropic выложили интерактивный визуализатор найденных фич на своём сайте — можно самому покопаться и посмотреть, какие концепции модель “знает”. Залипательная штука, честно предупреждаю — я потерял там пару часов.


Ссылка на оригинал статьи в токены на ветер — иногда пишу про такое, а иногда о том, как LLM думают, или просто притворяются.

Автор: ScriptShaper

Источник

Rambler's Top100