AI-mallit ja alustat

Mixture-of-Expertsin nousu tehokkaiden suurten kielen mallien kehittämiseen

mm
Lisää Unite.AI suosikkilähteisiisi Google-palvelussa

Luonnollisen kielen prosessoinnin (NLP) maailmassa suurten ja tehokkaiden kielen mallien kehittäminen on ollut voimakas voima useiden viimeaikaisen edistysten takana. Kuitenkin, kun nämä mallit kasvavat kooltaan, laskennalliset vaatimukset koulutukselle ja inferenceksi tulevat yhä vaativammaksi, työntäen rajat saatavilla olevien laitteiden resursseja vastaan.

Tässä tulee Mixture-of-Experts (MoE), tekniikka, joka lupailee helpottaa tätä laskennallista taakkaa samalla, kun se mahdollistaa suurempien ja tehokkaampien kielen mallien koulutuksen. Alla, tarkastelemme MoE:ta, sen alkuperää, sisäisiä toimintaperiaatteita ja sovelluksia transformer-pohjaisissa kielen malleissa.

Mixture-of-Expertsin alkuperä

Mixture-of-Experts (MoE) -käsitteen voidaan jäljittää takaisin 1990-luvun alkuun, jolloin tutkijat tutkivat ehdollisen laskennan ideaa, jossa osia neuroverkosta aktivoitiin valikoivasti syötedatan perusteella. Yksi uraauurtavista töistä tässä alalla oli “Adaptive Mixture of Local Experts” -artikkeli Jacobs et al. vuonna 1991, joka esitti valvottua oppimisviitekehyksen neuroverkkoryhmälle, jokainen erikoistunut eri syötedatan alueeseen.

MoE:n keskeinen idea on, että useita “asiantuntija”-verkkoja on olemassa, ja kunkin asiantuntijan vastuulla on prosessoida tietty osa syötedataa. Portti-mekanismin, joka on itse neuroverkko, määrää, mitkä asiantuntijat tulisi prosessoida annetun syötteen. Tämä lähestymistapa mahdollistaa mallin varusteiden laskennallisen tehokkuuden, sillä se aktivoi vain relevantit asiantuntijat kullekin syötteelle, eikä käytä koko mallin kapasiteettia jokaiselle syötteelle.

Vuosien varrella useat tutkijat ovat tutkineet ja laajentaneet ehdollisen laskennan ideaa, mikä on johtanut kehityksiin, kuten hierarkkisiin MoE:hin, matalan arvon approksimointeihin ehdolliselle laskennalle ja tekniikoille, joilla arvioidaan gradientteja stokastisten neuroneiden ja kovien aktivaatiotoimintojen kautta.

Mixture-of-Experts transformer-malleissa

Mixture of Experts

Mixture of Experts

Vaikka MoE:n idea on ollut olemassa jo vuosikymmeniä, sen soveltaminen transformer-pohjaisiin kielen malleihin on suhteellisen uusi. Transformerit, jotka ovat tulleet de facto -standardiksi valmiiden kielen mallien joukossa, koostuvat useista kerroksista, joista kussakin on itseisarvoisuusmekanismi ja syötteen eteenpäin kulkeva neuroverkko (FFN).

Avaininnovaatio MoE:n soveltamisessa transformer-malleihin on korvata tiheät FFN-kerrokset harvoilla MoE-kerroksilla, joissa kussakin on useita asiantuntija-FFN:iä ja portti-mekanismi. Portti-mekanismi määrää, mitkä asiantuntijat tulisi prosessoida kullekin syöte-tokenille, mahdollistaen mallille valikoivasti aktivoituvan vain osan asiantuntijoista annetun syötejonon kohdalla.

Yksi varhaisimmista töistä, joka osoitti MoE:n potentiaalin transformer-malleissa, oli “Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer” -artikkeli Shazeer et al. vuonna 2017. Tämä työ esitteli sparsely-gated MoE -kerroksen käsitteen, joka käytti portti-mekanismia, joka lisäsi sparsiteettia ja melua asiantuntijan valintaan, varmistamalla, että vain osa asiantuntijoista aktivoitui kullekin syötteelle.

Siitä lähtien useat muut työt ovat edistäneet MoE:n soveltamista transformer-malleihin, ja ne ovat käsitelleet haasteita, kuten koulutusvakaavuus, kuormituksen tasapaino ja tehokas inference. Merkittäviä esimerkkejä ovat Switch Transformer (Fedus et al., 2021), ST-MoE (Zoph et al., 2022) ja GLaM (Du et al., 2022).

Mixture-of-Expertsin hyödyt kielen malleille

MoE:n pääasiallinen hyöty kielen malleissa on kyky skaalata mallin kokoa pitäen laskennalliset kustannukset suhteellisen vakiaina inference-ajaksi. Valikoivasti aktivoimalla vain osan asiantuntijoita kullekin syöte-tokenille MoE-mallit voivat saavuttaa tiheiden suurempien mallien ilmaisukyvyn, vaikka ne vaativat merkittävästi vähemmän laskentaa.

Esimerkiksi, tarkastellaan kielen mallia, jossa on tiheä FFN-kerros 7 miljardia parametriä. Jos korvaamme tämän kerroksen MoE-kerroksella, joka koostuu kahdeksasta asiantuntijasta, kussakin 7 miljardia parametriä, yhteinen määrä parametreja kasvaa 56 miljardiin. Kuitenkin, inference-ajaksi, jos aktivoimme vain kaksi asiantuntijaa tokenille, laskennallinen kustannus on vastaava kuin 14 miljardin parametrin tiheä malli, koska se suorittaa kaksi 7 miljardin parametrin matriisikertolaskua.

Tämä laskennallinen tehokkuus inference-ajaksi on erityisen arvokasta käyttötapauksissa, joissa resurssit ovat rajallisia, kuten mobiililaitteissa tai reunan laskentaympäristöissä. Lisäksi vähennetyt laskennalliset vaatimukset koulutuksen aikana voivat johtaa merkittäviin energiansäästöihin ja alemmaksi hiilijalanjäljeksi, mikä on linjassa kasvavan painopisteen kestävien AI-käytännön kanssa.

Haasteet ja huomioon otettavat seikat

Vaikka MoE-mallit tarjoavat houkuttelevia hyötyjä, niiden omaksuminen ja käyttöönotto liittyy useisiin haasteisiin ja huomioon otettaviin seikkoihin:

  1. Koulutusvakaavuus: MoE-mallit ovat tunnettuja siitä, että ne ovat alttiimpia koulutusvakaavuudelle verrattuna tiheisiin vastineisiinsa. Tämä ongelma johtuu harvan ja ehdollisen asiantuntijoiden aktivaation luonteesta, mikä voi johtaa haasteisiin gradientin etenemisessä ja konvergenssissa. Tekniikoita, kuten reitittäjän z-häviö (Zoph et al., 2022), on ehdotettu vakavuuden parantamiseksi, mutta lisätutkimus on edelleen tarpeen.
  2. Hienosäätö ja yliopetus: MoE-mallit taipuvat yliopettamaan helpommin hienosäätössä, erityisesti kun alimääräinen tehtävällä on suhteellisen pieni aineisto. Tämä käyttäytyminen johtuu MoE-mallien lisääntyneestä kapasiteetista ja harvuudesta, mikä voi johtaa yliopettamiseen koulutusaineistossa. Huolellinen sääntely ja hienosäätöstrategiat ovat tarpeen tämän ongelman lieventämiseksi.
  3. Muistivaatimukset: Vaikka MoE-mallit voivat vähentää laskennallisia kustannuksia inference-ajaksi, ne usein vaativat suurempia muistivaatimuksia verrattuna tiheisiin malleihin saman kokoisina. Tämä johtuu siitä, että kaikki asiantuntijapainot on ladattava muistiin, vaikka vain osa niistä aktivoituu kullekin syötteelle. Muistirajoitukset voivat rajoittaa MoE-mallien skaalautuvuutta resursseja rajoittavilla laitteilla.
  4. Kuormituksen tasapaino: Optimaalisen laskennallisen tehokkuuden saavuttamiseksi on tärkeää tasapainottaa kuormitusta asiantuntijoiden välillä, varmistamalla, että mikään yksittäinen asiantuntija ei ole ylikuormitettu, kun taas toiset ovat alikäytettyjä. Tämä kuormituksen tasapaino saavutetaan yleensä apulisiä häviöiden kautta koulutuksen aikana ja huolellisen kapasiteettikertoimen säätämisen kautta, joka määrää enimmäismäärän tokenien, jotka voidaan määrittää kullekin asiantuntijalle.
  5. Viestintäkuorma: Jakeluun perustuvassa koulutuksessa ja inference-tilanteissa MoE-mallit voivat aiheuttaa lisää viestintäkuormaa asiantuntijoiden välisen aktivaatio- ja gradienttietojen vaihtamisen vuoksi eri laitteilla tai kiihdyttimillä. Tehokkaat viestintästrategiat ja laitteistoon perustuva mallin suunnittelu ovat välttämättömiä tätä kuormaa vähentämiseksi.

Näistä haasteista huolimatta MoE-mallien potentiaaliset hyödyt suurempien ja tehokkaampien kielen mallien mahdollistamisessa ovat kannustaneet merkittäviä tutkimuspyrkimyksiä näiden ongelmien ratkaisemiseksi ja lieventämiseksi.

Esimerkki: Mixtral 8x7B ja GLaM

Jotta voimme havainnollistaa MoE:n käytännön soveltamista kielen malleissa, tarkastellaan kahta merkittävää esimerkkiä: Mixtral 8x7B ja GLaM.

Mixtral 8x7B on MoE-variantti Mistral-kielen mallista, jonka on kehittänyt Anthropic. Se koostuu kahdeksasta asiantuntijasta, kussakin 7 miljardia parametriä, mikä johtaa yhteensä 56 miljardiin parametriin. Kuitenkin inference-ajaksi vain kaksi asiantuntijaa aktivoituu tokenille, vähentäen laskennallisen kustannuksen 14 miljardin parametrin tiheän mallin tasolle.

Mixtral 8x7B on osoittanut vaikuttavia suorituskykyjä, ylittäen 70 miljardin parametrin Llama-mallin ja tarjoten paljon nopeamman inference-ajan. Ohjeistukselle säätöversio Mixtral 8x7B:stä, nimeltään Mixtral-8x7B-Instruct-v0.1, on myös julkaistu, parantamalla edelleen sen kykyjä seuraamaan luonnollisen kielen ohjeita.

Toinen merkittävä esimerkki on GLaM (Google (GOOGL ) Language Model), suuren mittakaavan MoE-malli, jonka on kehittänyt Google. GLaM käyttää decoder-vain transformer-arkkitehtuuria ja on koulutettu massiivisella 1,6 biljoonan tokenin aineistolla. Malli saavuttaa vaikuttavia suorituskykyjä vähä- ja yhden shotin arvioissa, vastaten GPT-3:n laatua käyttäen vain kolmanneksen energiaa, joka vaaditaan GPT-3:n koulutukseen.

GLaM:n menestys voidaan attribuoida sen tehokkaalle MoE-arkkitehtuurille, joka mahdollisti mallin koulutuksen suurella määrällä parametreja samalla, kun se ylläpiti kohtuulliset laskennalliset vaatimukset. Malli osoitti myös MoE-mallien potentiaalin olla energiatehokkaampia ja ympäristöystävällisempiä verrattuna tiheisiin vastineisiinsa.

Grok-1-arkkitehtuuri

GROK MIXTURE OF EXPERT

GROK MIXTURE OF EXPERT

Grok-1 on transformer-pohjainen MoE-malli, jossa on ainutlaatuinen arkkitehtuuri, joka on suunniteltu maksimoimaan tehokkuus ja suorituskyky. Tarkastellaan avainspesifikaatioita:

  1. Parametrit: 314 miljardia parametriä, Grok-1 on suurin avoin LLM tähän mennessä. Kuitenkin MoE-arkkitehtuurin ansiosta vain 25 % painoista (noin 86 miljardia parametriä) on aktiivisia kerran, parantamalla prosessointikapasiteettia.
  2. Arkkitehtuuri: Grok-1 käyttää Mixture-of-8-Experts-arkkitehtuuria, jossa kunkin tokenin prosessointiin osallistuu kaksi asiantuntijaa inference-ajaksi.
  3. Kerrokset: Malli koostuu 64 transformer-kerroksesta, joissa kussakin on multihead-attention ja tiheät lohkot.
  4. Tokenisointi: Grok-1 käyttää SentencePiece-tokenoijaa, jonka sanastokoko on 131 072 tokenia.
  5. Upotukset ja positionaali-koodaus: Mallissa on 6 144 -ulotteisia upotuksia ja se käyttää rotaatiopositionaali-upotuksia, mahdollistaen dynaamisemman tulkinnan datasta verrattuna perinteisiin kiinteisiin positionaali-upotuksiin.
  6. Attention: Grok-1 käyttää 48 attention-päätä kyselyille ja 8 attention-päätä avaimille ja arvoille, joista kunkin koko on 128.
  7. Kontekstin pituus: Malli voi prosessoida jonoja, jotka ovat enintään 8 192 tokenin pituisia, käyttäen bfloat16-tarkkuutta tehokkaan laskennan vuoksi.

Suorituskyky ja toteutusyksityiskohdat

Grok-1 on osoittanut vaikuttavia suorituskykyjä, ylittäen LLaMa 2 70B:n ja Mixtral 8x7B:n MMLU-pistemäärällä 73 %, osoittaen sen tehokkuuden ja tarkin eri testeissä.

On kuitenkin tärkeää huomata, että Grok-1 vaatii merkittäviä GPU-resursseja sen suuren koon vuoksi. Nykyinen toteutus avoimessa lähdekoodissa keskittyy mallin oikeellisuuden vahvistamiseen ja käyttää tehokkaan MoE-kerroksen toteutusta välttääkseen mukautettujen ytimien tarpeen.

Kuitenkin malli tukee aktivaatioiden shardingia ja 8-bittistä kvantifiointia, mikä voi optimoida suorituskykyä ja vähentää muistivaatimuksia.

Huomattavan askelen, xAI on julkaissut Grok-1:n Apache 2.0 -lisenssillä, tehden mallin painot ja arkkitehtuuri saataville globaalille yhteisölle käyttöä ja osallistumista varten.

Avoimen lähdekoodin julkaisu sisältää JAX-esimerkki koodirepositorion, joka osoittaa, miten Grok-1-mallia voidaan ladata ja suorittaa. Käyttäjät voivat ladata mallin painot torrent-asiakkaan avulla tai suoraan HuggingFace Hubin kautta, helpottaen pääsyä tähän merkittävään malliin.

Mixture-of-Expertsin tulevaisuus kielen malleissa

Koska suurempien ja tehokkaampien kielen mallien vaatimus jatkuu kasvamassa, MoE-tekniikoiden omaksuminen on odotettavissa saavan lisää vauhtia. Jatkuva tutkimus on keskittynyt ratkaisemaan jäljellä oleviin haasteisiin, kuten parantamaan koulutusvakaavuutta, vähentämään yliopettamista hienosäätössä ja optimoimaan muisti- ja viestintävaatimuksia.

Yksi lupaava suunta on hierarkkisten MoE-arkkitehtuurien tutkiminen, joissa kunkin asiantuntijan itsessään koostuu useista aliasiantuntijoista. Tämä lähestymistapa voisi mahdollistaa vielä suuremman skaalautuvuuden ja laskennallisen tehokkuuden, ylläpitäen suurten mallien ilmaisukykyä.

Lisäksi laitteiden ja ohjelmistojen kehittäminen, jotka on optimoitu MoE-mallien tehokkaaseen käsittelyyn, on aktiivinen tutkimuksen alue. Erikoistuneet kiihdyttimet ja jakeluun perustuvat koulutuskehykset, jotka on suunniteltu käsittelyyn MoE-mallien harvoja ja ehdollisia laskentamalleja, voivat edelleen parantaa niiden suorituskykyä ja skaalautuvuutta.

Lisäksi MoE-tekniikoiden yhdistäminen muihin kielen mallinnuksen edistysaskeliin, kuten harvoihin huomioimismekanismeihin, tehokkaisiin tokenisointistrategioihin ja monimodaalisiin edustuksiin, voisi johtaa vielä tehokkaampiin ja monipuolisempiin kielen malleihin, jotka voivat käsitellä laajan valikoiman tehtäviä.

Johtopäätös

Mixture-of-Experts-tekniikka on noussut voimakkaaksi työkaluksi suurempien ja tehokkaampien kielen mallien kehittämisessä. Valikoivasti aktivoimalla asiantuntijoita syötedatan perusteella MoE-mallit tarjoavat lupaavan ratkaisun laskennallisiin haasteisiin, jotka liittyvät tiheiden mallien skaalautumiseen. Vaikka haasteita on edelleen ratkaistava, kuten koulutusvakaavuus, yliopetus ja muistivaatimukset, MoE-mallien potentiaaliset hyödyt laskennallisen tehokkuuden, skaalautuvuuden ja ympäristöystävällisyyden suhteen tekevät niistä mielenkiintoisen tutkimuksen ja kehittämisen kohteen.

Kun luonnollisen kielen prosessoinnin ala jatkaa rajojen työntämistä siitä, mitä on mahdollista, MoE-tekniikoiden omaksuminen on todennäköisesti tärkeässä roolissa seuraavan sukupolven kielen mallien mahdollistamisessa. Yhdistämällä MoE:n muihin edistysaskeliin mallin arkkitehtuuriin, koulutustekniikoihin ja laitteistoon, voimme odottaa vielä tehokkaampia ja monipuolisempia kielen malleja, jotka voivat todella ymmärtää ja viestiä ihmisten kanssa luonnollisella ja vaivattomalla tavalla.

Olen viettänyt viimeiset viisi vuotta uppoutumalla kiinnostavaan koneoppimisen ja syvän oppimisen maailmaan. Minun intohimoni ja asiantuntemukseni ovat johtaneet minun osallistumiseen yli 50:een monipuoliseen ohjelmistosuunnitteluhankkeeseen, joissa on erityisesti painottunut AI/ML. Minun jatkuva uteliaisuuteni on myös ohjannut minun luontaisen kielen prosessoinnin pariin, jota haluan tutkia tarkemmin.