Alati i primena

Platforma OlmoEarth za obradu geoprostornih podataka na planetarnom nivou

Foto: Unsplash

Allen Institute for AI (Ai2) predstavio je OlmoEarth Platform, infrastrukturu namenjenu radu sa geoprostornim modelima na velikom obimu. Platforma je razvijena da olakša prelazak od finog podešavanja modela i evaluacije do masovne inferencije, odnosno primene modela na velikim količinama satelitskih i drugih geografskih podataka.

U praksi, to znači da sistem može da obradi kontinentalna područja za oko jedan dan, uz obradu desetina terabajta podataka i procenjenu cenu od delića centa po kvadratnom kilometru. Ai2 navodi da se platforma već koristi za izradu mapa rizika od požara, kao i za zadatke poput praćenja deforestacije i bezbednosti hrane.

Zašto je ovo važno

Geoprostorni modeli ne rade sa malim i jednostavnim ulazima, kao što je slučaj kod većine AI alata. Oni obrađuju satelitske snimke iz više izvora, sa različitim projekcijama, rezolucijama i spektralnim kanalima. Podaci često moraju da se usklade po lokaciji i vremenu, a oblaci ili nedostajući snimci dodatno komplikuju obradu.

Ai2 naglašava da je najveći deo posla u ovakvim sistemima često vezan za pronalaženje, preuzimanje i pripremu podataka, a ne samo za sam model. Zbog toga je platforma napravljena tako da razdvoji različite faze rada i da svaku od njih pokrene na odgovarajućem tipu hardvera.

Kako je sistem organizovan

OlmoEarth Platform deli posao na tri dela:

  • Prikupljanje i priprema podataka na CPU serverima, uz visok ulazno-izlazni protok.
  • Inferencija na GPU-ovima, gde model obrađuje podatke.
  • Postprocesiranje na CPU serverima, gde se rezultati spajaju i izvoze u formate kao što su Zarr, GeoTIFF ili GeoJSON.

Takva podela omogućava da GPU-ovi ne budu zauzeti poslovima koji više odgovaraju procesorima, kao što su preuzimanje i ponovno mapiranje podataka. Platforma koristi i višestruke procesne tokove kako bi kontinuirano punila GPU-ove podacima i slala rezultate direktno u skladište objekata.

Rad na velikom broju mašina

Za izvođenje velikih poslova, OlmoEarth Run deli geografsko područje na manje partije koje odgovaraju pojedinačnim računarima, a zatim ih dalje deli na još sitnije prozore koje modeli obrađuju u odvojenim prolazima. Zbog toga rad na jednom delu mape ne zavisi od drugog dela.

Ai2 navodi primer mapiranja rizika od požara za celu Severnu Ameriku. Tokom najvećeg opterećenja, posao je koristio oko 19.600 CPU jedinica i 994 GPU-a paralelno, uz protok mreže veći od 168 GB/s. Prema navodima kompanije, to je smanjilo procenjenih 4.737 sati serijskog računanja na oko 30,5 sati stvarnog vremena izvođenja.

Istovremeno, tim naglašava da ovakav nivo paralelizacije nije neograničen. Na broj radnika utiču kvote u oblaku, veličina modela, rezolucija izlaza i odluka da li će sirovi podaci biti keširani radi bržeg ponovnog rada nad istim područjem.

Kako platforma pronalazi satelitske snimke

Jedan od ključnih delova sistema je izbor pravih snimaka za zadatu lokaciju i vremenski opseg. Platforma koristi javne STAC kataloge, odnosno standardizovane kataloge za satelitske i geografske podatke, kad god je to moguće. Međutim, veliki poslovi mogu da generišu hiljade upita odjednom, što je previše za spoljne servise kao što su ESA-ini ili Microsoft Planetary Computer STAC API-ji.

Zato OlmoEarth održava sopstveni indeks metapodataka, koji se ažurira kako novi snimci postaju dostupni. Za AWS Open Data izvore platforma prima obaveštenja o novim scenama, a kod dobavljača bez takvog toka koristi periodično proveravanje. Time se izbegava nagli talas zahteva prema spoljnim servisima.

U indeksu se čuvaju i informacije o tome gde se konkretni pikseli nalaze. Kada sistem radi, bira najbolji izvor i preuzima samo potrebne delove datoteka, umesto da skida čitave scene. Ai2 navodi da je to moguće zahvaljujući cloud-optimized formatima kao što su COG i Zarr, koji podržavaju delimično čitanje podataka.

Kako rešavaju greške u radu

Platforma je dizajnirana tako da se sama oporavlja od tipičnih problema u distribuiranom računarstvu. Za svaki zadatak u okviru određenog dela posla sistem dinamički podiže virtuelnu mašinu sa Docker kontejnerom, izvršava posao i zatim je gasi. Pošto su zadaci projektovani tako da mogu bezbedno da se ponove, privremeni kvarovi se rešavaju ponovnim pokretanjem.

Ai2 navodi da su na ovom nivou uobičajeni različiti problemi: spor odgovor dobavljača podataka, nedostajući kanali u snimku, previše oblaka ili pad samog procesa. Sistem zato koristi praćenje zadataka, automatske pokušaje ponovo, izbor alternativnih izvora kad postoje i nadzor koji otkriva kada je proces zastao.

Šta sledi

U planu su dodatne mogućnosti koje bi platformu učinile korisnijom za organizacije koje prate promene na terenu. Među njima su zakazivanje modela unapred ili pokretanje inferencije čim stigne novi snimak, kao i automatska obaveštenja o promenama, na primer kod deforestacije ili poplava.

Ai2 takođe najavljuje rad na agentnim alatima, bržim modelima, većem broju modaliteta podataka i embeding modelu, odnosno modelu koji pretvara podatke u vektorske reprezentacije pogodnije za brže pretrage i analize. Platforma je trenutno pokrenuta na Google Cloudu, ali je arhitektura osmišljena tako da može da radi i na drugim cloud okruženjima ili u infrastrukturi partnera.

Poruka ovog projekta je prilično jasna: za primenu geopolitičkih i ekoloških AI modela nije dovoljno imati dobar model. Potrebna je i infrastruktura koja može da pronađe podatke, obradi ih u razumnom roku i preživi greške koje su neizbežne kada se radi na planetarnom obimu.