SwiGLU и закрытые активации
SwiGLU — это функция активации со стробированием, которая умножает одну линейную проекцию входного сигнала на вторую, активируемую Swish, действуя как обучаемый, зависящий от данных вентиль внутри слоев прямой связи трансформатора.
Обзор
It consistently improves language-model quality, which is why nearly every modern LLM uses it.
Глубокое погружение
Стандартный блок прямой связи трансформатора представляет собой два линейных слоя с ReLU или GELU между ними. Закрытые линейные единицы, предложенные Дофином и др. в 2016 году разделили первую проекцию на две половины и использовали одну половину для шлюзования другой посредством поэлементного умножения. SwiGLU, популяризированный Ноамом Шазиром в 2020 году, использует для этого вентиля функцию Swish (SiLU): выход = (Swish(xW) * (xV)) W2, с тремя весовыми матрицами вместо двух. Шлюз позволяет сети выборочно передавать или подавлять информацию по каждому измерению. Поскольку добавление третьей матрицы увеличивает параметры, реализации уменьшают скрытое измерение примерно до двух третей, поэтому общий объем вычислений остается сопоставимым с GELU MLP. Эксперименты Шазира показали измеримый рост растерянности, и LLaMA, PaLM и Mistral переняли его.
Техническая информация
Swish — это x * sigmoid(beta*x), гладкая, немонотонная функция, которая, в отличие от ReLU, пропускает небольшие отрицательные значения. В SwiGLU ветвь «ворота» Swish(xW) выдает значения, близкие к 0 или 1, которые умножают ветвь «значений» xV поэлементно, поэтому вклад каждой скрытой единицы модулируется изученным, зависящим от входа сигналом. Третья весовая матрица — это стоимость; трюк со скрытым размером двух третей позволяет согласовать бюджет FLOP с ванильным слоем прямой связи.
Стратегическое воздействие
Стоимость и бюджет
Архитектурные решения влияют на производительность и эксплуатационные расходы на протяжении многих лет.
Более четкие решения
Техническое образование помогает командам выбрать правильный стек, а не только самый новый.
Контроль качества
Лучший инженерный выбор снижает вероятность возникновения проблем с надежностью на производстве.
Будущее SwiGLU и закрытых активаций
SwiGLU закрепился в качестве MLP по умолчанию в программах LLM с открытым весом и вряд ли будет заменен в ближайшее время. Активные направления включают варианты GeGLU и ReGLU, объединенные ядра графического процессора, которые вычисляют обе проекции за один проход, а также сочетание закрытых MLP со смесью экспертов, так что каждый эксперт сам по себе является блоком SwiGLU. Исследователи также изучают, почему ворота помогают оптимизации, стремясь разработать еще более дешевые ворота.
Реальная реализация
LLaMA, PaLM и Mistral заменяют уровень прямой связи GELU на SwiGLU, чтобы уменьшить недоумение при одинаковых вычислениях.
Скрытое измерение масштабируется примерно до двух третей (8/3 d), поэтому дополнительная матрица шлюзования не увеличивает количество FLOP.
Модели смешанного состава экспертов, такие как Mixtral, используют блоки SwiGLU в качестве сети прямой связи для каждого эксперта.
Vision и мультимодальные преобразователи заимствуют вентиляцию GeGLU/SwiGLU для улучшения своих подуровней MLP.
Риски и ограничения
Оптимизация одного теста может скрыть более широкие недостатки системы.
Затраты на инфраструктуру и техническое обслуживание часто недооцениваются.
Пробелы в безопасности и наблюдаемости могут увеличиваться по мере усложнения систем.
Дорожная карта реализации
Определите целевые показатели задержки, качества и стоимости перед внедрением.
Тестирование при реалистичной нагрузке и условиях данных.
Мониторинг прибора на наличие ошибок, дрейфа и влияния пользователя.
Перед масштабированием подготовьте пути отката и реагирования на инциденты.
Продолжайте исследовать
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the SwiGLU and Gated Activations quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Следующее руководство
Компромиссы при перевычислении активации
Часто задаваемые вопросы
What is SwiGLU and Gated Activations?
SwiGLU — это функция активации со стробированием, которая умножает одну линейную проекцию входного сигнала на вторую, активируемую Swish, действуя как обучаемый, зависящий от данных вентиль внутри слоев прямой связи трансформатора. Он последовательно улучшает качество языковой модели, поэтому его использует почти каждый современный LLM.
Какая основная операция определяет линейный блок с затвором?
GLU умножает проекцию значения на проекцию шлюза поэлементно, позволяя сети управлять потоком информации по каждому измерению.
Какую функцию активации использует SwiGLU для своей ветки ворот?
SwiGLU использует Swish, также называемый SiLU, определенный как x * sigmoid(beta*x), для входной ветви.
Сколько весовых матриц использует блок прямой связи SwiGLU?
SwiGLU нужны три матрицы: проекция вентиля, проекция значения и проекция вывода.
Почему скрытое измерение в слоях SwiGLU обычно масштабируется примерно до двух третей?
В противном случае третья матрица увеличила бы объем вычислений, поэтому сокращение скрытого размера примерно до 8/3 d позволяет сохранить бюджет согласованным.
Кто популяризировал SwiGLU для слоев прямой связи трансформатора в 2020 году?
В заметке Ноама Шазира за 2020 год «Варианты GLU улучшают трансформатор» был представлен SwiGLU и продемонстрировано увеличение его запутанности.