Damage assessment using Amazon SageMaker geospatial capabilities and custom SageMaker models PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Evaluarea daunelor folosind capabilitățile geospațiale Amazon SageMaker și modelele personalizate SageMaker

În această postare, arătăm cum să antrenăm, să implementăm și să anticipăm daunele provocate de dezastre naturale Amazon SageMaker cu capabilități geospațiale. Folosim noile capabilități geospațiale SageMaker pentru a genera noi date de inferență pentru a testa modelul. Multe organizații guvernamentale și umanitare au nevoie de o conștientizare rapidă și precisă a situației atunci când se produce un dezastru. Cunoașterea severității, cauzei și locației daunelor poate ajuta la strategia de răspuns și la luarea deciziilor primului răspuns. Lipsa informațiilor exacte și în timp util poate contribui la un efort de ajutor incomplet sau direcționat greșit.

Pe măsură ce frecvența și gravitatea dezastrelor naturale cresc, este important să echipăm factorii de decizie și primii interventori cu o evaluare rapidă și precisă a daunelor. În acest exemplu, folosim imagini geospațiale pentru a prezice daunele provocate de dezastre naturale. Datele geospațiale pot fi utilizate imediat după un dezastru natural pentru a identifica rapid daunele aduse clădirilor, drumurilor sau altei infrastructuri critice. În această postare, vă arătăm cum să antrenați și să implementați un model de segmentare geospațială care să fie utilizat pentru clasificarea daunelor provocate de dezastre. Împărțim aplicația în trei subiecte: antrenamentul modelului, implementarea modelului și inferența.

Antrenamentul modelului

În acest caz de utilizare, am construit un model personalizat PyTorch folosind Amazon SageMaker pentru segmentarea imaginii deteriorării clădirii. Capacitățile geospațiale din SageMaker includ modele instruite pe care le puteți utiliza. Aceste modele încorporate includ segmentarea și îndepărtarea norilor și segmentarea acoperirii terenului. Pentru această postare, pregătim un model personalizat pentru segmentarea daunelor. Am antrenat mai întâi modelul SegFormer pe datele din competiția xView2. SegFormer este o arhitectură bazată pe transformatoare care a fost introdusă în lucrarea din 2021 SegFormer: Design simplu și eficient pentru segmentarea semantică cu transformatoare. Se bazează pe arhitecturile transformatoare care sunt destul de populare cu sarcinile de lucru de procesare a limbajului natural; cu toate acestea, arhitectura SegFormer este construită pentru segmentarea semantică. Combină atât codificatorul bazat pe transformator, cât și un decodor ușor. Acest lucru permite o performanță mai bună decât metodele anterioare, oferind în același timp dimensiuni semnificativ mai mici ale modelului decât metodele anterioare. Atât modelele SegFormer pre-antrenate, cât și cele neantrenate sunt disponibile din populara bibliotecă de transformatoare Hugging Face. Pentru acest caz de utilizare, descarcăm o arhitectură SegFormer pre-antrenată și o antrenăm pe un nou set de date.

Setul de date folosit în acest exemplu provine din Competiția de știință a datelor xView2. Această competiție a lansat set de date xBD, unul dintre cele mai mari și de cea mai înaltă calitate seturi de date disponibile public de imagini prin satelit de înaltă rezoluție, adnotate cu locația clădirii și scorurile (clasele) de daune înainte și după dezastre naturale. Setul de date conține date din 15 țări, inclusiv 6 tipuri de dezastre (cutremur/tsunami, inundații, erupții vulcanice, incendii, vânt) cu date geospațiale care conțin 850,736 de adnotări de clădire pe 45,362 km^2 de imagini. Următoarea imagine prezintă un exemplu al setului de date. Această imagine arată imaginea post-dezastru cu masca de segmentare a daunelor clădirii suprapusă. Fiecare imagine include următoarele: imagine prin satelit înainte de dezastru, mască de segmentare a clădirii înainte de dezastru, imagine prin satelit după dezastru și mască de segmentare a clădirii după dezastru cu clase de daune.

În acest exemplu, folosim doar imaginile pre- și post-dezastru pentru a prezice clasificarea daunelor post-dezastru (mască de segmentare). Nu folosim măștile de segmentare a clădirii înainte de dezastru. Această abordare a fost selectată pentru simplitate. Există și alte opțiuni pentru abordarea acestui set de date. O serie de abordări câștigătoare pentru competiția xView2 au folosit o soluție în doi pași: mai întâi, preziceți masca de segmentare a conturului clădirii înainte de dezastru. Contururile clădirii și imaginile post-deteriorare sunt apoi utilizate ca intrare pentru prezicerea clasificării daunelor. Lăsăm acest lucru în seama cititorului să exploreze alte abordări de modelare pentru a îmbunătăți performanța de clasificare și de detectare.

Arhitectura SegFormer pre-antrenată este construită pentru a accepta o singură imagine de canal cu trei culori ca intrare și emite o mască de segmentare. Există o serie de moduri în care am fi putut modifica modelul pentru a accepta atât imaginile pre-și post-satelit ca intrare, cu toate acestea, am folosit o tehnică simplă de stivuire pentru a stivui ambele imagini împreună într-o imagine cu șase culori. Am antrenat modelul folosind tehnici standard de augmentare pe setul de date de antrenament xView2 pentru a prezice masca de segmentare post-dezastru. Rețineți că am redimensionat toate imaginile de intrare de la 1024 la 512 pixeli. Aceasta a fost pentru a reduce și mai mult rezoluția spațială a datelor de antrenament. Modelul a fost antrenat cu SageMaker folosind o singură instanță bazată pe GPU p3.2xlarge. Un exemplu de rezultat al modelului antrenat este prezentat în figurile următoare. Primul set de imagini sunt imaginile pre și post-deteriorare din setul de validare.
imagini pre și post-deteriorare din setul de validare

Următoarele figuri arată masca de daune estimate și masca de daune de adevăr la sol.
Următoarele figuri arată masca de daune estimate și masca de daune de adevăr la sol.

La prima vedere, se pare că modelul nu funcționează bine în comparație cu datele adevărului de la sol. Multe dintre clădiri sunt clasificate incorect, confundând daune minore cu nicio daune și arătând mai multe clasificări pentru o singură schiță a clădirii. Cu toate acestea, o constatare interesantă când se analizează performanța modelului este că acesta pare să fi învățat să localizeze clasificarea daunelor clădirii. Fiecare clădire poate fi clasificată în No Damage, Minor Damage, Major Damage, Sau Destroyed. Masca de deteriorare prezisă arată că modelul a clasificat clădirea mare din mijloc în cea mai mare parte No Damage, dar colțul din dreapta sus este clasificat ca Destroyed. Această localizare a daunelor subcladirii poate ajuta și mai mult pe cei care răspund, arătând daunele localizate pe clădire.

Implementarea modelului

Modelul antrenat a fost apoi implementat la un punct final de inferență asincron SageMaker. Rețineți că am ales un punct final asincron pentru a permite timpi de inferență mai lungi, dimensiuni mai mari de intrare a sarcinii utile și capacitatea de a reduce punctul final la zero instanțe (fără taxe) atunci când nu este utilizat. Următoarea figură arată codul de nivel înalt pentru implementarea punctelor finale asincrone. Mai întâi comprimăm dicționarul de stare PyTorch salvat și încărcăm artefactele modelului comprimat în Serviciul Amazon de stocare simplă (Amazon S3). Creăm un model SageMaker PyTorch care indică codul nostru de inferență și artefactele modelului. Codul de inferență este necesar pentru a încărca și a servi modelul nostru. Pentru mai multe detalii despre codul de inferență personalizat necesar pentru un model SageMaker PyTorch, consultați Utilizați PyTorch cu SageMaker Python SDK.
cod de nivel înalt pentru implementarea punctelor finale asincrone

Figura următoare arată codul pentru politica de scalare automată pentru punctul final de inferență asincron.
Figura următoare arată codul pentru politica de scalare automată pentru punctul final de inferență asincron.

Rețineți că există și alte opțiuni de punct final, cum ar fi în timp real, lot și fără server, care ar putea fi utilizate pentru aplicația dvs. Veți dori să alegeți opțiunea care este cea mai potrivită pentru cazul de utilizare și să vă amintiți asta Recomandator de inferențe Amazon SageMaker este disponibil pentru a ajuta la recomandarea configurațiilor punctelor finale de învățare automată (ML).

Inferența modelului

Cu modelul antrenat implementat, acum putem folosi Capacitățile geospațiale SageMaker pentru a culege date pentru deducere. Cu capabilitățile geospațiale SageMaker, mai multe modele încorporate sunt disponibile imediat. În acest exemplu, folosim operația de stivuire a benzilor pentru a stivui canalele de culoare roșu, verde și albastru pentru munca noastră de observare a Pământului. Lucrarea adună datele din setul de date Sentinel-2. Pentru a configura o lucrare de observare a pământului, avem nevoie mai întâi de coordonatele locației de interes. În al doilea rând, avem nevoie de intervalul de timp al observației. Cu aceasta, acum putem trimite o lucrare de observare a pământului folosind funcția de stivuire. Aici stivuim benzile roșii, verzi și albastre pentru a produce o imagine color. Următoarea figură arată configurația jobului utilizată pentru a genera date de la inundațiile din Rochester, Australia, la mijlocul lunii octombrie 2022. Utilizăm imagini de înainte și după dezastru ca intrare la modelul nostru ML instruit.

După ce configurația jobului este definită, putem trimite jobul. Când lucrarea este finalizată, exportăm rezultatele pe Amazon S3. Rețineți că putem exporta rezultatele numai după finalizarea lucrării. Rezultatele jobului pot fi exportate într-o locație Amazon S3 specificată de utilizator în configurația jobului de export. Acum, cu noile noastre date din Amazon S3, putem obține previziuni de daune folosind modelul implementat. Mai întâi citim datele în memorie și stivuim imaginile pre și post-dezastru împreună.
Mai întâi citim datele în memorie și stivuim imaginile pre și post-dezastru împreună.

Rezultatele măștii de segmentare pentru inundațiile de la Rochester sunt prezentate în imaginile următoare. Aici putem vedea că modelul a identificat locații din regiunea inundată ca fiind probabil deteriorate. Rețineți, de asemenea, că rezoluția spațială a imaginii de inferență este diferită de datele de antrenament. Creșterea rezoluției spațiale ar putea ajuta la performanța modelului; cu toate acestea, aceasta este o problemă mai mică pentru modelul SegFormer, ca și pentru alte modele, datorită arhitecturii modelului multiscale.

pre-post inundaţie

rezultate ale măștii de segmentare pentru inundațiile de la Rochester

Evaluarea daunelor

Concluzie

În această postare, am arătat cum să antrenăm, să implementăm și să anticipăm daunele provocate de dezastre naturale SageMaker cu capabilități geospațiale. Am folosit noile capabilități geospațiale SageMaker pentru a genera noi date de inferență pentru a testa modelul. Codul pentru această postare este în curs de a fi lansat, iar această postare va fi actualizată cu link-uri către codul complet de instruire, implementare și deducere. Această aplicație permite primului răspuns, guvernelor și organizațiilor umanitare să își optimizeze răspunsul, oferind conștientizare situațională critică imediat după un dezastru natural. Această aplicație este doar un exemplu de ceea ce este posibil cu instrumentele moderne de ML, cum ar fi SageMaker.

Încercați astăzi capabilitățile geospațiale SageMaker folosind propriile modele; așteptăm cu nerăbdare să vedem ce construiești în continuare.


Despre autor

Damage assessment using Amazon SageMaker geospatial capabilities and custom SageMaker models PlatoBlockchain Data Intelligence. Vertical Search. Ai.Aaron Sengstacken este un arhitect specializat în soluții de învățare automată la Amazon Web Services. Aaron lucrează îndeaproape cu clienții din sectorul public de toate dimensiunile pentru a dezvolta și implementa aplicații de învățare automată de producție. El este interesat de toate lucrurile de învățare automată, tehnologie și explorarea spațiului.

Timestamp-ul:

Mai mult de la Învățare automată AWS