Visuellt Turing-test

Utvalda exempelfrågor genererade av frågegeneratorn för ett Visual Turing-test

Datorsynsforskning drivs av standardutvärderingsmetoder. De nuvarande systemen testas av deras noggrannhet för uppgifter som objektdetektering , segmentering och lokalisering. Metoder som de konvolutionella neurala nätverken verkar klara sig ganska bra i dessa uppgifter, men de nuvarande systemen är fortfarande inte nära att lösa det ultimata problemet med att förstå bilder på det sätt som människor gör. Så motiverad av människors förmåga att förstå en bild och till och med berätta en historia om den, Geman et al. har introducerat Visual Turing Test för datorseendesystem.

Som beskrivs i är det "en operatörsassisterad enhet som producerar en stokastisk sekvens av binära frågor från en given testbild". Frågemotorn producerar en sekvens av frågor som har oförutsägbara svar med tanke på frågornas historia. Testet handlar bara om syn och kräver ingen naturlig språkbehandling . Den mänskliga operatörens uppgift är att ge rätt svar på frågan eller förkasta den som tvetydig. Frågegeneratorn producerar frågor så att de följer en "naturlig story line", liknande vad människor gör när de tittar på en bild.

Historia

Forskning inom datorseende går tillbaka till 1960-talet när Seymour Papert först försökte lösa problemet. Detta misslyckade försök kallades Summer Vision Project . Anledningen till att det inte lyckades berodde på att datorseende är mer komplicerat än vad folk tror. Komplexiteten är i linje med det mänskliga visuella systemet. Ungefär 50 % av den mänskliga hjärnan ägnas åt att bearbeta syn, vilket tydligt indikerar att det är ett svårt problem.

Senare gjordes försök att lösa problemen med modeller inspirerade av den mänskliga hjärnan. Perceptrons av Frank Rosenblatt , som är en form av de neurala nätverken , var en av de första sådana tillvägagångssätten. Dessa enkla neurala nätverk kunde inte leva upp till deras förväntningar och hade vissa begränsningar på grund av vilka de inte beaktades i framtida forskning.

Senare med tillgängligheten av hårdvaran och viss processorkraft övergick forskningen till bildbehandling som involverar operationer på pixelnivå, som att hitta kanter , ta bort bilder eller använda filter för att nämna några. Det gjordes stora framsteg på detta område men problemet med synen som var att få maskinerna att förstå bilderna togs fortfarande inte upp. Under denna tid dök också de neurala nätverken upp igen eftersom det visades att perceptronernas begränsningar kan övervinnas av flerskiktsperceptroner . Också i början av 1990-talet föddes konvolutionella neurala nätverk som visade fantastiska resultat på siffror igenkänning men inte skalade upp väl på svårare problem.

I slutet av 1990-talet och början av 2000-talet föddes modern datorseende. En av anledningarna till att detta hände berodde på tillgängligheten av nyckel-, funktionsextraktions- och representationsalgoritmer. Funktioner tillsammans med de redan befintliga maskininlärningsalgoritmerna användes för att detektera, lokalisera och segmentera objekt i bilder.

Medan alla dessa framsteg gjordes kände samhället ett behov av att ha standardiserade datauppsättningar och utvärderingsmått så att prestandan kan jämföras. Detta ledde till uppkomsten av utmaningar som Pascal VOC-utmaningen och ImageNet -utmaningen. Tillgången till standardutvärderingsmått och de öppna utmaningarna gav vägledning till forskningen. Bättre algoritmer introducerades för specifika uppgifter som objektdetektering och klassificering.

Visual Turing Test syftar till att ge en ny riktning till forskningen om datorseende som skulle leda till införandet av system som kommer att vara ett steg närmare att förstå bilder på det sätt som människor gör.

Aktuella utvärderingsmetoder

Ett stort antal datauppsättningar har kommenterats och generaliserats för att jämföra prestanda för olika klasser av algoritmer för att bedöma olika synuppgifter (t.ex. objektdetektering/igenkänning) på någon bilddomän (t.ex. scenbilder).

En av de mest kända datamängderna inom datorseende är ImageNet som används för att bedöma problemet med bildklassificering på objektnivå. ImageNet är en av de största annoterade datamängder som finns tillgängliga och har över en miljon bilder. Den andra viktiga visionuppgiften är objektdetektering och lokalisering, vilket hänvisar till att detektera objektinstansen i bilden och tillhandahålla begränsningsrutans koordinater runt objektinstansen eller segmentera objektet. Den mest populära datamängden för denna uppgift är Pascal-datauppsättningen. På liknande sätt finns det andra datauppsättningar för specifika uppgifter som H3D -datauppsättningen för mänsklig posedetektering, Core-dataset för att utvärdera kvaliteten på detekterade objektattribut som färg, orientering och aktivitet.

Att ha dessa standarddatauppsättningar har hjälpt vision-gemenskapen att komma fram till extremt välpresterande algoritmer för alla dessa uppgifter. Nästa logiska steg är att skapa en större uppgift som omfattar dessa mindre deluppgifter. Att ha en sådan uppgift skulle leda till att bygga system som skulle förstå bilder, eftersom förståelse av bilder i sig skulle innebära att detektera objekt, lokalisera dem och segmentera dem.

Detaljer

Visual Turing Test (VTT) har till skillnad från Turing-testet ett frågemotorsystem som förhör ett datorseendesystem i närvaro av en mänsklig koordinator.

Det är ett system som genererar en slumpmässig sekvens av binära frågor som är specifika för testbilden, så att svaret på vilken fråga k som helst är oförutsägbart givet de sanna svaren på de tidigare k − 1 frågorna (även känd som frågornas historia).

Testet sker i närvaro av en mänsklig operatör som tjänar två huvudsyften: att ta bort de tvetydiga frågorna och ge de korrekta svaren på de entydiga frågorna. Med tanke på en bild kan oändliga möjliga binära frågor ställas och många av dem är skyldiga att vara tvetydiga. Om dessa frågor genereras av frågemotorn tas bort av den mänskliga moderatorn och istället genererar frågemotorn en annan fråga så att svaret på den är oförutsägbart med tanke på frågornas historia.

Syftet med Visual Turing-testet är att utvärdera bildförståelsen i ett datorsystem, och en viktig del av bildförståelsen är bildens berättelse. När människor tittar på en bild tror de inte att det finns en bil vid ' x ' pixlar från vänster och ' y ' pixlar från toppen, utan istället ser de på den som en historia, t.ex. kan de tro att det finns är en bil parkerad på vägen, en person går ur bilen och är på väg mot en byggnad. De viktigaste delarna av berättelsen är objekten och för att extrahera en berättelse från en bild är den första och viktigaste uppgiften att instansiera objekten i den, och det är vad frågemotorn gör.

Frågemotor

Frågemotorn är kärnan i Visual Turing-testet och den består av två huvuddelar: ordförråd och frågor

Ordförråd

Ordförråd är en uppsättning ord som representerar elementen i bilderna. Denna vokabulär när den används med lämplig grammatik leder till en uppsättning frågor. Grammatiken definieras i nästa avsnitt på ett sätt som leder till ett utrymme av binära frågor.

Ordförrådet består av tre komponenter:

  1. Typer av objekt
  2. Typberoende attribut för objekt
  3. Typberoende relationer mellan två objekt

För bilder av urbana gatuscener inkluderar typerna av objekt människor , fordon och byggnader . Attribut avser egenskaperna hos dessa föremål, till exempel kvinna, barn, bärande hatt eller bärande något, för människor och rör sig, parkerade, stannade, ett däck synligt eller två däck synliga för fordon. Relationer mellan varje par av objektklasser kan vara antingen "ordnade" eller "oordnade". De oordnade relationerna kan inkludera att prata , tillsammans och de ordnade relationerna inkluderar längre , närmare kameran, ockludering, att vara ockluderad etc.

Provregioner som används som sammanhang i ett Visual Turing-test. Den till vänster visar regioner med 1/8 av bildens storlek och den till höger visar regioner med 1/4 storlek på bilden

Dessutom används hela denna vokabulär i samband med rektangulära bildområden w \in W som tillåter lokalisering av objekt i bilden. Ett extremt stort antal sådana regioner är möjliga och detta komplicerar problemet, så för detta test används endast regioner i specifika skalor som inkluderar 1/16 av bildens storlek, 1/4 av bildens storlek, 1/2 storleken av bild eller större.

Frågor

Frågeutrymmet är sammansatt av fyra typer av frågor:


  • Existensfrågor: Syftet med existensfrågorna är att hitta nya objekt i bilden som inte har identifierats unikt tidigare. De är av formen :
 Q  exist  = 'Finns det en instans av ett objekt av typen t med attribut A delvis synligt i region w som inte tidigare instansierats?' 
  • Unikitetsfrågor: En unikhetsfråga försöker unikt identifiera ett objekt för att instansiera det.
 Q  uniq  = 'Finns det en unik instans av ett objekt av typen t med attribut A delvis synligt i region w som inte tidigare instansierats?' 

Unikitetsfrågorna tillsammans med existensfrågorna bildar instansieringsfrågorna. Som tidigare nämnts leder instansiering av objekt till andra intressanta frågor och så småningom en berättelse. Unikitetsfrågor följer existensfrågorna och ett positivt svar på det leder till instansiering av ett objekt.

  • Attributfrågor: En attributfråga försöker hitta mer om objektet när det har instansierats. Sådana frågor kan fråga om ett enstaka attribut, en konjunktion av två attribut eller disjunktion av två attribut.
 Q  att  (o  t  ) = {'Har objekt o  t  attribut a?'  , "  Har objektet inte  attribut  a  1  eller attribut a  2  ?"  , '  Har objekt inte  attribut  a  1  och attribut a  2  ?'} 
  • Relationsfrågor: När flera objekt har instansierats utforskar en relationsfråga relationen mellan par av objekt.
 Q  rel  (o  t  ,o  t'  ) = 'Har objekt o  t  relation r med objekt o  t'  ?' 

Genomförande detaljer

Som nämnts tidigare är kärnan i Visual Turing-testet frågegeneratorn som genererar en sekvens av binära frågor så att svaret på vilken fråga k som helst är oförutsägbart givet de korrekta svaren på de föregående k − 1 frågorna. Detta är en rekursiv process, med tanke på en historia av frågor och deras korrekta svar, så stannar frågegeneratorn antingen för att det inte finns några fler oförutsägbara frågor eller väljer slumpmässigt en oförutsägbar fråga och lägger till den i historiken.

Frågeutrymmet som definierats tidigare sätter implicit en begränsning på flödet av frågorna. För att göra det tydligare betyder detta att attribut- och relationsfrågorna inte kan föregå instansieringsfrågorna. Först när objekten har instansierats kan de frågas om deras attribut och relationer till andra tidigare instansierade objekt. Sålunda givet en historik kan vi begränsa de möjliga frågor som kan följa den, och denna uppsättning frågor hänvisas till som kandidatfrågorna .

Uppgiften är att välja en oförutsägbar fråga från dessa kandidatfrågor så att den överensstämmer med frågeflödet som vi kommer att beskriva i nästa avsnitt. För detta, hitta oförutsägbarheten i varje fråga bland kandidatfrågorna.

Låt vara en binär slumpvariabel, där om historiken är giltig för bild och annars. Låt vara den föreslagna frågan, och vara svaret på frågan .

Hitta sedan den betingade sannolikheten att få svaret X q på frågan q givet historiken H .

Givet denna sannolikhet ges måttet på oförutsägbarheten av:

Ju närmare är 0, desto mer oförutsägbar är frågan. för varje fråga beräknas. Frågorna för vilka är uppsättningen av nästan oförutsägbara frågor och nästa fråga väljs slumpmässigt från dessa.

Frågeflöde

Som diskuterats i föregående avsnitt finns det en implicit ordning i frågeutrymmet, enligt vilken attributfrågorna kommer efter instansieringsfrågorna och relationsfrågorna kommer efter attributfrågorna, när flera objekt har instansierats.

Därför följer frågemotorn en loopstruktur där den först instansierar ett objekt med existens- och unikhetsfrågorna, sedan frågar om dess attribut, och sedan ställs relationsfrågorna för det objektet med alla tidigare instansierade objekt.

Sök framåt

Det är tydligt att de intressanta frågorna om attributen och relationerna kommer efter instansieringsfrågorna, och därför syftar frågegeneratorn till att instansiera så många objekt som möjligt.

Instantieringsfrågor är sammansatta av både existens- och unikhetsfrågorna, men det är unikhetsfrågorna som faktiskt instansierar ett objekt om de får ett positivt svar. Så om frågegeneratorn måste slumpmässigt välja en instansieringsfråga, föredrar den att välja en oförutsägbar unikhetsfråga om den finns. Om en sådan fråga inte finns, väljer frågegeneratorn en existensfråga så att den kommer att leda till en unikhetsfråga med hög sannolikhet i framtiden. Således utför frågegeneratorn en sökning framåt i det här fallet.

Story

En integrerad del av det yttersta målet att bygga system som kan förstå bilder på det sätt som människor gör, är handlingen. Människor försöker lista ut en berättelse i bilden de ser. Frågegeneratorn uppnår detta genom en kontinuitet i frågesekvenserna.

Detta innebär att när objektet väl har instansierats försöker det utforska det mer detaljerat. Förutom att hitta dess attribut och relation till de andra objekten är lokalisering också ett viktigt steg. Som ett nästa steg försöker frågegeneratorn således att lokalisera objektet i den region som det först identifierades, så den begränsar uppsättningen av instansieringsfrågor till regionerna inom den ursprungliga regionen.

Enkelhet preferens

Inställningen för enkelhet anger att frågegeneratorn ska välja enklare frågor framför de mer komplicerade. Enklare frågor är de som har färre attribut i sig. Så detta ger en ordning på frågorna baserat på antalet attribut, och frågegeneratorn föredrar de enklare.

Uppskattning av förutsägbarhet


För att välja nästa fråga i sekvensen måste VTT uppskatta förutsägbarheten för varje föreslagen fråga. Detta görs med hjälp av den kommenterade träningsuppsättningen Bilder. Varje bild är kommenterad med en ram runt objekten och märkt med attributen, och par av objekt är märkta med relationerna. Tänk på varje frågetyp separat:




  1. Instantieringsfrågor : Den villkorade sannolikhetsskattaren för instansieringsfrågor kan representeras som: Frågan beaktas endast om nämnaren är minst 80 bilder. Villkoret för är mycket strikt och kanske inte stämmer för ett stort antal bilder, eftersom varje fråga i historien eliminerar ungefär hälften av kandidaterna (Bilder i denna fall). Som ett resultat beskärs historiken och de frågor som kanske inte ändrar den villkorade sannolikheten elimineras. Med en kortare historik kan vi överväga ett större antal bilder för sannolikhetsuppskattningen. Historiebeskärningen görs i två steg:
    • I det första steget tas alla attribut- och relationsfrågor bort, under antagandet att förekomsten och instansieringen av objekt endast beror på andra objekt och inte deras attribut eller relationer. Dessutom tas alla existensfrågor som hänvisar till regioner som är åtskilda från regionen som hänvisas till i den föreslagna frågan bort med antagandet att sannolikheten för närvaron av ett objekt på en plats w {\displaystyle w} med närvaro eller frånvaro av objekt på andra platser än . Och slutligen tas alla unika frågor med ett negativt svar som hänvisar till regioner som är åtskilda från regionen som hänvisas till i den föreslagna frågan bort med antagandet att unikhetsfrågorna med ett positivt svar om de släpps kan ändra svaret på de framtida instansieringsfrågorna. Historiken av frågor som erhållits efter detta första steg av beskärning kan refereras till som .

    • I det andra steget utförs en bild-för-bild-beskärning. Låt vara en unikhetsfråga i som inte har beskärs och som finns bevarad i . Om denna fråga är i kontexten av en region som är skild från den region som refereras till i den föreslagna frågan, kommer det förväntade svaret på denna fråga att vara 1 {\ på grund av begränsningarna i det första steget. Men om det faktiska svaret på denna fråga för träningsbilden är , så beaktas inte den träningsbilden för sannolikhetsuppskattningen, och frågan tas också bort. Den slutliga historiken för frågor efter detta är , och sannolikheten ges av:



  2. Attributfrågor : Sannolikhetsskattaren för attributfrågor beror på antalet märkta objekt snarare än bilderna till skillnad från instansieringsfrågorna. Tänk på en attributfråga i formen: "Har objektet inget attribut a?" , där är ett objekt av typen och . Låt vara den uppsättning attribut som redan är kända för att tillhöra på grund av historiken. Låt vara mängden av alla kommenterade objekt (marksanning) i träningsuppsättningen, och för varje , låt vara typen av objekt, och vara den uppsättning attribut som hör till . Då ges estimatorn av: princip förhållandet mellan antalet gånger objektet av typen med attribut förekommer i träningsdata, till antalet gånger objektet av typen med attribut förekommer i träningsdatan. Ett stort antal attribut i leder till ett sparsitetsproblem som liknar instansieringsfrågorna. För att hantera det delar vi upp attributen i delmängder som är ungefär oberoende beroende på att de tillhör objektet . För t.ex. för person är attribut som att korsa en gata och stå still inte oberoende, men båda är ganska oberoende av personens kön, om personen är barn eller vuxen , och om de bär på något eller inte . Dessa villkorade oberoende minskar storleken på mängden och övervinner därmed problemet med sparsitet.
  3. Relationsfrågor : Tillvägagångssättet för relationsfrågor är detsamma som attributfrågorna, där istället för antalet objekt, antalet par av objekt beaktas och för oberoendeantagandet, de relationer som är oberoende av attributen för de relaterade objekten och de relationer som är oberoende av varandra ingår.

Exempel

Detaljerade exempelsekvenser finns här .

Datauppsättning

Bilderna som övervägdes för Geman et al. Arbetet är det med 'Urban street scenes' dataset, som har scener av gator från olika städer över hela världen. Detta är anledningen till att typerna av föremål är begränsade till människor och fordon för detta experiment.

Bilder på Urban Street-scenerna från träningsdata. Träningsdata är en samling av sådana bilder med scener från olika städer över hela världen

En annan datauppsättning som introducerats av Max Planck Institute for Informatics är känd som DAQUAR-datauppsättning som har bilder från verkliga världen av inomhusscener. Men de föreslår en annan version av det visuella Turing-testet som tar ett holistiskt tillvägagångssätt och förväntar sig att det deltagande systemet ska uppvisa mänskligt sunt förnuft.

Exempelanteckningar på utbildningsbild som tillhandahålls av de mänskliga arbetarna

Slutsats

Detta är ett mycket färskt arbete som publicerades den 9 mars 2015, i tidskriften Proceedings of the National Academy of Sciences , av forskare från Brown University och Johns Hopkins University . Den utvärderar hur datorseendesystemen förstår bilderna jämfört med människor. För närvarande är testet skrivet och förhörsledaren är en maskin eftersom att ha en muntlig utvärdering av en mänsklig förhörsledare ger människorna en otillbörlig fördel av att vara subjektiva och förväntar sig även realtidssvar.

Visual Turing-testet förväntas ge en ny riktning till forskningen om datorseende. Företag som Google och Facebook investerar miljontals dollar i forskning om datorseende och försöker bygga system som liknar det mänskliga visuella systemet. Nyligen Facebook sin nya plattform M, som tittar på en bild och ger en beskrivning av den för att hjälpa synskadade. Sådana system kanske kan fungera bra på VTT.