Pređi na sadržaj

Jednokratno učenje (računarska vizija)

S Vikipedije, slobodne enciklopedije

Jednokratno učenje je problem kategorizacije objekata, uglavnom zastupljen u računarskoj viziji . Dok većina algoritama za kategorizaciju objekata zasnovanih na mašinskom učenju zahteva obuku na stotinama ili hiljadama primera, jednokratno učenje ima za cilj da klasifikuje objekte na osnovu jednog ili samo nekoliko primera. Za probleme ovog tipa se takođe koristi termin učenje sa nekoliko pokušaja posebno u slučajevima kada kada je potrebno više primera za treniranje.

Motivacija

[uredi | uredi izvor]

Sposobnost kateorizacije objekata na osnovu nekoliko poznatih primera je demonstrirana kod ljudi. Procenjeno je da dete do svoje šeste godine nauči između 10 i 30 hiljada kategorija objekata u svetu. Ovo nije posledica samo velike moći ljudskog uma, već i mogućnosti da stvori i nauči nove kategorije objekata na osnovu poznatih informacija o različitim, prethodno naučenim kategorijama. Imajući dva primera iz dve kategorije objekata, gde prvu kategoriju čini nepoznat objekat sastavljen od poznatih oblika, a drugu kategoriju čini nepoznat, bezobličan oblik; ljudima je znatno lakše da prepoznaju prvu kategoriju, što insinuira da ljudi oslanjaju na poznate kategorije prilikom učenja novih. Glavni podstrek prilikom razumevanja učenja sa jednim pokušajem, jeste činjenica da sistemi, poput ljudi, mogu iskoristiti prethodno znanje o poznatim objektima prilikom klasifikacije novih.

Pozadina

[uredi | uredi izvor]

Kao i kod većine klasifikacionih šema, jednokratno učenje uključuje tri glavna izazova:

  • Reprezentacija: Kako treba opisati objekte i kategorije?
  • Učenje: Kako se mogu napraviti takvi opisi?
  • Prepoznavanje: Kako se poznati objekat može filtrirati od nereda koji ga okružuje, bez obzira na blokadu, tačku gledišta i osvetljenje? [1]

Jednokratno učenje se razlikuje od prepoznavanja pojedinačnih objekata i standardnih algoritama za prepoznavanje kategorija po svom naglasku na prenosu znanja (engl. knowledge transfer), koji koristi prethodno naučene kategorije.

  • Parametri modela: Ponovo koristi parametre modela, na osnovu sličnosti između starih i novih kategorija. Kategorije se najpre uče na osnovu brojnih trening primera, nakon čega se za učenje novih kategorija primenjuju transformacije parametara modela inicijalnih kategorija, ili se biraju parametri za klasifikator. Kategorije se prvo uče na brojnim primerima obuke, a zatim se nove kategorije uče korišćenjem transformacija parametara modela iz tih početnih kategorija ili odabirom odgovarajućih parametara za klasifikator. [2]
  • Deljenje funkcija: Vrši podelu delova ili karakteristika objekata po kategorijama. Jedan algoritam izdvaja "dijagnostičke informacije" u segmentima iz već naučenih kategorija tako što maksimizira zajedničke informacije segmenata, a zatim primenjuje ove karakteristike na učenje nove kategorije. Na primer, kategorija psa se lako može naučiti u jednom pokušaju na osnovu prethodnog znanja o kategorijama konja i krava, iz razloga što kategorija pas može da sarži slične razdvajajuće zakrpe. [3]
  • Kontekstualne informacije: Poziva se na globalno poznavanje scene u kojoj se objekat pojavljuje. Takve globalne informacije mogu se koristiti za raspodelu frekvencija u uslovnim nasumičnim poljima (engl. conditional random field) [4] Alternativno, kontekst može uzeti u obzir visinu kamere i geometriju scene. [5] Algoritmi ovog tipa imaju dve prednosti. Prvo, uče kategorije objekata koje su relativno različite; i drugo, za ovu svrhu pokazuju dobre performanse u situacijama gde slika nije ručno izrezana i poravnata. [6]

Teorija

[uredi | uredi izvor]

Bajesov algoritam za učenje sa jednim pokušajem predstavlja prvi plan i pozadinu slika parametrizovanih različitim modelima. koje su parametrizovane mešavinom grupisanih modela. [7] Tokom faze učenja, parametri ovih modela se uče korišćenjem parametra gustine aposteriorne verovatnoće i algoritma očekivanja-maksimizacije kod varijacionog Bajesa. [8] U ovoj fazi prethodno naučene kategorije objekata informišu izbor parametara modela putem prenosa kontekstualnog značenja. Za prepoznavanje objekata na novim slikama, aposteriorna verovatnoća dobijena tokom faze učenja se koristi u Bajesovom sistemu donošenja odluke zarad procene odnosa p(objekat | test, voz) prema p(nered u pozadini | test, voz), gde je p verovatnoća izlaza.

Primena Bajesove teoreme

[uredi | uredi izvor]

Uzimajući u obzir zadatak pronalaženja određenog objekta na slici , opšti cilj Bajesovog algoritma jednokratnog učenja je da uporedi verovatnoću da je objekat prisutan sa verovatnoćom da je prisutan samo "nered" u pozadini. Ako je verovatnoća postojanja objekta na slici veća, algoritam prijavljuje njegovo prisustvo. Da bi se izračunale pomenute verovatnoće, neophodno je da je klasa objekta modelirana iz skupa od (1 ~ 5) slika za treniranje koje sadrže primere.


Zarad formalizovanja ovih ideja, neka je slika koju je potrebno klasifikovati, odnosno upitna slika koja sadrži ili primer kategorije u prvom planu ili sam nered generičke pozadinske kategorije . Takođe, neka je skup slika za trening koje se koriste kao kategorija u prvom planu. Odluka da li sadrži objekat iz kategorije prvog plana, ili je samo nered iz kategorije pozadine :

gde su klase posteriori i prošireni Bajesovom teoremom, rezultujući odnosom verovatnoće i odnosom apriornih verovatnoća kategorije objekata . Donosi se odluka da slika sadrži objekat iz klase prvog plana ako prelazi određeni prag . Zatim se uvode parametarski modeli za kategorije prvog plana i pozadinskih kategorija sa parametrima i , respektivno. Ovaj parametarski model u prvom planu se uči tokom faze učenja od , kao na osnovu prethodnih informacija naučenih kategorija. Za model pozadine se pretpostavlja da je uniforman na svim slikama. Izostavljajući konstantan odnos priora kateogirja, , i parametrizovanje preko i prinosi

, uprostišteno i da i

Aposteriorna raspodela parametara modela na osnovu poznatih slika za treniranje, procenjuje se u fazi učenja. U ovoj proceni, jednokratno učenje se veoma razlikuje od tradicionalnih Bajesovih modela procene koji aproksimiraju integral kao . Umesto toga, koristi se varijacioni pristup koristeći prethodne informacije iz prethodno naučenih kategorija. Tradicionalna procena maksimalne verovatnoće parametara modela se koristi za pozadinski model i kategorije naučene unapred kroz obuku. [9]

Model kategorije objekata

[uredi | uredi izvor]

Za svaku sliku upita i slike za treniranje , za predstavljanje se koristi model konstelacije (engl. constellation model). [7] [10] [11] Da biste dobili ovaj model za datu sliku , prvo se na slici detektuje skup od N regiona interesa pomoću Kadir-Bradijevog detektora salienci (engl. Kadir-Brady saliency detector). [12] Svaki izabrani region je predstavljen lokacijom na slici, i opisom njegovog izgleda, . Ako su

i i analogne reprezentacije slika za obuku, izraz za R postaje:

Verovatnoće i predstavljene su kao mešavine modela konstelacije. Tipičan model konstelacije ima P(3 ~ 7) delova, sa N(~100) regiona interesa. Tako P-dimenzionalni vektor h dodeljuje jedan region interesa (od N postojećih regiona) svakom delu modela (za P delove). Tako h označava hipotezu (dodeljivanje regiona interesa delovima modela) za model, a model pune konstelacije je predstavljen sumacijom svih mogućih hipoteza h u prostoru hipoteza . Konačno je napisana formula verovatnoće

Drugačiji parametri predstavljaju različite konfiguracije delova, dok različite hipoteze h predstavljaju različite dodele regiona delovima, datim delom modela . Pretpostavka da su oblik modela (predstavljenim preko , kolekcija lokacija delova) i pojave nezavisni omogućavaju razmatranje izraza verovatnoće kao dve odvojene verovatnoće pojave i oblika. [13]

Pojava

[uredi | uredi izvor]

Pojava svake karakteristike je predstavljena tačkom u prostoru pojavljivanja (o kojoj se govori u nastavku, u poglavlju primene). „Svaki deo u modelu konstelacije ima Gausovu gustinu unutar ovog prostora sa srednjim i preciznim parametrima Iz njih se gore opisana verovatnoća pojavljivanja izračunava kao proizvod Gaussovih preko delova modela za datu hipotezu h i komponentu kompozicije . [14]

Oblik modela za datu kompozitnu komponentu a hipotezu h je predstavljen kao zajednička Gausova gustina lokacija karakteristika. Ove karakteristike se transformišu u skali i translaciono invarijantnom prostoru pre modeliranja relativne lokacije delova pomoću 2(P - 1)-dimenzionalnog Gausovog prostora. Iz ovoga dobijamo verovatnoću oblika, upotpunivši našu reprezentaciju . U cilju smanjenja broja hipoteza u prostoru hipoteza , razmatraju se samo one hipoteze koje zadovoljavaju ograničenje uređenja da je x-koordinata svakog dela monotono rastuća. Ovo eliminiše hipoteza iz . [14]

Gustina konjugovane vrednosti

[uredi | uredi izvor]

Da bi se izračunala vrednost , potrebno je rešiti integral koji je analitički nerešiv. Prethodno pomenut model kategorije objekta pruža informaciju o , te je preostalo pregledati , a posterior za i pronaći dovoljno dobru aproksimaciju za pomenuti integral. Prethodni radovi aproksimiraju a posteriori verovatnoću putem funkcije sa centrom u , svodeći integral na . se uobičajeno procenjuje metodom procene maksimalne verovatnoće () ili maksimum a posteriori () procedurama. Međutim, s obzirom da se kod učenja koristi svega nekoliko primera za trening, raspodela neće biti izražena, kao što se i pretpostavlja aproksimacijom putem funkcije. Iz tog razloga umesto tradicionalne aproksimacije, Bajesov algoritam učenja sa jednim pokušajem teži da "pronađe parametarsku formu tako da je učenje p izvodljivo". Algoritam primenjuje normalanu Višartovu raspodelu (engl. Normal-Wishart distribution) kao aprior konjugovane vrednosti , a u fazi učenja, varijacioneBajesove metode sa istom računskom složenošću, kao što se metode maksimalne verovatnoće koriste za učenje hiperparametara raspodele. Zatim, s obzirom da je p proizvod Gausovih vrednosti, postavljenim u okviru modela kategorije objekata, integral se svodi na multivarijacionu t-analizu (engl. multivariate Stundent's T distribution) i može se proceniti.

Implementacija

[uredi | uredi izvor]

Otkrivanje i predstavljanje karakteristika

[uredi | uredi izvor]

Da bi se otkrile karakteristike na slici tako da se ona može predstaviti modelom konstelacije, Kadir-Brejdijev detektor istaknutosti se koristi na sivim slikama, pronalazeći istaknute delove slike. Ovi regioni se zatim grupišu, rezultujući nizom karakteristika (klastera) i parametrom oblika , sastavljenim od centara klastera. Kadir-Brejdijev detektor je izabran zato što proizvodi manji broj istaknutije regione, za razliku od detektora kao što je više skalarni Haris, koji proizvodi brojne, manje značajne regione.

Učenje

[uredi | uredi izvor]

Da bi se održao prethodni oblik i izgled, tri kategorije (mačke, lica i avioni) se uče korišćenjem procene maksimalne verovatnoće. Parametri ovih kategorija objekata se kasnije koriste za procenu hiperparametara željenih a priora.

S obzirom na skup primera obuke, algoritam pokreće detektor karakteristika na ovim slikama i određuje parametre modela iz istaknutih regiona. Indeks hipoteze h koji dodeljuje osobine delovima onemogućava zatvoreno rešenje linearnog modela, tako da zadnja procenjuje se varijacionim Bajesovim algoritmom očekivanja–maksimizacija, koji se izvodi do konvergencije parametara posle ~ 100 iteracija. Učenje kategorije na ovaj način traje manje od jednog minuta na 2.8 GHz mašina sa modelom od 4 dela i < 10 slika za obuku. [15]

Eksperimentalni rezultati

[uredi | uredi izvor]

Primer motocikla

[uredi | uredi izvor]

Da biste naučili kategoriju motocikla:

  • Izabrano je šest trening slika iz kategorije motocikala iz Kaltek 4 skupa podataka i primenjen je Kadir–Brejdijev detektor, rezultujući sa i dobijenpreko analize glavnih komponenti.
  • Zatim, apriorni parametri modela se izračunavaju iz 30 modela , po 10 iz svake od tri naučene kategorije: uočene mačke, lica i avioni. Apriori enkodiraju znanje da "modeli kojima fali vizuelni kontinuitet okupiraju različiti deo prostora parametara u odnosu na koherentne modele"
  • U učenju, koje se izvodi sledeće, važi ka delovima parametarskog prostora koji odgovaraju koherentnim modelima. Koristi se samo jedna komponenta mešavine, pa je . Procena zadnjeg dela je prikazana u nastavku.
  • Konačno, slike ispod prikazuju naučeni model motocikla sa oblikom i izgledom delova i odgovarajućim karakteristikama.
  • Za testove prepoznavanja, gore pomenuti model se primenjuje na 50 slika koje sadrže motore i 50 koje ne sadrže. Slika ispod prikazuje ROC krivu, koja meri verovatnoću detekcije u odnosu na verovatnoću lažne detekcije, kao i neke prepoznate primere.

Zajedničke gustine na transformacijama

[uredi | uredi izvor]

Još jedan algoritam koristi prenos znanja preko parametara modela da bi naučio novu kategoriju objekta koja je po izgledu slična prethodno naučenim kategorijama. Slika je predstavljena ili kao tekstura i oblik, ili kao latentna slika koja je transformisana, označena sa .

Sijamska neuronska mreža (engl. Siamese neural network) radi u zajedno na dva različita ulazna vektora da bi izračunala uporedive izlazne vektore. [16]

Zgušnjavanja

[uredi | uredi izvor]

U ovom kontekstu, zgušnjavanje je „istovremena vektorizacija svake od seta slika jedne prema drugoj“. Za skup slika za obuku određene kategorije, zgušnjavanje iterativno transformiše svaku sliku kako bi se minimizirale zajedničke pikselne entropije E slika, gde je

„gde je binarna slučajna promenljiva definisana vrednostima određenog piksela p na svim slikama, je diskretna entropijska funkcija te promenljive, i je skup indeksa piksela za sliku."

Algoritam zgrušavanja počinje skupom slika i odgovarajućom matricom transformacije , koji će na kraju algoritma predstavljati transformaciju od u . Ovi latentni minimiziraJU zajedničke entropije u pikselima. Stoga je zadatak algoritma za zgušnjavanje da proceni transformacije .

Skica algoritma:

  • Inicijalizacija matrica
  • Izračunavanje zajedničkih entropija po pikselima trenutnog skupa slika.
  • Za svaku sliku , iterirati kroz sve moguće afine transformacije (rotacija, x-translacija, y-translacija, x-skala, y-skala, x-smicanje, y-smicanje) i testirati da li smanjuje zajedničku entropiju u pikselima. Ako smanjuje navedenu entropiju, postaviti .
  • Ponoviti prethodne korake dok ne dođe do konvergencije.

Na kraju algoritma, , i transformiše latentnu sliku nazad u prvobitno posmatranu sliku. [17]

Klasifikacija

[uredi | uredi izvor]

Da bi se ovaj model koristio za klasifikaciju, neophodno je da se izvrši njegova procena maksimalnom aposteriornom verovatnoćom uz datu posmatranu sliku . Primenom Bajesovog pravilaa na i parametrizacijom transformacije dobijamo težak integral koji se mora aproksimirati, a zatim je potrebno pronaći najbolju transformaciju (ono što preslikava test sliku na njenu latentnu sliku). Jednom kada se ova transformacija pronađe, test slika se može transformisati u njenu latentnu, a klasifikator najbližeg komšije zasnovan na Hausdorfovoj udaljenosti između slika može klasifikovati latentnu (a time i test sliku) kao da pripada određenoj klasi .

Za pronalazak , probna slika I se ubacuje u trening skup za proces zgrušavanja. Pošto je test slika izvučena iz jedne od kategorija , zgušnjavanje rezultuje sa koje mapira probnu sliku I u svoj latent. Latentni se tada mogu klasifikovati. [18]

Klasifikacija sa jednim primerom

[uredi | uredi izvor]

S obzirom na skup transformacija dobijen zgušnjavanjem više slika određene kategorije, klasifikator se može proširiti na slučaj kada je dozvoljen samo jedan trening primer nove kategorije . Primenjujući sve transformacije sekvencijalno na stvara veštački trening set za kategoriju . Ovaj veštački skup podataka može se povećati pozajmljivanjem transformacija iz mnogih već poznatih kategorija. Kada se dobije ovaj skup podataka, primer , test instanca kategorije , može se klasifikovati kao u uobičajenom postupku klasifikacije. Ključna pretpostavka je da su kategorije dovoljno slične da se transformacije iz jedne mogu primeniti na drugu. [19]

Vidi još

[uredi | uredi izvor]

Reference

[uredi | uredi izvor]
  1. ^ Li, Fergus & Perona 2006, Section 2.
  2. ^ Fink 2004.
  3. ^ Bart & Ullman 2005.
  4. ^ Murphy & et al 2004.
  5. ^ Hoiem, Efros & Herbert 2005.
  6. ^ Li 2006, Section 2.
  7. ^ a b Burl & et al 1996.
  8. ^ Attias 1999.
  9. ^ Li, Fergus & Perona 2006, Section 3.1.
  10. ^ Weber, Welling & Perona 2000.
  11. ^ Fergus, Perona & Zisserman 2003.
  12. ^ Kadir & Brady 2001.
  13. ^ Li, Fergus & Perona 2006, Section 3.2.
  14. ^ a b Li, Fergus & Perona 2006, Section 3.2.1.
  15. ^ Li, Fergus & Perona 2006, Sections 4, 5.2.
  16. ^ Few-Shot Learning (2/3): Siamese Networks. Arhivirano iz originala 25. 08. 2024. g. Pristupljeno 25. 08. 2024. 
  17. ^ Miller et al.
  18. ^ Miller, Matsakis & Viola 2000, Section 4.
  19. ^ Miller, Matsakis & Viola 2000, Section 7.

Literatura

[uredi | uredi izvor]