GHID tehnic

SwiGLU și activări Gated

SwiGLU este o funcție de activare cu porți care înmulțește o proiecție liniară a intrării cu o a doua proiecție activată de Swish, acționând ca o poartă care poate fi învățată, dependentă de date, în interiorul straturilor de feed-forward ale transformatorului.

2 minute de lecturăUltima actualizare

Prezentare generală

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

Scufundare în profunzime

Un bloc de alimentare cu transformator standard este format din două straturi liniare cu un ReLU sau GELU între ele. Gated Linear Units, propuse de Dauphin et al. în 2016, împărțiți prima proiecție în două jumătăți și utilizați o jumătate pentru a o porni pe cealaltă prin multiplicare în funcție de elemente. SwiGLU, popularizat de Noam Shazeer în 2020, folosește funcția Swish (SiLU) pentru acea poartă: output = (Swish(xW) * (xV)) W2, cu trei matrice de greutate în loc de două. Gate-ul permite rețelei să treacă sau să suprime în mod selectiv informațiile pe dimensiune. Deoarece adăugarea celei de-a treia matrice crește parametrii, implementările micșorează dimensiunea ascunsă la aproximativ două treimi, astfel încât calculul total rămâne comparabil cu un MLP GELU. Experimentele lui Shazeer au arătat câștiguri măsurabile de perplexitate, iar LLaMA, PaLM și Mistral l-au adoptat cu toții.

Perspectivă tehnică

Swish este x * sigmoid(beta*x), o funcție lină, nemonotonă, care, spre deosebire de ReLU, permite trecerea valorilor negative mici. În SwiGLU, ramura „poartă” Swish(xW) produce valori apropiate de 0 sau 1 care înmulțesc ramura „valoare” xV în funcție de elemente, astfel încât contribuția fiecărei unități ascunse este modulată de un semnal învățat, dependent de intrare. A treia matrice de greutate este costul; trucul de două treimi de dimensiuni ascunse menține bugetul FLOP potrivit cu un strat de avans de vanilie.

Impact strategic

Cost și buget

Deciziile de arhitectură generează performanța și costurile de operare de ani de zile.

Decizii mai clare

Educația tehnică ajută echipele să aleagă stiva potrivită, nu doar cea mai nouă.

Controlul calității

Opțiuni de inginerie mai bune reduc incidentele de fiabilitate în producție.

Viitorul SwiGLU și activărilor Gated

SwiGLU este înrădăcinat ca MLP implicit în LLM-uri deschise și este puțin probabil să fie înlocuit în curând. Direcțiile active includ variante GeGLU și ReGLU, nuclee GPU fuzionate care calculează ambele proiecții într-o singură trecere și combină MLP-uri cu blocare cu amestec de experți, astfel încât fiecare expert să fie el însuși un bloc SwiGLU. Cercetătorii studiază, de asemenea, de ce porțile ajută la optimizare, cu scopul de a proiecta porți și mai ieftine.

Implementare în lumea reală

LLaMA, PaLM și Mistral înlocuiesc stratul de feed-forward GELU cu SwiGLU pentru a reduce perplexitatea la calcul egal

Dimensiunea ascunsă este scalată la aproximativ două treimi (8/3 d), astfel încât matricea de deschidere suplimentară nu umflă FLOP-urile

Modelele mixte de experți, cum ar fi Mixtral, folosesc blocurile SwiGLU ca rețea de feed-forward per expert

Transformatoarele vizuale și multimodale împrumută porțile GeGLU/SwiGLU pentru a-și îmbunătăți substraturile MLP

Riscuri și balustrade

Optimizarea unui punct de referință poate ascunde slăbiciunile mai largi ale sistemului.

Costurile de infrastructură și întreținere sunt adesea subestimate.

Lacunele de securitate și observabilitate pot crește pe măsură ce sistemele devin mai complexe.

Foaia de parcurs de implementare

1

Definiți obiectivele de latență, calitate și cost înainte de implementare.

2

Benchmark în condiții realiste de încărcare și date.

3

Monitorizarea instrumentelor pentru erori, deriva și impactul utilizatorului.

4

Pregătiți căile de retragere și răspuns la incident înainte de scalare.

Continuați să explorați

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.

Quiz Start

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

Următorul ghid

Compensații de calcul de activare

Întrebări frecvente

What is SwiGLU and Gated Activations?

SwiGLU este o funcție de activare cu porți care înmulțește o proiecție liniară a intrării cu o a doua proiecție activată de Swish, acționând ca o poartă care poate fi învățată, dependentă de date, în interiorul straturilor de feed-forward ale transformatorului. Îmbunătățește în mod constant calitatea modelului de limbă, motiv pentru care aproape fiecare LLM modern îl utilizează.

Ce operațiune de bază definește o unitate liniară Gated?

Un GLU înmulțește o proiecție de valoare cu o proiecție de poartă în funcție de element, permițând rețelei să controleze informațiile să circule pe dimensiune.

Ce funcție de activare folosește SwiGLU pentru ramura de poartă?

SwiGLU folosește Swish, numit și SiLU, definit ca x * sigmoid(beta*x), pentru ramura gating.

Câte matrice de greutate folosește un bloc feed-forward SwiGLU?

SwiGLU are nevoie de trei matrice: proiecția poartă, proiecția valorii și proiecția output-ului.

De ce dimensiunea ascunsă este de obicei scalată la aproximativ două treimi în straturile SwiGLU?

A treia matrice ar umfla altfel calculul, astfel încât reducerea dimensiunii ascunse la aproximativ 8/3 d menține bugetul egal.

Cine a popularizat SwiGLU pentru straturi de feed-forward pentru transformatoare în 2020?

Nota din 2020 a lui Noam Shazeer „GLU Variants Improve Transformer” a introdus SwiGLU și și-a arătat câștigurile de perplexitate.