ciot Fibra Uber este un nou cadru de formare pentru modelul AI distribuit - Unite.AI
Conectează-te cu noi

Inteligenta Artificiala

Fibra Uber este un nou cadru de formare pentru modele de IA distribuite

mm
Actualizat on

Potrivit VentureBeat, au postat recent cercetătorii AI de la Uber o hârtie către Arxiv conturând o nouă platformă menită să asiste la crearea de modele AI distribuite. Se numește platforma Fibrăși poate fi folosit pentru a conduce atât sarcinile de învățare prin consolidare, cât și învățarea bazată pe populație. Fibra este concepută pentru a face calculul paralel la scară largă mai accesibil pentru neexperți, permițându-le să profite de puterea algoritmilor și modelelor AI distribuite.

Fibra a fost recent făcută open-source pe GitHub și este compatibilă cu Python 3.6 sau o versiune ulterioară, Kubernetes rulând pe un sistem Linux și rulând într-un mediu cloud. Potrivit echipei de cercetători, platforma este capabilă să scaleze cu ușurință până la sute sau mii de mașini individuale.

Echipa de cercetători de la Uber explică că multe dintre cele mai recente și relevante progrese ale inteligenței artificiale au fost conduse de modele mai mari și mai mulți algoritmi care sunt antrenați folosind tehnici de antrenament distribuite. Cu toate acestea, crearea de modele bazate pe populație și de modele de întărire rămâne o sarcină dificilă pentru schemele de formare distribuită, deoarece acestea au frecvent probleme de eficiență și flexibilitate. Fibra face sistemul distribuit mai fiabil și mai flexibil, combinând software-ul de gestionare a clusterelor cu scalarea dinamică și permițând utilizatorilor să-și mute fără probleme locurile de muncă de la o singură mașină la un număr mare de mașini.

Fibra este alcătuită din trei componente diferite: un API, un backend și un strat de cluster. Stratul API le permite utilizatorilor să creeze lucruri precum cozi, manageri și procese. Stratul de backend al Fiber permite utilizatorului să creeze și să încheie joburi care sunt gestionate de diferite clustere, iar stratul cluster gestionează ele înșiși clusterele individuale împreună cu resursele acestora, care reprezintă în mare măsură numărul de elemente pe care Fiber trebuie să țină evidența.

Fibra permite ca joburile să fie puse în coadă și să ruleze de la distanță pe o singură mașină locală sau pe mai multe mașini diferite, utilizând conceptul de procese susținute de joburi. Fibre folosește, de asemenea, containere pentru a se asigura că lucruri precum datele de intrare și pachetele dependente sunt autonome. Cadrul Fiber include chiar și gestionarea încorporată a erorilor, astfel încât, dacă un lucrător se prăbușește, acesta poate fi reînviat rapid. FIber este capabil să facă toate acestea în timp ce interacționează cu managerii de cluster, permițând aplicațiilor Fiber să ruleze ca și cum ar fi aplicații normale care rulează pe un anumit cluster de computere.

Rezultatele experimentale au arătat că, în medie, timpul de răspuns al Fiber a fost de câteva milisecunde și că, de asemenea, sa extins mai bine decât tehnicile de IA de bază atunci când a fost construită cu 2,048 de nuclee de procesor/lucrători. Perioada de timp necesară pentru a finaliza lucrările a scăzut treptat pe măsură ce numărul stabilit de muncitori a crescut. IPyParallel a finalizat 50 de iterații de instruire în aproximativ 1400 de secunde, în timp ce Fiber a reușit să finalizeze aceleași 50 de iterații de instruire în aproximativ 50 de secunde, cu 512 lucrători disponibili.

Co-autorii lucrării Fibre explica că Fibre este capabilă să atingă mai multe obiective, cum ar fi algoritmi de scalare dinamică și utilizarea unor volume mari de putere de calcul:

„[Munca noastră arată] că Fiber atinge multe obiective, inclusiv valorificarea eficientă a unei cantități mari de hardware de calcul eterogene, scalarea dinamică a algoritmilor pentru a îmbunătăți eficiența utilizării resurselor, reducerea sarcinii de inginerie necesară pentru ca [învățarea prin consolidare] și algoritmii bazați pe populație să funcționeze clustere de computere și adaptarea rapidă la diferite medii de calcul pentru a îmbunătăți eficiența cercetării. Ne așteptăm că va permite progresul în rezolvarea problemelor dificile [învățare prin întărire] cu algoritmi [învățare prin consolidare] și metode bazate pe populație, facilitând dezvoltarea acestor metode și antrenarea lor la scara necesară pentru a le vedea cu adevărat strălucitoare.”