Техническо РЪКОВОДСТВО

SwiGLU и затворени активации

SwiGLU е затворена функция за активиране, която умножава една линейна проекция на входа по втора проекция, активирана от Swish, действайки като обучаем, зависещ от данни порт в слоевете за предаване напред на трансформатора.

2 min readПоследна актуализация

Преглед

It consistently improves language-model quality, which is why nearly every modern LLM uses it.

Дълбоко гмуркане

Стандартен трансформаторен захранващ блок е два линейни слоя с ReLU или GELU между тях. Затворени линейни единици, предложени от Dauphin et al. през 2016 г., разделете първата проекция на две половини и използвайте едната половина, за да затворите другата чрез умножение по елементи. SwiGLU, популяризиран от Noam Shazeer през 2020 г., използва функцията Swish (SiLU) за този гейт: изход = (Swish(xW) * (xV)) W2, с три матрици за тегло вместо две. Гейтингът позволява на мрежата избирателно да предава или потиска информация за всяко измерение. Тъй като добавянето на третата матрица увеличава параметрите, реализациите свиват скритото измерение до приблизително две трети, така че общото изчисление остава сравнимо с GELU MLP. Експериментите на Shazeer показаха измерими печалби на объркване и всички LLaMA, PaLM и Mistral го възприеха.

Техническа информация

Swish е x * sigmoid(beta*x), гладка, немонотонна функция, която за разлика от ReLU позволява малки отрицателни стойности. В SwiGLU клонът на 'gate' Swish(xW) произвежда стойности близо до 0 или 1, които умножават клона 'стойност' xV по елементи, така че приносът на всяка скрита единица се модулира от научен, зависим от входа сигнал. Третата матрица на теглото е цената; трикът със скрит размер на две трети поддържа бюджета на FLOP в съответствие с ванилия слой за подаване напред.

Стратегическо въздействие

Cost and budget

Архитектурните решения стимулират производителността и оперативните разходи в продължение на години.

Clearer decisions

Техническото образование помага на екипите да изберат правилния стек, а не само най-новия.

Quality control

По-добрият инженерен избор намалява инцидентите, свързани с надеждността в производството.

Бъдещето на SwiGLU и Gated Activations

SwiGLU е утвърден като MLP по подразбиране в LLM с отворено тегло и е малко вероятно скоро да бъде изместен. Активните насоки включват варианти на GeGLU и ReGLU, слети GPU ядра, които изчисляват и двете проекции с едно преминаване, и комбиниране на gated MLP със смес от експерти, така че всеки експерт сам по себе си е SwiGLU блок. Изследователите също така проучват защо стробирането помага за оптимизацията, като се стремят да проектират още по-евтини порти.

Внедряване в реалния свят

LLaMA, PaLM и Mistral заменят GELU feed-forward слоя със SwiGLU, за да намалят объркването при равни изчисления

Скритото измерение е мащабирано до около две трети (8/3 d), така че допълнителната стробираща матрица не надува FLOPs

Моделите смесени от експерти като Mixtral използват SwiGLU блокове като мрежа за предаване на информация за експерт

Визията и мултимодалните трансформатори заемат GeGLU/SwiGLU gating, за да подобрят своите MLP подслоеве

Рискове и предпазни огради

Оптимизирането на един бенчмарк може да скрие по-широки системни слабости.

Разходите за инфраструктура и поддръжка често се подценяват.

Пропуските в сигурността и видимостта могат да нарастват, когато системите стават по-сложни.

Пътна карта за изпълнение

1

Определете целите за латентност, качество и разходи преди внедряването.

2

Бенчмарк при реалистични условия на натоварване и данни.

3

Мониторинг на инструмента за грешки, отклонение и въздействие върху потребителя.

4

Подгответе пътеките за връщане назад и реакция на инцидент преди мащабиране.

Продължете да изследвате

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.

Start quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Next guide

Компромиси при повторно изчисляване на активиране

Frequently asked questions

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 г.?

Бележката на Noam Shazeer от 2020 г. „GLU Variants Improve Transformer“ представи SwiGLU и показа неговите объркващи печалби.