AI-modellen en platforms

Uber’s Fiber Is Een Nieuw Gedistribueerd AI-Model Trainingsframework

mm
Voeg Unite.AI toe aan je voorkeursbronnen op Google

Volgens VentureBeat hebben AI-onderzoekers bij Uber onlangs een paper op Arxiv gepubliceerd waarin een nieuw platform wordt beschreven dat bedoeld is om te helpen bij het creëren van gedistribueerde AI-modellen. Het platform heet Fiber en kan worden gebruikt om zowel versterkingsleer-taken als populatie-gebaseerde leer te stimuleren. Fiber is ontworpen om grote-schaal parallele berekeningen toegankelijker te maken voor niet-experts, zodat ze kunnen profiteren van de kracht van gedistribueerde AI-algoritmen en -modellen.

Fiber is onlangs open-source gemaakt op GitHub en is compatibel met Python 3.6 of hoger, met Kubernetes die draait op een Linux-systeem en in een cloud-omgeving. Volgens het team van onderzoekers is het platform in staat om gemakkelijk op te schalen tot honderden of duizenden individuele machines.

Het team van onderzoekers van Uber legt uit dat veel van de meest recente en relevante vooruitgang in kunstmatige intelligentie is gestimuleerd door grotere modellen en meer algoritmen die worden getraind met behulp van gedistribueerde trainingsmethoden. Het creëren van populatie-gebaseerde modellen en versterkingsmodellen blijft echter een moeilijke taak voor gedistribueerde trainschema’s, omdat ze vaak problemen hebben met efficiëntie en flexibiliteit. Fiber maakt het gedistribueerde systeem betrouwbaarder en flexibeler door clusterbeheersoftware te combineren met dynamische schaling en gebruikers in staat te stellen hun taken van de ene machine naar een groot aantal machines over te zetten.

Fiber bestaat uit drie verschillende componenten: een API, een backend en een clustergedeelte. De API-laag stelt gebruikers in staat om dingen zoals wachtrijen, managers en processen te maken. De backend-laag van Fiber stelt de gebruiker in staat om taken te maken en te beëindigen die worden beheerd door verschillende clusters, en het clustergedeelte beheert de individuele clusters zelf, evenals hun bronnen, wat het aantal items dat Fiber moet bijhouden aanzienlijk vermindert.

Fiber maakt het mogelijk om taken in een wachtrij te zetten en op afstand uit te voeren op één lokale machine of op meerdere machines, door gebruik te maken van het concept van job-gebackte processen. Fiber maakt ook gebruik van containers om ervoor te zorgen dat dingen zoals invoergegevens en afhankelijke pakketten zelfstandig zijn. Het Fiber-framework bevat zelfs ingebouwde foutafhandeling, zodat als een werker crasht, deze snel kan worden hersteld. Fiber kan al dit doen terwijl het communiceert met clustermanagers, waardoor Fiber-apps kunnen worden uitgevoerd alsof ze normale apps zijn die op een bepaalde computercluster draaien.

Experimentele resultaten toonden aan dat de responstijd van Fiber gemiddeld een paar milliseconden was en dat het ook beter schaalde dan baseline AI-technieken toen het werd gebouwd met 2.048 processorcores/werkers. De tijd die nodig was om taken te voltooien, nam geleidelijk af naarmate het aantal werkers toenam. IPyParallel voltooide 50 iteraties van de training in ongeveer 1400 seconden, terwijl Fiber in staat was om dezelfde 50 iteraties van de training te voltooien in ongeveer 50 seconden met 512 werkers beschikbaar.

De co-auteurs van het Fiber-paper leggen uit dat Fiber in staat is om meerdere doelen te bereiken, zoals het dynamisch schalen van algoritmen en het gebruik van grote hoeveelheden rekenkracht:

“[Ons werk toont aan] dat Fiber veel doelen bereikt, zoals het efficiënt benutten van een grote hoeveelheid heterogene rekenhardware, het dynamisch schalen van algoritmen om de efficiëntie van het bronnengebruik te verbeteren, het verminderen van de technische last die nodig is om [versterkingsleer] en populatie-gebaseerde algoritmen te laten werken op computerclusters, en het snel aanpassen aan verschillende rekenomgevingen om de onderzoeks-efficiëntie te verbeteren. We verwachten dat het verder zal bijdragen aan de vooruitgang in het oplossen van moeilijke [versterkingsleer] problemen met [versterkingsleer] algoritmen en populatie-gebaseerde methoden door het makkelijker te maken om deze methoden te ontwikkelen en ze op de schaal te trainen die nodig is om ze echt te laten schitteren.”

Blogger en programmeur met specialisaties in Machine Learning en Deep Learning onderwerpen. Daniel hoopt anderen te helpen de kracht van AI te gebruiken voor het sociale goede.