Istraživanje samonadziranih transformatora vida za prepoznavanje hoda u divljini, 2. dio
Nov 24, 2023
2.2. Vision Transformers
Iako su prvobitno predloženi za NLP zadatke [16,34] sa ogromnim uspehom, transformatori su se poslednjih godina široko koristili u kompjuterskom vidu [24,25,28,35–37]. Oba domena su uživala u performansama bez presedana korištenjem različitih varijacija transformatora, djelimično zbog povećanog kapaciteta modela i sposobnosti transformatora da imaju mnogo više koristi od samonadzora od prethodnih modela [17].
Samokontrola i pamćenje su usko povezani. Samopraćenje se odnosi na procjenu i prilagođavanje nečijeg ponašanja, razmišljanja i emocija, dok se pamćenje odnosi na sposobnost stjecanja, obrade i pohranjivanja informacija. Samonadgledanje nam može pomoći da steknemo bolju kontrolu nad svojim ponašanjem i emocijama, čime se poboljšava pamćenje.
Prvo, samokontrola nam može pomoći da se bolje odupremo iskušenju. Iskušenje ima tendenciju da odvuče našu pažnju i energiju i utiče na naše pamćenje. Kroz samokontrolu možemo se bolje kontrolisati i izbjeći pretjerano ometanje, čime se poboljšava pamćenje.
Drugo, samopraćenje nam također može pomoći da bolje razumijemo i zapamtimo informacije. Samopraćenje nam omogućava da više pažnje posvetimo ključnim tačkama informacija i obratimo pažnju na veze između informacija, kako bismo bolje razumjeli i zapamtili informacije. Kada obraćamo pažnju, bolje smo opremljeni da razumijemo i zadržimo informacije.
Konačno, samopraćenje nam također može pomoći da bolje promatramo i sumiramo svoje ponašanje i razmišljanje. Razmišljajući o vlastitim postupcima i misaonim procesima, možemo identificirati nedostatke i poboljšati ih. Ovo poboljšanje ne samo da poboljšava naše ponašanje i razmišljanje, već i poboljšava naše sposobnosti pamćenja.
Ukratko, samopraćenje i pamćenje su usko povezani. Kroz samokontrolu možemo se bolje kontrolirati, bolje razumjeti i zapamtiti informacije i bolje poboljšati svoje ponašanje i misaone procese. U isto vrijeme, ovo će nam također pomoći da poboljšamo naše pamćenje, omogućavajući nam da učimo i radimo efikasnije. Razjasnimo svoje ciljeve, aktivno se prilagođavamo i stalno napredujemo! Vidi se da moramo poboljšati pamćenje, a Cistanche deserticola može značajno poboljšati pamćenje, jer i Cistanche deserticola može regulisati ravnotežu neurotransmitera, kao što je povećanje nivoa acetilholina i faktora rasta. Ove supstance su veoma važne za pamćenje i učenje. Osim toga, meso također može poboljšati protok krvi i promovirati isporuku kisika, što može osigurati da mozak dobije dovoljno hranjivih tvari i energije, čime se poboljšava vitalnost i izdržljivost mozga.

Kliknite znati suplemente za poboljšanje pamćenja
Dosovitskiy et al. [24] su bili prvi koji su predložili korištenje transformatorskih enkodera za klasifikaciju slika, uvodeći Vision Transformer (ViT). Arhitektura dijeli ulaznu sliku na zakrpe fiksne veličine od 16x16, izravnava ih i projektuje ih linearnim slojem na dimenziju ugradnje. Dodatni token klase (CLS) se ubacuje u sekvencu, a poziciona kodiranja se dodaju svakom vektoru.
Rezultirajuća sekvenca ugrađivanja je data kao ulaz u enkoder transformatora, koji ima istu strukturu kao onaj u [34], ali koristi operator LayerNorm prije svakog bloka umjesto poslije (prednorma). MLPhead se koristi za dobivanje oznake klase iz globalno agregiranih informacija u tokenu klase.
Mehanizam samopažnje koji su uveli Vaswani et al. [34] uzima niz stavki kao ulaz i procjenjuje interakciju između svih njih agregirajući globalne informacije za svaki element u nizu. Da bi izračunao različite interakcije između elemenata sekvence, modul samopažnje s više glava (MSA) spaja rezultate višestrukih blokova samopažnje i projektuje izlaz na matricu težine koja se može naučiti. Transformatorski enkoder uveden u [34] sastoji se od više naslaganih slojeva koji se sastoje od MSA bloka, fidforward (FFN) bloka, zaostalih veza između svakog bloka i LayerNorm (LN) nakon svakog bloka.
Touvron et al. [25] predlažu dvije arhitektonske promjene za poboljšanje performansi transformatora dubokog vida. Njihov prvi doprinos, LayerScale, olakšava obuku dubljih modela dodavanjem dijagonalne matrice koja se može naučiti koja se množi sa izlazom preostalih blokova. Budući da je matrica inicijalizirana malim vrijednostima, ona prisiljava rezultate slojeva enkodera transformatora da imaju mali doprinos izlazu preostalog bloka na početku obuke.
Njihov drugi doprinos je mehanizam za privlačenje pažnje. Umjesto inicijalnog dodavanja CLS tokena, kao što je u standardnom ViT-u, on se dodaje nakon nekoliko blokova kodera. Nakon ove faze, ažurira se samo token klase, a tokeni zakrpe ostaju zamrznuti. Ovaj mehanizam pomaže da se operacije samopažnje između zakrpa odvoje od agregiranja informacija koje će se koristiti za klasifikaciju.
Yuan et al. [28] tvrde da jednostavna tokenizacija zakrpa u vanilla ViT-u ima ograničenje nemogućnosti modeliranja lokalne strukture slike i interakcije između susjednih zakrpa. Posljedično, oni uvode progresivni proces tokenizacije koji kombinira susjedne tokene u jedan.
Ovaj proces se sastoji od modula Reshape, koji uzima niz tokena iz prethodnog sloja i konstruiše sliku od njih na osnovu prostorne bliskosti. Modul Soft Split dijeli izgrađenu sliku na preklapajuće dijelove tokena i šalje ih sljedećem koderu. Generirani tokeni nakon procesa tokenizacije se unose u duboku usku ViT kičmu radi klasifikacije.

Kao što su primijetili Wang et al. [35] standardni Vision Transformer je posebno dizajniran za klasifikaciju slika i nije pogodan za druge zadatke kao što je segmentacija detekcije objekata. Zbog toga, oni predlažu Pyramid Vision Transformer (PVT) koji uzima inspiraciju iz CNN arhitekture tako što proizvodi posredničke mape karakteristika sa sve manjim prostornim dimenzijama i sve većim brojem kanala.
Ova piramidalna struktura pomaže modelu u učenju značajki više skala koje se mogu koristiti za različite zadatke. Model prvo obrađuje žetone dobijene iz zakrpa dimenzija 4 × 4, a u svakoj fazi, tokeni odgovaraju većim prostornim dimenzijama zakrpa.
Računski trošak klasične samopažnje je O(N2· d) gdje je N broj tokena u nizu, a d je vektorska dimenzija. Kvadratični računski trošak u smislu broja tokena postaje praktičan problem sa povećanjem rezolucije ulazne slike jer svaki token u nizu odgovara zakrpi na slici.
U literaturi postoji nekoliko tehnika pomoću kojih se može smanjiti računski trošak vanile samopažnje [26,35,36]. PVT [35] koristi pažnju prostorne redukcije, koja smanjuje prostornu veličinu vektora ključa i vrijednosti prije samopažnje operacijom preoblikovanja i linearnom projekcijom.
Swin transformator [36] koji također ima piramidalnu strukturu zamjenjuje blok samopažnje modulom koji ga aproksimira. Modul grupiše susjedne zakrpe u lokalnim prozorima i izvodi operaciju samopažnje samo unutar ovih prozora.
Da bi komunicirao informacije s drugim prozorima, on pomiče lokalne prozore tako da oni također sadrže zakrpe iz susjednih prozora i ponovo računa samopažnju. Chu et al. [27] usvojio je PVT arhitekturu i predložio sličnu metodu za aproksimaciju samopažnje. Također su vršili lokalnu pažnju između zakrpa u prozoru, slično Swin transformatoru.
Kako bi prenijeli informacije s drugim prozorima, oni su sproveli samopažnju između predstavnika svakog prozora i svih ostalih prozora. CrossFormer [26] se također nadograđuje na PVT. Koristi pažnju na kratke udaljenosti, što je slično lokalnoj pažnji u Swin transformatoru, ali za curenje informacija drugim prozorima koristi pažnju na daljinu, koja izračunava interakciju između zakrpa, koje imaju fiksnu udaljenost između njih. Takođe kombinuje višerazmerne zakrpe usredsređene oko istog piksela da bi se dobile tokeni za blokove transformatora, što pomaže modelu u učenju interakcija na različitim skalama.
Yang et al. [37] predlažu mehanizam fokusne pažnje za učenje interakcija kratkog i dugog dometa između tokena koji transformatorima vida omogućava obradu slika visoke rezolucije. Za svaku zakrpu slike, fokusni modul samopažnje izračunava interakcije sa prostorno zatvorenim zakrpama i sa sažetim prozorima zakrpa koje su udaljenije. Sažimanje prozora zakrpa se vrši putem objedinjavanja i prikuplja informacije bez sadržaja kada su zakrpe daleko.
RegionViT [38] koristi PVTarchitecture i dodaje dva putanja tokenizacije za svaku mapu karakteristika. Prvi put tokenizacije dobiva regionalne tokene koji se sastoje od zakrpa koje pokrivaju veliki broj piksela. Drugi put tokenizacije dobiva lokalne tokene koji hvataju informacije niskog nivoa tako što sadrže nekoliko piksela. Ove dvije vrste tokena se unose kao ulaz u regionalno-lokalni transformator koder u kojem se prvo računa samopažnja između regija, a zatim između svakog regionalnog tokena i njegovih odgovarajućih lokalnih tokena.
LeViT arhitektura [39] kombinuje i CNN i mehanizam samopažnje. Slika se prvo ubacuje u CNN koder, koji smanjuje prostorne dimenzije i povećava dimenziju kanala. Rezultirajuće mape karakteristika se unose u hijerarhijski ViT koji sadrži modul pažnje koji se smanjuje između svojih enkodera kako bi se dodatno smanjile prostorne dimenzije i povećala dimenzija kanala karata karakteristika.
Arhitekture zasnovane na pažnji također su korištene u zadacima zasnovanim na video zapisima gdje je potrebno uzeti u obzir vremenske informacije. Arhitekture, kao što su ViViT [40] i TimeSformer [41], koriste mehanizam samopažnje iu prostornoj iu vremenskoj dimenziji. Zbog toga, model uči da uhvati prostorne informacije iz svakog okvira i promjene tokom vremena.
3. Metoda
U ovom odeljku dajemo detaljan opis svake arhitekture i odabranih hiperparametara. Nadalje, opisujemo obradu podataka i predložene dizajnerske odluke za prilagođavanje transformatora vida za rad sa skeletnim sekvencama. Na kraju, opisujemo metode inicijalizacije, protokol evaluacije i skupove podataka evaluacije.
3.1. Opis arhitekture
Istražili smo pet različitih varijanti Vision Transformera (Slika 1), koje su razvijene za optimiziranije izračunavanje na slikama, u smislu performansi nizvodno i vremena zaključivanja. Posebno istražujemo klasični ViT [24], CaiT [25], Token2Token ViT [28] i Twins-SVT [27].
Općenito, okusi transformatora vida bave se poboljšanjima u odnosu na "klasični" način obrade slika sa transformatorima, kao što je predloženo u ViT-u: slike se dijele u jednake veličine i ne preklapaju se zakrpe koje se izravnavaju i projektuju u prostor niže dimenzije kako bi se se tada tretiraju kao "tokeni", na sličan način kao i NLP aplikacije. U slučaju analize hoda, kvadratni dio odgovara grupi zglobova koji variraju u malom vremenskom prozoru.

Standardni transformatorski enkoder uzima kao ulaz niz stavki (X ∈ Rn×d gdje je – broj stavki, d – dimenzija ugradnje) i projektuje ih na tri različite matrice težine koje se mogu naučiti dobivajući upite (Q ∈ Rn×dq), ključeve (K ∈ Rn×dk, dk=dq), i vrijednosti (V ∈ Rn×dv ), gdje su dq, dk i dv dimenzije za upite, ključeve i vrijednosti, respektivno. Pažnja se računa kao:

Za većinu arhitektura, fiksirali smo broj slojeva, glava pažnje i dimenzijske karakteristike kad god je to moguće. Kao takvi, biramo 4 sloja sa 4 fokusa pažnje, dimenzijom 512 za mrežu unapred i konačnom veličinom ugradnje od 128.

ViT Vision Transformer [24] dobija ulaznu sekvencu tokena tako što deli sliku na zakrpe i linearno ih projektuje na dimenziju ugradnje. Rezultirajuća sekvenca zajedno sa dodatnim tokenom klase (CLS) se daje kao ulaz u enkoder transformatora. Štaviše, ViT enkoder koristi pre-normu, za razliku od post-normalizacije. Izlaz sloja može se izračunati kao:

gdje su λl, i i λ0l, i parametri koji se mogu naučiti. Model također razdvaja izračunavanje interakcija između ulaznih tokena od izračunavanja ugrađivanja klasa koje agregira sve globalne informacije. Ovo se radi s pažnjom klase koja uvodi CLS token u ulaznu sekvencu nakon što su interakcije dobijene i zamrzava sve ostale tokene. Za CaiT enkoder koristili smo istu konfiguraciju kao u ViT-u, ali za CLS enkoder smo koristili dubinu od 2 sloja.
Token2Token ViT Arhitektura Token2Token [28] sadrži progresivni proces tokenizacije koji modelira lokalnu strukturu slike kombinovanjem susjednih tokena. Proces tokenizacije prvo konstruira strukturu sličnu slici iz ulaznog niza tokena uz pomoć Reshape modula. Zatim se slika dijeli na preklapajuće dijelove tokena preko Soft Split (SS) modula. Rezultirajući izlaz iz modula tokenizacije izračunava se kao:

Za Token2Token, koristili smo 2 sloja sa veličinama zakrpa od {2, 8} i {2, 4} za prvi sloj i {4, 16} za drugi sloj.
Twins-SVT Arhitektura Twins-SVT [27] zamjenjuje klasični blok samopažnje modulom koji se naziva prostorno odvojiva samopažnja (SA) koji aproksimira operaciju. SSSA se sastoji od lokalno grupisane samopažnje (LSA) koja izračunava interakcija samo između tokena unutar istog lokalnog prozora i globalne poduzorkovane pažnje (GSA) koja agregira globalne informacije vršeći samopažnju između svih predstavnika svakog lokalnog prozora izračunatog konvolviranjem susjednih tokena. Operacije sloja aTwins mogu se zapisati kao:

Za CrossFormer koder koristili smo dimenzije {16, 32, 64, 128} za slojeve, globalne veličine prozora {4, 2, 2, 1}, veličinu lokalnog prozora 2, korake unakrsnog ugrađivanja od 2 i poprečne -ugrađivanje kernela veličina {{2, 4, 8, 16}, {2, 4}, {2, 4}, {2, 4}}.
3.2. Predobrada podataka
Za skupove podataka DenseGait i GREW koristimo istu proceduru predobrade. Za svaku ekstrahovanu i praćenu sekvencu skeleta koja sadrži 18 zglobova sa x, i y koordinatama i dodatnim rezultatom pouzdanosti, prvo normaliziramo sekvencu centriranjem na koordinate karlice (karlica, karlica) i skaliranjem horizontalno i vertikalno, u skladu sa proporcijama ljudskog tela (tj. rastojanje između ramena: |xR.rame − xL.rame| i rastojanje od vrata do karlice: |yneck − ypelvis|). Za svaku koordinatu (zglob, spoj) svakog od 18 zglobova u formatu COCO poze primjenjujemo sljedeću proceduru normalizacije:

Kroz proces normalizacije, eliminišu se razlike između rezolucije kamere i udaljenosti subjekta od kamere. Štaviše, eliminišemo informacije o izgledu o visini i širini subjekta, koje se ne odnose na informacije o kretanju. Ovaj korak je sličan koraku poravnanja u modernim modelima za prepoznavanje lica [42]. Štaviše, takođe koristimo sloj za normalizaciju serije [43] na početku svakog modela da dodatno normalizujemo rezultujuću sliku.
S obzirom na vremensku dimenziju T (tj. broj okvira) i prostornu dimenziju skeleta J (tj. broj zglobova), naivne sekvence skeleta su kodirane kao slike oblika (T, J, 3), gdje je, u našem slučaju, T {{ 1}} i J=18.

Većina transformatora vida, međutim, pretpostavlja da su slike kvadratne. Stoga predlažemo više varijanti promjene veličine prostorne dimenzije tako da se slika transformiše u (T, T, 3), što je ekvivalentno vještačkom povećanju broja spojeva (vidi sliku 2).

For more information:1950477648nn@gmail.com






