Paskirstyta treniruočių architektūra ir technika

Paskirstytos mokymo architektūros ir technikos


































Mašinų mokymosi metu didelių kalbos modelių mokymas (LLMS) tapo įprasta praktika po to, kai iš pradžių buvo specializuotos pastangos.

Treniruotėms naudojamų duomenų rinkinių dydis auga kartu su vis stipresnių modelių poreikiu.

Naujausi apklausos rodo, kad bendras duomenų rinkinių, naudojamų išankstiniam LLM mokymui, dydis viršija 774,5 TB, o įvairiuose duomenų rinkiniuose yra daugiau nei 700 milijonų atvejų.

Nepaisant to, didelių duomenų rinkinių tvarkymas yra sunki operacija, reikalaujanti tinkamos infrastruktūros ir metodų, be teisingų duomenų.

Šiame tinklaraštyje mes ištirsime, kaip paskirstytos mokymo architektūros ir metodai gali padėti efektyviai valdyti šiuos didelius duomenų rinkinius.

Didelių duomenų rinkinių iššūkis

Prieš tyrinėdami sprendimus, svarbu suprasti, kodėl dideliems duomenų rinkiniams dirbti yra taip sudėtinga dirbti.

Mokant LLM paprastai reikia apdoroti šimtus milijardų ar net trilijonus žetonų. Šis didžiulis duomenų kiekis reikalauja didelės saugojimo, atminties ir apdorojimo galios.

Be to, norint valdyti šiuos duomenis reikia įsitikinti, kad jie yra efektyviai saugomi ir prieinami vienu metu keliuose kompiuteriuose.

Pagrindinės problemos yra didžiulis duomenų kiekis ir apdorojimo laikas. Kelias savaites ar mėnesius tokiems modeliams kaip GPT-3 ir aukštesnėms galimybėms veikti gali prireikti šimtų GPU ar TPU. Tokiu mastu gali atsirasti duomenų įkėlimo, apdorojimo ir modelio sinchronizacijos kliūtys, dėl kurių neveiksmingumas.

Taip pat skaitykite, naudodami AI duomenų valdymui pagerinti: užtikrinti, kad būtų laikomasi didelių duomenų amžiaus.

Paskirstytas mokymas: mastelio pagrindas

Paskirstytas mokymas yra technika, leidžianti mašininio mokymosi modeliams mastelio mastelio didėjant duomenų rinkinių dydžiui.

Paprastai tariant, tai apima mokymo darbo padalijimą keliose mašinose, kiekvienas tvarkantis dalį viso duomenų rinkinio.

Šis požiūris ne tik pagreitina mokymą, bet ir leidžia modeliams išmokyti per didelius duomenų rinkinius, kad tilptų į vieną mašiną.

Yra du pagrindiniai paskirstytų mokymų tipai:

Duomenų rinkinys naudojant šį metodą yra padalintas į mažesnes partijas, o kiekviena mašina apdoroja atskirą duomenų partiją. Kai kiekviena partija bus apdorota, modelio svoriai keičiami, o sinchronizacija vyksta reguliariai, kad įsitikintumėte, jog visi modeliai atitinka.

Pats modelis yra padalintas į kelias mašinas. Kiekviena mašina turi dalį modelio, o kai duomenys perduodami per modelį, tarp mašinų vyksta ryšys, kad būtų užtikrintas sklandus veikimas.

Dideliems kalbų modeliams abiejų metodų, žinomų kaip hibridinio paralelizmo, derinys dažnai naudojamas siekiant suderinti pusiausvyrą tarp efektyvaus duomenų tvarkymo ir modelio pasiskirstymo.

Pagrindinės paskirstytos mokymo architektūros

Nustatant paskirstytą didelių duomenų rinkinių mokymo sistemą, būtina pasirinkti tinkamą architektūrą. Buvo sukurtos kelios paskirstytos sistemos, skirtos efektyviai valdyti šią apkrovą, įskaitant:

Parametrų serverio architektūra

Šioje sąrankoje vienas ar keli serveriai laiko modelio parametrus, o darbuotojo mazgai tvarko mokymo duomenis.

Darbuotojai atnaujina parametrus, o parametrų serveriai sinchronizuoja ir platina atnaujintus svorius.

Nors šis metodas gali būti veiksmingas, reikia kruopštaus derinimo, kad būtų išvengta bendravimo kliūčių.

Visiškai mažina architektūrą

Tai dažniausiai naudojama duomenų paralelizme, kai kiekvienas darbuotojo mazgas savarankiškai apskaičiuoja savo nuolydžius.

Vėliau mazgai bendrauja tarpusavyje, kad sujungtų gradientus taip, kad visi mazgai dirba su tais pačiais modelio svoriais.

Ši architektūra gali būti efektyvesnė nei parametrų serverio modelis, ypač kai jis derinamas su aukštos kokybės sujungimais, tokiais kaip „Infiniband“.

Žiedas-all-Reduce

Tai yra „Viso-Reduce“ architektūros variantas, kuris organizuoja darbuotojų mazgus žiede, kur duomenys perduodami apskritai.

Kiekvienas mazgas bendrauja su dviem kitais, o duomenys cirkuliuoja, kad būtų užtikrinta, jog visi mazgai atnaujinami.

Ši sąranka sumažina gradiento sinchronizacijos laiką, reikalingą labai didelio masto sąrankoms.

Modelio paralelizmas su vamzdyno paralelizmu

Tais atvejais, kai vienas modelis yra per didelis, kad būtų galima valdyti vieną mašiną, yra būtinas modelio paralelizmas.

Derinant tai su vamzdyno paralelizmu, kai duomenys apdorojami dalimis įvairiuose modelio etapuose, pagerina efektyvumą.

Šis požiūris užtikrina, kad kiekvienas modelio etapas apdoroja jo duomenis, o kiti etapai tvarko skirtingus duomenis, žymiai padidindamas bendrą mokymo procesą.

5 Efektyvaus paskirstyto mokymo metodai

Norint užtikrinti sklandų mokymą, nepakanka vien tik paskirstytos architektūros. Yra keletas metodų, kuriuos galima naudoti siekiant optimizuoti našumą ir sumažinti neveiksmingumą:

1. Gradiento kaupimasis

Vienas iš pagrindinių paskirstytų treniruočių metodų yra gradientų kaupimas.

Užuot atnaujinę modelį po kiekvienos mažos partijos, prieš pradedant atnaujinti, kaupiami kelių mažesnių partijų gradientai.

Tai sumažina ryšių pridėtines išlaidas ir efektyviau naudoja tinklą, ypač sistemose, kuriose yra daug mazgų.

2. Mišrus tikslumo mokymas

Vis dažniau naudojami mišrūs tikslūs mokymai, norint pagreitinti treniruotes ir sumažinti atminties naudojimą.

Treniruotės gali būti baigtos greičiau nepakenkiant modelio tikslumui, naudojant mažesnio tikslo slankiojo kablelio numerius (tokius kaip FP16) skaičiavimams, o ne įprastiniam FP32.

Tai sumažina reikalingą atminties ir skaičiavimo laiką, kuris yra labai svarbus, kai keičiamasi keliose mašinose.

3. Duomenų sparta ir talpyklos kaupimas

Kitas esminis požiūris yra „Sharding“, kuris dalijasi duomenų rinkinį į mažesnes, lengviau valdomas dalis, kurios gali būti pakrautos tuo pačiu metu.

Sistema vengia perkrauti duomenų iš saugyklos, naudojant talpyklos kaupimą, o tai gali būti kliūtis tvarkant didelius duomenų rinkinius.

4. Asinchroniniai atnaujinimai

Tradiciniuose sinchroniniuose atnaujinimuose visi mazgai turi laukti, kol kiti užpildys prieš tęsdami.

Tačiau asinchroniniai atnaujinimai leidžia mazgams tęsti savo darbą nelaukdami, kol visi darbuotojai sinchronizuos, pagerina bendrą pralaidumą.

Tačiau dėl esminės pastabos kyla pavojus, kad modelio atnaujinimai nenuoseklūs, todėl reikalingas atsargus pusiausvyra.

5. Elastinis mastelio keitimas

Debesų infrastruktūra, kuri gali būti elastinga, tai yra, turimų išteklių kiekis gali padidėti aukštyn arba žemyn, jei reikia – dažnai naudojama paskirstytam mokymui.

Tai ypač naudinga keičiant talpą atsižvelgiant į duomenų rinkinio dydį ir sudėtingumą, garantuojant, kad ištekliai visada naudojami efektyviai.

Įveikiant paskirstyto mokymo iššūkius

Nors paskirstytos architektūros ir mokymo metodai sumažina sunkumus, susijusius su dideliais duomenų rinkiniais, jie vis dėlto pateikia daugybę savo iššūkių. Čia yra keletas sunkumų ir sprendimų jiems:

1. Tinklo kliūtys

Tinklo patikimumas ir greitis tampa labai svarbūs, kai duomenys išsklaidomi tarp kelių kompiuterių.
Šiuolaikinėse paskirstytose sistemose, tokiose kaip „NVLink“ ar „Infiniband“, yra dažnai naudojami aukšto lygio plotis, mažai latentinių jungčių, tokių kaip „NVLink“ ar „Infiniband“, dažnai naudojami norint užtikrinti greitą ryšį su mašina.

2. Tolerancija dėl gedimų

Naudojant dideles, paskirstytas sistemas, gedimai yra neišvengiami.

Gedimų tolerancijos metodai, tokie kaip modelio kontrolės taškas ir replikacija, užtikrina, kad mokymai gali atnaujinti iš paskutinės geros būsenos neprarandant pažangos.

3. Apkrovos balansavimas

Darbo paskirstymas tolygiai įvairiose mašinose gali būti sudėtingas.

Tinkamas apkrovos balansavimas užtikrina, kad kiekvienas mazgas gautų nemažą dalį darbo, neleidžiant kai kuriems mazgams būti perkrauti, o kiti yra nepakankamai išnaudojami.

4. Hiperparametro derinimas

Derinant hiperparametrus, tokius kaip mokymosi greitis ir partijos dydis, yra sudėtingesnė paskirstytoje aplinkoje.

Automatizuotos priemonės ir metodai, tokie kaip populiacijos mokymas (PBT) ir Bajeso optimizavimas, gali padėti supaprastinti šį procesą.

Išvada

Varžybose kurdami galingesnius modelius, mes matome protingesnių, efektyvesnių sistemų, galinčių sutvarkyti mastelio keitimo sudėtingumą, atsiradimą.

Nuo hibridinio paralelizmo iki elastingo mastelio keitimo šie metodai ne tik įveikia techninius apribojimus – jie keičia, kaip mes galvojame apie AI potencialą.

AI kraštovaizdis keičiasi, o tie, kurie gali įvaldyti didelių duomenų rinkinių tvarkymo meną, padės įkrauti į ateitį, kurioje nuolat iš naujo apibrėžtos galimybės ribos.



Source link

Draugai: - Marketingo agentūra - Teisinės konsultacijos - Skaidrių skenavimas - Fotofilmų kūrimas - Miesto naujienos - Šeimos gydytojai - Saulius Narbutas - Įvaizdžio kūrimas - Veidoskaita - Nuotekų valymo įrenginiai - Teniso treniruotės - Pranešimai spaudai -