Modele i platformy AI

Środowisko Fiber Ubers to nowy rozproszony framework do szkolenia modeli AI

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Według VentureBeat, badacze AI z Ubera opublikowali artykuł na Arxiv, w którym opisali nową platformę mającą na celu ułatwienie tworzenia modeli AI rozproszonych. Platforma nosi nazwę Fiber i może być wykorzystywana do realizacji zadań związanych z uczeniem wzmocnionym i uczeniem opartym na populacji. Fiber został zaprojektowany w celu ułatwienia dostępu do dużych, równoległych obliczeń dla osób niebędących ekspertami, umożliwiając im korzystanie z mocy algorytmów i modeli AI rozproszonych.

Fiber został niedawno udostępniony jako oprogramowanie open-source na GitHubie i jest kompatybilny z Pythonem 3.6 lub nowszym, z Kubernetes uruchomionym na systemie Linux i działającym w środowisku chmury. Zgodnie z zespołem badaczy, platforma może łatwo skalować się do setek lub tysięcy pojedynczych maszyn.

Zespół badaczy z Ubera wyjaśnia, że wiele z najnowszych i najbardziej istotnych postępów w dziedzinie sztucznej inteligencji zostało osiągniętych dzięki większym modelom i algorytmom szkoleniowym wykorzystującym techniki szkolenia rozproszonego. Tworzenie modeli opartych na populacji i modeli wzmocnionych pozostaje jednak trudnym zadaniem dla schematów szkolenia rozproszonego, ponieważ często występują problemy z wydajnością i elastycznością. Fiber sprawia, że system rozproszony staje się bardziej niezawodny i elastyczny, łącząc oprogramowanie do zarządzania klastrami z dynamicznym skalowaniem i umożliwiając użytkownikom przenoszenie zadań z jednej maszyny na wiele maszyn w sposób niezauważalny.

Fiber składa się z trzech różnych komponentów: warstwy API, warstwy backendu i warstwy klastra. Warstwa API umożliwia użytkownikom tworzenie kolejek, menedżerów i procesów. Warstwa backendu Fiber pozwala użytkownikom tworzyć i kończyć zadania zarządzane przez różne klastry, a warstwa klastra zarządza poszczególnymi klastrami oraz ich zasobami, co znacznie zwiększa liczbę elementów, których Fiber musi monitorować.

Fiber umożliwia wykonywanie zadań w kolejce i uruchamianie ich zdalnie na jednej maszynie lokalnej lub wielu różnych maszynach, wykorzystując koncepcję procesów obsługiwanych przez zadania. Fiber wykorzystuje również kontenery, aby zapewnić, że dane wejściowe i zależne pakiety są samodzielne. Ramy Fiber zawierają również wbudowane mechanizmy obsługi błędów, dzięki którym jeśli worker ulegnie awarii, może być szybko wznowiony. Fiber może wykonywać wszystkie te czynności, jednocześnie współpracując z menedżerami klastrów, co pozwala aplikacjom Fiber działać jak normalne aplikacje uruchamiane na danym klastrze komputerowym.

Wyniki eksperymentów wykazały, że średni czas odpowiedzi Fiber wyniósł kilka milisekund, a także lepiej skalował się w porównaniu z technicznymi AI, gdy zbudowany był z 2048 rdzeni procesora/workerów. Czas wymagany do ukończenia zadań stopniowo zmniejszał się wraz ze wzrostem liczby workerów. IPyParallel ukończył 50 iteracji szkolenia w ciągu około 1400 sekund, podczas gdy Fiber był w stanie ukończyć te same 50 iteracji szkolenia w ciągu około 50 sekund z 512 dostępnymi workerami.

Współautorzy artykułu o Fiber wyjaśniają, że Fiber jest w stanie osiągnąć wiele celów, takich jak dynamiczne skalowanie algorytmów i wykorzystanie dużych ilości mocy obliczeniowej:

„[Nasza praca pokazuje], że Fiber osiąga wiele celów, w tym wykorzystanie efektywne dużej ilości heterogenicznego sprzętu komputerowego, dynamiczne skalowanie algorytmów w celu poprawy wydajności wykorzystania zasobów, zmniejszenie obciążenia inżynierskiego wymaganego do sprawienia, by algorytmy [uczenia wzmocnionego] i oparte na populacji działały na klastrach komputerowych, oraz szybkie adaptowanie się do różnych środowisk obliczeniowych w celu poprawy wydajności badań. Oczekujemy, że jeszcze bardziej umożliwi postęp w rozwiązywaniu trudnych problemów [uczenia wzmocnionego] z algorytmami [uczenia wzmocnionego] i metodami opartymi na populacji, ułatwiając rozwój tych metod i szkolenie ich w skalach niezbędnych do ich prawidłowego działania”.

Blogger i programista ze specjalnościami w Machine Learning i Deep Learning tematy. Daniel liczy, że pomoże innym wykorzystać moc sztucznej inteligencji dla dobra społecznego.