Mai departeUrmătorul ghid
Paralelism tensor pentru modele mari
Tehnic
GHID tehnic
Când un model este prea mare pentru a se potrivi pe un singur GPU, paralelismul modelului și conductei împarte modelul în sine pe dispozitive.
Ascultă acest ghidNarativ AI · ~2 min
This is what makes training giant language models with hundreds of billions of parameters physically possible.
Paralelismul modelului împarte un singur model pe mai multe GPU-uri, astfel încât niciun dispozitiv nu trebuie să țină toate greutățile. Există două arome principale. Paralelismul tensorului (intra-strat) împarte matematica în interiorul unui strat, cum ar fi tăierea unei multiplicari mari de matrice pe GPU-uri pe care fiecare calculează o parte a ieșirii. Paralelismul pipeline (inter-strat) atribuie diferite straturi consecutive diferitelor GPU-uri, astfel încât blocul de strat 1 trăiește pe GPU 0, blocul 2 pe GPU 1 și așa mai departe, cu activări transmise înainte ca o linie de asamblare. Provocarea cu pipeliningul naiv este „bula”: în timp ce GPU 0 funcționează la primul lot, GPU-urile din aval stau inactiv. Pipelining împarte fiecare lot în micro-loturi, astfel încât toate etapele să rămână ocupate, îmbunătățind dramatic utilizarea.
Antrenamentul modelelor în stil GPT cu NVIDIA Megatron-LM, care împarte atenția fiecărui strat de transformator și matricele de feed-forward pe GPU-uri prin paralelism tensor.
Folosirea GPipe pentru a plasa diferite straturi ale unui model gigant de viziune sau limbaj pe acceleratoare separate, în timp ce micro-loturi le ține ocupate.
Motorul pipeline al DeepSpeed care împarte un model cu mai multe sute de miliarde de parametri în etape pe mai multe noduri.
Combinând paralelismul tensorului în interiorul unui singur server cu 8 GPU cu paralelismul pipeline care se întinde pe mai multe servere pentru a antrena un model mult prea mare pentru o singură mașină.
Framework-urile automatizează din ce în ce mai mult problema dificilă de a decide cum să partiționați un model între dispozitive, folosind profilarea și căutarea pentru a echilibra calculul și comunicarea. Așteptați-vă la o integrare mai strânsă a tensorului, a conductei și a paralelismului de date (paralelism 3D), la o programare mai inteligentă a micro-loturi pentru a elimina aproape bulele de conducte și la hardware cu interconexiuni mai rapide, astfel încât împărțirea unui singur strat între cipuri devine mai ieftină și mai rutină pentru modelele din ce în ce mai mari.
Buletin gratuit
Trei povești AI verificate în fiecare dimineață de zi lucrătoare, scrise în engleză simplă. Gratuit pentru totdeauna, fără reclame.
Un e-mail în fiecare zi lucrătoare. Dezabonare cu un singur clic. Nu vindem niciodată și nu împărtășim adresa ta.
Testează-te
Feedback instantaneu la fiecare răspuns și un certificat partajabil cu un ID verificabil după ce parcurgi un curs.
Susține educația AI gratuită. AI Understanding este o organizație nonprofit 501(c)(3) — fără reclame, fără barieră de plată, pentru totdeauna. Fă o donație
Când un model este prea mare pentru a se potrivi pe un singur GPU, paralelismul modelului și conductei împarte modelul în sine pe dispozitive. Aceasta este ceea ce face posibilă din punct de vedere fizic antrenarea modelelor de limbaj gigantice cu sute de miliarde de parametri.
Paralelismul modelului și conductei împart modelul în sine între dispozitive, permițând antrenarea rețelelor mult mai mari decât ar putea suporta orice GPU.
Paralelismul tensorului împarte calculul într-un singur strat, de exemplu împărțind o matrice mare de greutate, astfel încât fiecare GPU să calculeze o parte din ieșire.
La începutul unei etape de conductă, etapele din aval nu au încă nicio intrare și stau inactiv, pierzând timp GPU; acest decalaj inactiv se numește bula.
Împărțirea unui lot în micro-loturi permite mai multor micro-loturi să ocupe diferite etape simultan, menținând toate GPU-urile ocupate și micșorând timpul de inactivitate.
Paralelismul tensorului comunică frecvent pentru a recombina rezultatele matricei parțiale, astfel încât este plasat acolo unde lățimea de bandă de interconectare este cea mai mare, în interiorul unui nod peste NVLink.
Continuați să învățați
Mai multe ghiduri alese pentru acest subiect
Mai departeUrmătorul ghid
Paralelism tensor pentru modele mari
Tehnic