Inteligență artificială
Sapiens: Fundație pentru Modele de Viziune Umană
Succesul remarcabil al preantrenării la scară largă, urmată de ajustarea specifică sarcinii pentru modelarea limbajului, a stabilit această abordare ca o practică standard. Similar, metodele de viziune computerizată adoptă progresiv scara largă de date pentru preantrenare. Apariția unor seturi de date mari, cum ar fi LAION5B, Instagram-3.5B, JFT-300M, LVD142M, Visual Genome și YFCC100M, a permis explorarea unui corp de date mult dincolo de scopul benchmark-urilor tradiționale. Lucrările remarcabile în acest domeniu includ DINOv2, MAWS și AIM. DINOv2 atinge performanța de top prin generarea de caracteristici auto-supervizate prin escaladarea metodei contrastive iBot pe setul de date LDV-142M. MAWS studiază escaladarea mascat-autoencoderelor (MAE) pe miliarde de imagini. AIM explorează scalabilitatea preantrenării vizuale autoregresive, similar cu BERT pentru transformatoare de viziune. În contrast cu aceste metode, care se concentrează în principal pe preantrenarea generală a imaginilor sau clasificarea imaginilor fără etichetă, Sapiens adoptă o abordare distinct uman-centrică: modelele Sapiens folosesc o colecție vastă de imagini umane pentru preantrenare, urmată de ajustarea pentru o gamă de sarcini legate de oameni. Urmărirea digitizării 3D a oamenilor la scară largă rămâne un obiectiv crucial în viziunea computerizată.
S-au făcut progrese semnificative în cadrul mediilor controlate sau de studio, dar persistă provocări în extinderea acestor metode la medii neconstrânse. Pentru a aborda aceste provocări, este esențială dezvoltarea unor modele versatile capabile de multiple sarcini fundamentale, cum ar fi estimarea punctelor cheie, segmentarea părților corpului, estimarea adâncimii și predicția normală a suprafeței din imagini în medii naturale. În acest studiu, Sapiens își propune să dezvolte modele pentru aceste sarcini esențiale de viziune umană care se generalizează la setări în sălbăticie. În prezent, cele mai mari modele de limbaj accesibile publicului conțin peste 100 de miliarde de parametri, în timp ce modelele de limbaj mai frecvent utilizate conțin aproximativ 7 miliarde de parametri. În contrast, transformatoarele de viziune (ViT), în ciuda arhitecturii similare, nu au fost scalate până la acest nivel cu succes. Deși există încercări notabile în această direcție, inclusiv dezvoltarea unui ViT dens de 4 miliarde de parametri antrenat pe texte și imagini și formularea tehnicii pentru antrenarea stabilă a unui ViT de 22 de miliarde de parametri, scheletele de viziune utilizate în mod obișnuit variază între 300 de milioane și 600 de milioane de parametri și sunt preantrenate în principal la o rezoluție de imagine de aproximativ 224 de pixeli. Similar, modelele existente de generare de imagini bazate pe transformatoare, cum ar fi DiT, folosesc mai puțin de 700 de milioane de parametri și operează pe un spațiu latent puternic comprimat. Pentru a aborda această lacună, Sapiens introduce o colecție de modele ViT de mare capacitate și rezoluție, preantrenate nativ la o rezoluție de imagine de 1024 de pixeli pe milioane de imagini umane.
Sapiens prezintă o familie de modele pentru patru sarcini fundamentale de viziune uman-centrică: estimarea poziției 2D, segmentarea părților corpului, estimarea adâncimii și predicția normală a suprafeței. Modelele Sapiens suportă în mod nativ inferența de înaltă rezoluție de 1K și sunt extrem de ușor de adaptat pentru sarcini individuale prin simpla ajustare a modelelor preantrenate pe peste 300 de milioane de imagini umane în sălbăticie. Sapiens observă că, dată fiind aceeași alocare computațională, preantrenarea auto-supervizată pe un set de date curat de imagini umane îmbunătățește semnificativ performanța pentru un set divers de sarcini uman-centrice. Modelele rezultate prezintă o generalizare remarcabilă la datele din sălbăticie, chiar și atunci când datele etichetate sunt rare sau complet sintetice. Designul simplu al modelului aduce și scalabilitate – performanța modelului pe sarcini se îmbunătățește pe măsură ce numărul de parametri crește de la 0,3 la 2 miliarde. Sapiens depășește în mod constant rezultatele existente pe diverse benchmark-uri uman-centrice, realizând îmbunătățiri semnificative față de rezultatele anterioare de top: 7,6 mAP pe Humans-5K (poziție), 17,1 mIoU pe Humans-2K (segmentare părți), 22,4% eroare relativă RMSE pe Hi4D (adâncime) și 53,5% eroare relativă unghiulară pe THuman2 (normal).
Sapiens: Breakthrough în Modele de Viziune Umană
Anii recenți au cunoscut progrese remarcabile către generarea de oameni fotorealiști în 2D și 3D. Succesul acestor metode se datorează în mare măsură estimării robuste a diverselor active, cum ar fi punctele cheie 2D, segmentarea fină a părților corpului, adâncimea și normalele suprafeței. Cu toate acestea, estimarea robustă și precisă a acestor active rămâne o zonă de cercetare activă, iar sistemele complicate pentru îmbunătățirea performanței pentru sarcini individuale pot împiedica adoptarea mai largă. Mai mult, obținerea de annotări precise și de înaltă calitate în sălbăticie este notoriu dificil de scalat. Scopul Sapiens este de a oferi un cadru unificat și modele pentru a infera aceste active în sălbăticie, deblocând o gamă largă de aplicații uman-centrice pentru toată lumea.
Sapiens susține că astfel de modele uman-centrice ar trebui să îndeplinească trei criterii: generalizare, aplicabilitate largă și fidelitate ridicată. Generalizarea asigură robustețea la condiții neîntâlnite, permițând modelului să funcționeze consistent în medii variate. Aplicabilitatea largă indică versatilitatea modelului, făcându-l potrivit pentru o gamă largă de sarcini cu modificări minime. Fidelitatea ridicată denotă capacitatea modelului de a produce ieșiri precise și de înaltă rezoluție, esențiale pentru sarcinile de generare umană fidelă. Acest studiu detaliază dezvoltarea modelelor care încorporează aceste atribute, denumite colectiv Sapiens.
Urmând insight-urile, Sapiens folosește seturi de date mari și arhitecturi de modele scalabile, cheie pentru generalizare. Pentru o aplicabilitate mai largă, Sapiens adoptă abordarea preantrenării și ajustării ulterioare, permițând adaptarea post-preantrenare la sarcini specifice cu ajustări minime. Această abordare ridică o întrebare critică: Ce tip de date este cel mai eficient pentru preantrenare? Dată fiind limita computațională, ar trebui să se pună accentul pe colectarea a cât mai multe imagini umane posibil sau este preferabil să se preantreneze pe un set mai puțin curat pentru a reflecta mai bine variabilitatea lumii reale? Metodele existente adesea ignoră distribuția datelor de preantrenare în contextul sarcinilor descendente. Pentru a studia influența distribuției datelor de preantrenare asupra sarcinilor specifice umane, Sapiens colectează setul de date Humans-300M, care conține 300 de milioane de imagini umane diverse. Aceste imagini neetichetate sunt utilizate pentru preantrenarea unei familii de transformatoare de viziune de la zero, cu număr de parametri variind de la 300 de milioane la 2 miliarde.
Printre diversele metode de auto-supervizare pentru învățarea caracteristicilor vizuale generale din seturi de date mari, Sapiens alege abordarea mascat-autoencoder (MAE) datorită simplității și eficienței sale în preantrenare. MAE, având un model de inferență cu o singură trecere comparativ cu strategiile contrastive sau multi-inferență, permite procesarea unui volum mai mare de imagini cu aceleași resurse computaționale. Pentru o fidelitate mai ridicată, în contrast cu metodele anterioare, Sapiens crește rezoluția nativă de intrare a preantrenării la 1024 de pixeli, rezultând o creștere de aproximativ 4 ori a FLOPs comparativ cu cel mai mare schelet de viziune existent. Fiecare model este preantrenat pe 1,2 trilioane de tokeni. Pentru ajustarea pe sarcini uman-centrice, Sapiens folosește o arhitectură consistentă de tip encoder-decoder. Encoderul este inițializat cu greutăți din preantrenare, în timp ce decoderul, un cap de sarcină ușor și specific, este inițializat aleator. Ambele componente sunt ajustate în modul end-to-end. Sapiens se concentrează pe patru sarcini cheie: estimarea poziției 2D, segmentarea părților corpului, adâncimea și estimarea normală, așa cum se demonstrează în figura următoare.

Conform studiilor anterioare, Sapiens confirmă impactul critic al calității etichetelor asupra performanței modelului în sălbăticie. Benchmark-urile publice conțin adesea etichete zgomotoase, oferind semnale de supervizare inconsistente în timpul ajustării modelului. În același timp, este important să se utilizeze annotări precise și fine pentru a se alinia îndeaproape cu scopul principal al Sapiens de digitizare 3D a oamenilor. În acest scop, Sapiens propune un set mult mai dens de puncte cheie 2D pentru estimarea poziției și un vocabular detaliat de clase pentru segmentarea părților corpului, depășind scopul seturilor de date anterioare. În mod specific, Sapiens introduce o colecție cuprinzătoare de 308 puncte cheie care cuprind corpul, mâinile, picioarele, suprafața și fața. De asemenea, Sapiens extinde vocabularul de clase pentru segmentare la 28 de clase, acoperind părți ale corpului cum ar fi părul, limba, dinții, buza superioară/inferioară și toracele. Pentru a garanta calitatea și consistența annotărilor și un grad ridicat de automatizare, Sapiens utilizează un setup de captură multi-vizual pentru a colecta annotări de poziție și segmentare. Sapiens utilizează, de asemenea, date sintetice uman-centrice pentru estimarea adâncimii și a normalei, folosind 600 de scanări detaliate de la RenderPeople pentru a genera hărți de adâncime și normale de suprafață de înaltă rezoluție. Sapiens demonstrează că combinația preantrenării la scară largă cu domeniu specific și a annotărilor de înaltă calitate, dar limitate, conduce la o generalizare robustă în sălbăticie. În general, metoda Sapiens arată o strategie eficientă pentru dezvoltarea unor modele discriminative precise, capabile să funcționeze în scenarii din lumea reală, fără nevoia de a colecta un set costisitor și divers de annotări.

Sapiens: Metodă și Arhitectură
Sapiens urmează abordarea mascat-autoencoder (MAE) pentru preantrenare. Modelul este antrenat pentru a reconstrui imaginea umană originală dată observația sa parțială. Ca și toți autoencoderii, modelul Sapiens are un encoder care mapă imaginea vizibilă la o reprezentare latentă și un decoder care reconstruește imaginea originală din această reprezentare latentă. Setul de date de preantrenare conține atât imagini cu un singur om, cât și cu mai mulți oameni, fiecare imagine fiind redimensionată la o dimensiune fixă cu un raport de aspect cu pătrat. Similar cu ViT, imaginea este împărțită în patch-uri regulate, ne-suprapuse, cu o dimensiune a patch-ului fixă. Un subset din aceste patch-uri este selectat aleator și mascat, lăsând restul vizibil. Proporția patch-urilor mascate față de cele vizibile, cunoscută sub numele de raport de mascare, rămâne constantă pe parcursul antrenării.
Modelele Sapiens prezintă generalizare pe o varietate de caracteristici de imagine, incluzând scale, decupaje, vârsta și etnia subiecților, precum și numărul de subiecți. Fiecare token de patch din model reprezintă 0,02% din aria imaginii, comparativ cu 0,4% în ViT standard – o reducere de 16 ori, oferind o raționare inter-token fină pentru modele. Chiar și cu un raport de mascare de 95%, modelul Sapiens realizează o reconstruire plauzibilă a anatomiei umane pe exemple neîntâlnite. Reconstrucția modelului Sapiens preantrenat pe imagini umane neîntâlnite este demonstrată în imaginea următoare.

Mai mult, Sapiens utilizează un set de date proprietar mare pentru preantrenare, constând din aproximativ 1 miliard de imagini în sălbăticie, concentrându-se exclusiv pe imagini umane. Preprocesarea implică eliminarea imaginilor cu filigran, text, reprezentări artistice sau elemente ne-naturale. Sapiens utilizează apoi un detector de cutii de delimitare a persoanelor de serie pentru a filtra imagini, păstrând cele cu un scor de detectare de peste 0,9 și dimensiuni ale cutiei de delimitare care depășesc 300 de pixeli. Peste 248 de milioane de imagini din setul de date conțin mai mulți subiecți.
Estimarea Poziției 2D
Cadrul Sapien ajustează encoderul și decoderul în P pe multiple schelete, incluzând K = 17 [67], K = 133 [55] și un schelet foarte detaliat, cu K = 308, așa cum se arată în figura următoare.

Comparativ cu formatele existente cu cel mult 68 de puncte cheie faciale, annotările Sapiens constau în 243 de puncte cheie faciale, incluzând puncte reprezentative din jurul ochilor, buzelor, nasului și urechilor. Acest design este conceput pentru a captura cu atenție detalii nuanțate ale expresiilor faciale în lumea reală. Cu aceste puncte cheie, cadrul Sapiens a annotat manual 1 milion de imagini la rezoluție de 4K dintr-un setup de captură interioară. Similar cu sarcinile anterioare, canalele de ieșire ale decoderului estimatorului de normală N sunt setate la 3, corespunzător componentelor xyz ale vectorului normal la fiecare pixel. Datele sintetice generate sunt utilizate și ca supervizare pentru estimarea normală a suprafeței.

Sapien: Experiment și Rezultate
Sapiens-2B este preantrenat utilizând 1024 de procesoare A100 GPU timp de 18 zile cu PyTorch. Sapiens utilizează optimizerul AdamW pentru toate experimentele. Programul de învățare include o scurtă perioadă de încălzire liniară, urmată de o scădere cosinusoidală pentru preantrenare și o scădere liniară pentru ajustare. Toate modelele sunt preantrenate de la zero la o rezoluție de 1024 × 1024 cu o dimensiune a patch-ului de 16. Pentru ajustare, imaginea de intrare este redimensionată la un raport de 4:3, adică 1024 × 768. Sapiens aplică augmentări standard, cum ar fi decuparea, scalarea, răsturnarea și distorsionarea fotometrică. Un fundal aleatoriu din imagini non-umane COCO este adăugat pentru sarcinile de segmentare, adâncime și predicție a normală. Important, Sapiens utilizează rate de învățare diferențiate pentru a păstra generalizarea, cu rate de învățare mai mici pentru straturile inițiale și rate progresiv mai mari pentru straturile ulterioare. Decăderea ratei de învățare pe straturi este setată la 0,85, cu o decădere a greutății de 0,1 pentru encoder.
Specificările de proiectare ale Sapiens sunt detaliate în tabela următoare. Urmând o abordare specifică, Sapiens prioritizează scalarea modelelor prin lățime în loc de adâncime. Notabil, modelul Sapiens-0,3B, deși arhitectural similar cu ViT-Large tradițional, conține de douăzeci de ori mai mulți FLOPs datorită rezoluției sale mai mari.

Sapiens este ajustat pentru estimarea poziției feței, corpului, picioarelor și mâinilor (K = 308) utilizând annotări de înaltă fidelitate. Pentru antrenare, Sapiens utilizează setul de antrenare cu 1 milion de imagini, iar pentru evaluare, utilizează setul de test, numit Humans5K, cu 5.000 de imagini. Evaluarea urmează o abordare de sus în jos, unde Sapiens utilizează un detector de cutii de delimitare a persoanelor și efectuează inferența poziției pentru un singur om. Tabela 3 prezintă o comparație a modelelor Sapiens cu metodele existente pentru estimarea poziției întregului corp. Toate metodele sunt evaluate pe 114 puncte cheie comune între vocabularul de 308 puncte cheie al Sapiens și vocabularul de 133 de puncte cheie din COCO-WholeBody. Sapiens-0,6B depășește actualul top de performanță, DWPose-l, cu +2,8 AP. În contrast cu DWPose, care utilizează un cadru complex student-învățător cu distilare de caracteristici specializat pentru sarcină, Sapiens adoptă o arhitectură generală de tip encoder-decoder cu preantrenare uman-centrică de mare capacitate.
Interesant, chiar și cu același număr de parametri, modelele Sapiens demonstrează o performanță superioară comparativ cu omologii lor. De exemplu, Sapiens-0,3B depășește VitPose+-L cu +5,6 AP, iar Sapiens-0,6B depășește VitPose+-H cu +7,9 AP. În cadrul familiei Sapiens, rezultatele indică o corelație directă între mărimea modelului și performanță. Sapiens-2B stabilește un nou top de performanță cu 61,1 AP, o îmbunătățire semnificativă de +7,6 AP față de starea anterioară a artei. În ciuda ajustării cu annotări dintr-un studio de interior, Sapiens demonstrează o generalizare robustă la scenarii din lumea reală, așa cum se arată în figura următoare.

Sapiens este ajustat și evaluat utilizând un vocabular de segmentare de 28 de clase. Setul de antrenare conține 100.000 de imagini, în timp ce setul de test, Humans-2K, conține 2.000 de imagini. Sapiens este comparat cu metodele existente de segmentare a părților corpului, ajustate pe același set de antrenare, utilizând punctele de plecare preantrenate sugerate de fiecare metodă. Similar cu estimarea poziției, Sapiens arată generalizare în segmentare, așa cum se demonstrează în tabela următoare.

Interesant, cel mai mic model, Sapiens-0,3B, depășește metodele existente de top pentru segmentarea părților corpului, cum ar fi Mask2Former și DeepLabV3+, cu 12,6 mIoU, datorită rezoluției sale mai mari și preantrenării uman-centrice de mare capacitate. Mai mult, creșterea dimensiunii modelului îmbunătățește și mai mult performanța de segmentare. Sapiens-2B realizează cea mai bună performanță, cu 81,2 mIoU și 89,4 mAcc pe setul de test, iar figura următoare prezintă rezultatele calitative ale modelelor Sapiens.

Concluzie
Sapiens reprezintă un pas semnificativ către avansarea modelelor de viziune umană în direcția modelelor de bază. Modelele Sapiens demonstrează capacități puternice de generalizare pe o varietate de sarcini uman-centrice. Performanța de top se datorează: (i) preantrenării la scară largă pe un set de date curat și specializat pentru înțelegerea oamenilor, (ii) scheletelor de transformatoare de viziune de mare capacitate și rezoluție ridicată și (iii) annotărilor de înaltă calitate pe date de studio și sintetice îmbunătățite. Modelele Sapiens au potențialul de a deveni un bloc de construcție cheie pentru o multitudine de sarcini descendente și oferă acces la schelete de viziune de înaltă calitate unei părți semnificativ mai mari a comunității.












