Команда OpenAI выпустила «circuit-sparsity»: набор открытых инструментов для соединения разреженных по весам моделей и плотных базовых моделей с помощью активационных мостов

Команда OpenAI выпустила модель openai/circuit-sparsity на Hugging Face и инструментарий openai/circuit_sparsity на GitHub. В релизе собраны модели и схемы из статьи «Weight-sparse transformers have interpretable circuits».

Что такое разреженный по весам трансформер?

Модели представляют собой декодеры в стиле GPT-2, обученные на коде Python. Разреженность не добавляется после обучения, она обеспечивается во время оптимизации. После каждого шага AdamW обучающий цикл сохраняет только записи с наибольшей величиной в каждой весовой матрице и смещении, включая вложения токенов, а остальные обнуляет. Все матрицы сохраняют одинаковую долю ненулевых элементов.

Самые разреженные модели имеют примерно один ненулевой вес на тысячу. Кроме того, команда OpenAI ввела мягкую активацию разреженности, так что примерно одна из четырёх активаций узлов является ненулевой.

Что такое разрежённая схема?

Центральный объект в этой исследовательской работе — разрежённая схема. Исследовательская группа определяет узлы с очень мелкой гранулярностью, каждый узел — это отдельный нейрон, канал внимания, канал остаточного чтения или канал остаточной записи. Ребро — это отдельная ненулевая запись в весовой матрице, которая соединяет два узла. Размер схемы измеряется геометрическим средним количеством рёбер по задачам.

Примеры схем

Самый компактный пример — схема для singledoublequote. Здесь модель должна выдать правильный тип закрывающей кавычки, учитывая открывающую кавычку. Обрезанная схема имеет 12 узлов и 9 рёбер.

Механизм состоит из двух шагов. В слое 0.mlp два нейрона специализируются:
* нейрон-детектор кавычек, который активируется как на » и ‘,
* нейрон-классификатор типа кавычек, который положителен на » и отрицателен на ‘.

Более поздняя голова внимания в слое 10.attn использует канал детектора кавычек в качестве ключа, а канал классификатора типа кавычек — в качестве значения. Последний токен имеет постоянный положительный запрос, поэтому выход внимания копирует правильный тип кавычек в последнюю позицию, и модель правильно закрывает строку.

Мосты для соединения разреженных моделей с плотными моделями

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

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

Что именно выпустила команда OpenAI?

Команда OpenAI выпустила модель openai/circuit-sparsity на Hugging Face. Это модель с 0,4 миллиарда параметров, помеченная как customcode, соответствующая cspyolo2 в исследовательской статье. Модель используется для качественных результатов при подсчёте скобок и связывании переменных. Она лицензирована по Apache 2.0.

Ключевые выводы:
* Разреженная по весу тренировка, а не постобработка: схема разреженности обучает модели-декодеры в стиле GPT-2 с экстремальной разреженностью по весу, обеспечиваемой во время оптимизации.
* Малые, специфичные для задач схемы с явными узлами и рёбрами: исследовательская группа определяет схемы на уровне отдельных нейронов, каналов внимания и остаточных каналов, и восстанавливает схемы, которые часто имеют десятки узлов и несколько рёбер для 20 бинарных задач Python следующего токена.
* Модели и инструменты на Hugging Face и GitHub: OpenAI выпустила модель openai/circuit-sparsity с 0,4 миллиарда параметров на Hugging Face и полную кодовую базу openai/circuit_sparsity на GitHub под лицензией Apache 2.0, включая контрольные точки модели, определения задач и пользовательский интерфейс визуализации схем.
* Механизм моста для связи разреженных и плотных моделей: работа представляет механизмы энкодер-декодер, которые сопоставляют разреженные и плотные активации, что позволяет исследователям переносить разреженные функциональные вмешательства в стандартные плотные трансформеры и изучать, как интерпретируемые схемы соотносятся с моделями реального производственного масштаба.

Вопросы и ответы:

1. Какие особенности имеет модель openai/circuit-sparsity, выпущенная командой OpenAI?

Модель openai/circuit-sparsity имеет 0,4 миллиарда параметров и является моделью, разреженной по весу. Она обучена на коде Python и обеспечивает разреженность во время оптимизации. Модель лицензирована по Apache 2.0 и используется для качественных результатов при подсчёте скобок и связывании переменных.

2. Какие механизмы используются для соединения разрежённых моделей с плотными моделями?

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

3. Какие преимущества даёт использование разрежённых по весу моделей в стиле GPT-2?

Использование разрежённых по весу моделей в стиле GPT-2 позволяет достичь экстремальной разреженности по весу, обеспечиваемой во время оптимизации. Это может привести к более эффективному использованию ресурсов и улучшению производительности моделей.

4. Какие задачи может решать модель openai/circuit-sparsity?

Модель openai/circuit-sparsity может использоваться для качественных результатов при подсчёте скобок и связывании переменных. Это указывает на её способность работать с задачами, требующими анализа и обработки текстовой информации.

5. Какие инструменты и ресурсы были выпущены вместе с моделью openai/circuit-sparsity?

Вместе с моделью openai/circuit-sparsity были выпущены полная кодовая база openai/circuit_sparsity на GitHub под лицензией Apache 2.0, включая контрольные точки модели, определения задач и пользовательский интерфейс визуализации схем. Это обеспечивает возможность дальнейшего изучения и использования модели.

Источник