SwiGLU és kapuzott aktiválások
A SwiGLU egy kapuzott aktiválási funkció, amely megszorozza a bemenet egy lineáris vetületét egy Swish által aktivált második vetülettel, tanulható, adatfüggő kapuként működik a transzformátor előrecsatolt rétegeiben.
Áttekintés
It consistently improves language-model quality, which is why nearly every modern LLM uses it.
Mély merülés
A szabványos transzformátor-előrecsatoló blokk két lineáris rétegből áll, közöttük egy ReLU vagy GELU. Kapuzott lineáris egységek, Dauphin et al. 2016-ban az első vetületet osszuk két részre, és az egyik felét használjuk a másik kapuhoz elemenkénti szorzással. A Noam Shazeer által 2020-ban népszerűsített SwiGLU a Swish (SiLU) függvényt használja ehhez a kapuhoz: output = (Swish(xW) * (xV)) W2, kettő helyett három súlymátrixszal. A kapuzás lehetővé teszi a hálózat számára, hogy dimenziónként szelektíven továbbítsa vagy elnyomja az információkat. Mivel a harmadik mátrix hozzáadása növeli a paramétereket, az implementációk nagyjából kétharmadára csökkentik a rejtett dimenziót, így a teljes számítás összehasonlítható marad a GELU MLP-vel. Shazeer kísérletei mérhető zavartságnövekedést mutattak, és a LLaMA, a PaLM és a Mistral is ezt alkalmazta.
Technikai betekintés
A Swish egy x * sigmoid(beta*x), egy sima, nem monoton függvény, amely a ReLU-val ellentétben kis negatív értékeket enged át. A SwiGLU-ban a 'gate' ág Swish(xW) 0-hoz vagy 1-hez közeli értékeket állít elő, amelyek elemenként megszorozzák az 'érték' ágat xV, így minden rejtett egység hozzájárulását egy tanult, bemenettől függő jel modulálja. A harmadik súlymátrix a költség; a kétharmadnyi rejtett méretű trükk a FLOP költségvetését egy vanília előrecsatoló réteghez igazítja.
Stratégiai hatás
Költség és költségvetés
Az építészeti döntések évekig növelik a teljesítményt és a működési költségeket.
Tisztább döntések
A technikai oktatás segít a csapatoknak a megfelelő verem kiválasztásában, nem csak a legújabb készletben.
Minőségellenőrzés
A jobb mérnöki döntések csökkentik a termelés megbízhatósági incidenseit.
A SwiGLU és a kapuzott aktiválások jövője
A SwiGLU az alapértelmezett MLP a nyílt súlyú LLM-ekben, és nem valószínű, hogy hamarosan kiszorítják. Az aktív irányok közé tartoznak a GeGLU és a ReGLU változatok, az egyesített GPU-kernelek, amelyek mindkét vetületet egy menetben számítják ki, valamint a kapuzott MLP-k és a szakértők keverékének kombinálása, így minden szakértő maga SwiGLU blokk. A kutatók azt is vizsgálják, hogy a kapuzás miért segíti az optimalizálást, még olcsóbb kapuk tervezése a cél.
Valós megvalósítás
A LLaMA, a PaLM és a Mistral a GELU előrecsatolt réteget SwiGLU-ra cseréli, hogy csökkentse a zavartságot egyenlő számítás mellett
A rejtett dimenzió körülbelül kétharmadára (8/3 d) van méretezve, így az extra kapuzási mátrix nem növeli a FLOP-okat
A szakértői keverék modellek, mint például a Mixtral, a SwiGLU blokkokat használják szakértőnkénti előrecsatoló hálózatként
A Vision és a multimodális transzformátorok GeGLU/SwiGLU kapuzást kölcsönöznek MLP-alrétegeik fejlesztéséhez
Kockázatok és védőkorlátok
Egy benchmark optimalizálása elrejtheti a rendszer általános hiányosságait.
Az infrastrukturális és karbantartási költségeket gyakran alábecsülik.
A biztonsági és megfigyelhetőségi hiányosságok a rendszerek bonyolultabbá válásával nőhetnek.
Végrehajtási ütemterv
Határozza meg a késleltetési, minőségi és költségcélokat a megvalósítás előtt.
Benchmark reális terhelési és adatviszonyok mellett.
Műszerfigyelés a hibák, az eltolódás és a felhasználói hatások szempontjából.
A méretezés előtt készítse elő a visszagörgetési és az incidensre adott válaszútvonalakat.
Folytassa a felfedezést
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
Következő útmutató
Aktiválási újraszámítási kompromisszumok
Gyakran ismételt kérdések
What is SwiGLU and Gated Activations?
A SwiGLU egy kapuzott aktiválási funkció, amely megszorozza a bemenet egy lineáris vetületét egy Swish által aktivált második vetülettel, tanulható, adatfüggő kapuként működik a transzformátor előrecsatolt rétegeiben. Folyamatosan javítja a nyelvi modell minőségét, ezért szinte minden modern LLM használja.
Milyen alapművelet határozza meg a kapuzott lineáris egységet?
A GLU megszorozza az értékvetítést egy kapu vetületi elemmel, lehetővé téve a hálózat számára az információáramlást dimenziónként.
Melyik aktiválási funkciót használja a SwiGLU a kapu ágához?
A SwiGLU a Swish-t, más néven SiLU-t használja, amely x * sigmoid(beta*x) néven van definiálva a kapuzási ághoz.
Hány súlymátrixot használ egy SwiGLU előrecsatolt blokk?
A SwiGLU-nak három mátrixra van szüksége: a kapuvetítésre, az értékvetítésre és a kimeneti vetületre.
Miért van a rejtett dimenzió általában kétharmadára méretezve a SwiGLU rétegekben?
A harmadik mátrix egyébként megnövelné a számítást, így a rejtett méret durván 8/3 d-ra való csökkentése a költségvetés megfelelő marad.
Ki népszerűsítette a SwiGLU-t a transzformátor-előtolási rétegekhez 2020-ban?
Noam Shazeer 2020-as „GLU Variants Improve Transformer” megjegyzése bemutatta a SwiGLU-t, és megmutatta annak zavartságát.