Engångslärande

Engångsinlärning är ett problem med objektkategorisering, som mest finns i datorseende . Medan de flesta maskininlärningsbaserade objektkategoriseringsalgoritmer kräver träning i hundratals eller tusentals exempel, syftar one-shot learning till att klassificera objekt från ett, eller endast ett fåtal, exempel. Termen få-skottslärning används också för dessa problem, särskilt när mer än ett exempel behövs.

Motivering

Förmågan att lära sig objektkategorier från få exempel, och i snabb takt, har visats hos människor. Det uppskattas att ett barn lär sig nästan alla 10 ~ 30 tusen objektkategorier i världen vid sex års ålder. Detta beror inte bara på det mänskliga sinnets beräkningskraft, utan också på dess förmåga att syntetisera och lära sig nya objektkategorier från befintlig information om olika, tidigare inlärda kategorier. Med tanke på två exempel från två objektkategorier: ett, ett okänt objekt sammansatt av välbekanta former, det andra, en okänd, amorf form; det är mycket lättare för människor att känna igen det förra än det senare, vilket tyder på att människor använder sig av tidigare inlärda kategorier när de lär sig nya. Den viktigaste motivationen för att lösa one-shot-inlärning är att system, liksom människor, kan använda kunskap om objektkategorier för att klassificera nya objekt.

Bakgrund

Som med de flesta klassificeringsscheman innefattar engångslärande tre huvudutmaningar:

  • Representation: Hur ska objekt och kategorier beskrivas?
  • Lärande: Hur kan sådana beskrivningar skapas?
  • Igenkänning: Hur kan ett känt objekt filtreras från omslutande röran, oavsett ocklusion, synvinkel och belysning?

One-shot-inlärning skiljer sig från enstaka objektigenkänning och standardkategoriigenkänningsalgoritmer i sin betoning på kunskapsöverföring, som använder sig av tidigare inlärda kategorier.

  • Modellparametrar: Återanvänder modellparametrar, baserat på likheten mellan gamla och nya kategorier. Kategorier lärs först på många träningsexempel, sedan lär man sig nya kategorier genom att transformera modellparametrar från dessa initiala kategorier eller välja relevanta parametrar för en klassificerare.
  • Funktionsdelning: Delar delar eller funktioner av objekt över kategorier. En algoritm extraherar "diagnostisk information" i patchar från redan inlärda kategorier genom att maximera patcharnas ömsesidiga information och sedan tillämpar dessa funktioner på inlärningen av en ny kategori. En hundkategori kan till exempel läras in i ett skott från tidigare kunskaper om häst- och kokategorier, eftersom hundföremål kan innehålla liknande särskiljande fläckar.
  • Kontextuell information: Tilltalar global kunskap om scenen där objektet förekommer. Sådan global information kan användas som frekvensfördelningar i ett villkorligt ramverk för slumpmässiga fält för att känna igen objekt. Alternativt kan sammanhanget överväga kamerahöjd och scengeometri. Algoritmer av denna typ har två fördelar. Först lär de sig objektkategorier som är relativt olika; och för det andra fungerar de bra i ad hoc-situationer där en bild inte har beskurits och justerats för hand.

Teori

Den Bayesianska one-shot inlärningsalgoritmen representerar förgrunden och bakgrunden för bilder som parametriseras av en blandning av konstellationsmodeller. Under inlärningsfasen lärs parametrarna för dessa modeller in med hjälp av en konjugerad densitetsparameter posterior och Variational Bayesian Expectation-Maximization (VBEM). I detta skede informerar de tidigare inlärda objektkategorierna valet av modellparametrar via överföring av kontextuell information. För objektigenkänning på nya bilder används den posteriora erhållna under inlärningsfasen i ett Bayesianskt beslutsramverk för att uppskatta förhållandet mellan p(objekt | test, tåg) och p(bakgrundsklotter | test, tåg) där p är sannolikheten för resultatet.

Bayesiansk ram

Med tanke på uppgiften att hitta ett visst objekt i en frågebild, är det övergripande syftet med den Bayesianska one-shot-inlärningsalgoritmen att jämföra sannolikheten för att objektet är närvarande med sannolikheten att endast bakgrundsclutter är närvarande. Om den förra sannolikheten är högre, rapporterar algoritmen objektets närvaro, annars rapporterar algoritmen sin frånvaro. För att beräkna dessa sannolikheter måste objektklassen modelleras från en uppsättning (1 ~ 5) träningsbilder som innehåller exempel.

För att formalisera dessa idéer, låt vara frågebilden, som antingen innehåller ett exempel på förgrundskategorin eller bara bakgrundsplätt av en generisk bakgrundskategori . Låt också vara uppsättningen träningsbilder som används som förgrundskategori. Beslutet om innehåller ett objekt från förgrundskategorin eller bara röran från bakgrundskategorin är:

där klassen posteriors och har utökats av Bayes' sats , vilket ger ett förhållande mellan sannolikheter och ett förhållande mellan objektkategori priors . Vi bestämmer att bilden innehåller ett objekt från förgrundsklassen om överskrider en viss tröskel . Vi introducerar sedan parametriska modeller för förgrunds- och bakgrundskategorierna med parametrarna respektive . Denna parametriska förgrundsmodell lärs in under inlärningsstadiet från såväl som tidigare information om inlärda kategorier. Bakgrundsmodellen antar vi vara enhetlig över bilder. Utelämnar det konstanta förhållandet av kategori priors, och parametrisering över och ger

p och till och

Den bakre fördelningen av modellparametrar givet träningsbilderna, uppskattas i inlärningsfasen. I denna uppskattning skiljer sig engångsinlärning kraftigt från mer traditionella Bayesianska skattningsmodeller som approximerar integralen som . Istället använder den ett varierande tillvägagångssätt med hjälp av tidigare information från tidigare inlärda kategorier. Den traditionella maximala sannolikhetsuppskattningen av modellparametrarna används dock för bakgrundsmodellen och de kategorier som lärts i förväg genom utbildning.

Objektkategorimodell

För varje frågebild och träningsbilder används en konstellationsmodell för representation. För att erhålla denna modell för en given bild detekteras först en uppsättning N intressanta regioner i bilden med hjälp av Kadir brady saliency-detektorn . Varje vald region representeras av en plats i bilden, och en beskrivning av dess utseende, . Låter och och de analoga representationerna för träningsbilder, uttrycket för R blir:

Sannolikheterna och representeras som blandningar av konstellationsmodeller. En typisk konstellationsmodell har P(3 ~ 7) delar, med N(~100) intresseområden. Således tilldelar en P-dimensionell vektor h en region av intresse (av N regioner) till varje modelldel (för P-delar). Således betecknar h en hypotes (en tilldelning av intresseregioner till modelleringsdelar) för modellen och en full konstellationsmodell representeras genom att summera alla möjliga hypoteser h i hypotesutrymmet . Äntligen är sannolikheten skriven

De olika representerar olika konfigurationer av delar, medan de olika hypoteserna h representerar olika tilldelningar av regioner till delar, givet en delmodell . Antagandet att modellens form (som representeras av , samlingen av delplatser) och utseende är oberoende gör att man kan överväga sannolikhetsuttrycket som två separata sannolikheter för utseende och form.

Utseende

Utseendet för varje funktion representeras av en punkt i utseendeutrymmet (diskuteras nedan i implementering). "Varje del i konstellationsmodellen har en Gaussisk densitet inom detta utrymme med medelvärde och precisionsparametrar " Utifrån dessa beräknas den ovan beskrivna sannolikheten för utseende som en produkt av Gausser över modelldelarna för en giva hypotes h och blandningskomponent .

Form

Formen på modellen för en given blandningskomponent och hypotesen h representeras som en gemensam Gaussisk täthet av egenskapernas lägen. Dessa särdrag omvandlas till ett skala- och translationsinvariant utrymme innan de modelleras delarnas relativa läge med en 2(P - 1)-dimensionell Gaussian. Från detta får vi formsannolikheten, och kompletterar vår representation av . För att minska antalet hypoteser i hypotesutrymmet beaktas endast de hypoteser som uppfyller ordningsbegränsningen att x-koordinaten för varje del är monotont ökande. Detta eliminerar hypoteser från .

Konjugerade tätheter

För att beräkna , integralen måste utvärderas, men är analytiskt svårhanterlig. Objektkategorimodellen ovan ger information om så det som återstår är att undersöka den bakre delen av , och hitta en tillräcklig approximation för att göra integralen traktbar. Tidigare arbete approximerar den bakre med en -funktion centrerad vid , och kollapsar integralen i fråga till . Denna uppskattas normalt med en maximal sannolikhet ( eller Maximum A Posteriori ( ) procedur. Men eftersom få träningsexempel används i engångsinlärning, kommer fördelningen inte att vara vältoppad, vilket antas i en funktionsapproximation. Så istället för denna traditionella approximation, försöker Bayesianska one-shot inlärningsalgoritmen att "hitta en parametrisk form av så att inlärningen av är genomförbart". Algoritmen använder en Normal - Wishart-fördelning som konjugat före p , och i inlärningsfasen används variationsmässiga Bayesianska metoder med samma beräkningskomplexitet som maximum likelihood-metoder för att lära sig fördelningens hyperparametrar . Sedan, eftersom är en produkt av Gausser, som valts i objektkategorimodellen, reduceras integralen till en multivariat Students T-fördelning , vilket kan utvärderas.

Genomförande

Funktionsdetektering och representation

För att upptäcka särdrag i en bild så att den kan representeras av en konstellationsmodell, används Kadir Brady-funktionsdetektorn på bilder i gråskala och hittar framträdande områden i bilden. Dessa regioner klustras sedan, vilket ger ett antal funktioner (klustren) och formparametern sammansatt av klustrets centra. Kadir Brady-detektorn valdes eftersom den producerar färre, mer framträdande regioner, i motsats till funktionsdetektorer som multiscale Harris, som producerar många mindre betydande regioner.

Regionerna tas sedan från bilden och skalas om till en liten lapp på 11 x 11 pixlar, vilket gör att varje lapp kan representeras i 121-dimensionellt rymd. Denna dimensionalitet reduceras med hjälp av principal komponentanalys och utseendeparametern, bildas sedan av de första 10 huvudkomponenterna i varje patch.

Inlärning

För att erhålla form- och utseendepreferenser lär man sig tre kategorier (fläckiga katter, ansikten och flygplan) med hjälp av maximal sannolikhetsuppskattning. Dessa objektkategorimodellparametrar används sedan för att uppskatta hyperparametrarna för de önskade priorerna.

Med en uppsättning träningsexempel kör algoritmen funktionsdetektorn på dessa bilder och bestämmer modellparametrar från de framträdande regionerna. Hypotesindexet h som tilldelar egenskaper till delar förhindrar en sluten lösning av den linjära modellen, så den bakre uppskattas genom variationsmässig Bayesiansk förväntningsmaximering, som körs tills parameterkonvergens efter ~ 100 iterationer. Att lära sig en kategori på det här sättet tar under en minut på en 2,8 GHz-maskin med en 4-delad modell och < 10 träningsbilder.

Experimentella resultat

Exempel på motorcykel

För att lära dig motorcykelkategorin:

  • Sex träningsbilder väljs från motorcykelkategorin i Caltech 4 Data Set och Kadir Brady-detektorn appliceras, vilket ger och genom PCA , .
  • Därefter beräknas parametrarna för föregående modell från 30 modeller 10 från var och en av de tre inlärda kategorierna: fläckiga katter, ansikten och flygplan. Denna beskrivning kodar för kunskapen att "modeller som saknar visuell konsistens [dvs bakgrundskonsistens] upptar en annan del av parameterutrymmet [från] koherenta modeller."
  • Vid inlärning, som utförs härnäst, biasar priorn den bakre mot delar av parameterutrymmet som motsvarar koherenta modeller. Endast en blandningskomponent används, låter . Uppskattningen av den bakre delen visas nedan.
  • Slutligen visar figurerna nedan den lärda motorcykelmodellen med form och utseende på delar, och motsvarande funktioner.
  • För igenkänningstest tillämpas modellen ovan på 50 bilder som innehåller motorcyklar och 50 som inte gör det. Bilden nedan visar en ROC-kurva, som mäter sannolikheten för upptäckt över sannolikheten för falsk detektering, samt några kända exempel.

Delade densiteter på transformationer

En annan algoritm använder kunskapsöverföring genom modellparametrar för att lära sig en ny objektkategori som till utseendet liknar tidigare inlärda kategorier. En bild representeras som antingen en textur och form, eller som en latent bild som har transformerats, betecknad med .

Ett siamesiskt neuralt nätverk arbetar i tandem på två olika ingångsvektorer för att beräkna jämförbara utdatavektorer.

Stelnar

I detta sammanhang är stelning "den samtidiga vektoriseringen av var och en av en uppsättning bilder till varandra". För en uppsättning träningsbilder av en viss kategori omvandlar stelning iterativt varje bild för att minimera bildernas gemensamma pixelvisa entropier E, där

"där är den binära slumpmässiga variabeln definierad av värdena för en viss pixel p över alla bilder, är den diskreta entropifunktionen av den variabeln, och är uppsättningen av pixelindex för bilden."

Den stelnade algoritmen börjar med en uppsättning bilder och en motsvarande transformationsmatris som i slutet av algoritmen kommer att representera transformationen av till sin latenta . Dessa latenta minimerar de gemensamma pixelvisa entropierna. Sålunda är uppgiften för stelningsalgoritmen att uppskatta transformationerna .

Skiss av algoritm:

  • Initiera till identiteten.
  • Beräkna de gemensamma pixelvisa entropierna för den aktuella uppsättningen bilder.
  • För varje bild , iterera genom alla möjliga affina transformationer (rotation, x-translation, y-translation, x-scale, y-scale, x-shear, y -skjuvning) och testa om minskar de gemensamma pixelvisa entropierna. Om så är fallet, ställ in .
  • Upprepa föregående steg tills konvergens.

I slutet av algoritmen, och omvandlar den latenta bilden tillbaka till den ursprungligen observerade bilden.

Klassificering

För att använda denna modell för klassificering måste den uppskattas med maximal posterior sannolikhet givet en observerad bild . Att tillämpa Bayes regel på och parametrisering genom transformationen ger en svår integral som måste approximeras, och sedan den bästa transformationen (det som mappar testbilden till dess latenta bild) måste hittas. När denna transformation väl har hittats kan testbilden omvandlas till sin latenta, och en närmaste grannklassificerare baserad på Hausdorffs avstånd mellan bilder kan klassificera latenten (och därmed testbilden) som tillhörande en viss klass .

För att hitta infogas testbilden I i träningsensemblen för stelningsprocessen. Eftersom testbilden är hämtad från en av kategorierna ger stelning ett motsvarande som mappar I till dess latenta. Det latenta kan sedan klassificeras.

Klassificering med ett exempel

Givet en uppsättning transformationer som erhållits från stelning av många bilder av en viss kategori, kan klassificeraren utökas till fallet där endast en träning I t {\ exempel på en ny kategori är tillåten. Genom att tillämpa alla transformationer sekventiellt på skapas en artificiell träningsuppsättning för . Denna artificiella datamängd kan göras större genom att låna transformationer från många redan kända kategorier. När denna datamängd väl har erhållits , en testinstans av , klassificeras som i den normala klassificeringsproceduren. Det viktigaste antagandet är att kategorier är tillräckligt lika för att transformationerna från en kan tillämpas på en annan.

I naturlig språkbehandling

Med introduktionen av praxis att skala upp språkmodeller som OpenAI:s GPT-2 och GPT-3 , har få-shot-prestanda för sådana modeller visat sig uppnå konkurrenskraftiga resultat på naturliga språkbearbetningsuppgifter (NLP), ibland överträffande tidigare tillstånd -moderna finjusteringsmetoder . Exempel på sådana NLP-uppgifter är översättning , frågesvar , cloze -uppgifter, avkodning av ord och att använda ett nytt ord i en mening. I dessa fall har one-shot och few-shot inlärning demonstrerats enbart via textinteraktion med modellen. Detta görs genom att föreställa exempel direkt till prompten som matas in i modellen för slutledning . Skapandet och optimeringen av sådana uppmaningar kallas prompt engineering och är nu ett aktivt studieområde.

Se även

Citat