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.
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
Definiți obiectivele de latență, calitate și cost înainte de implementare.
Benchmark în condiții realiste de încărcare și date.
Monitorizarea instrumentelor pentru erori, deriva și impactul utilizatorului.
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.
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.