Under huven: Photo Search-Facebook Engineering

idag utmanar volymen av bilder som tas av personer med smarttelefonkameror gränserna för strukturerad kategorisering. Det är svårt för en person att kategorisera sitt eget förråd av smartphone-bilder, mycket mindre att definiera en strukturerad taxonomi för allas foton.

på Facebook delar människor miljarder bilder varje dag, vilket gör det svårt att rulla bakåt i tid för att hitta bilder som lagts upp för några dagar sedan, än mindre månader eller år sedan., För att hjälpa människor att hitta de bilder de letar efter lättare, Facebook Foto Sök team tillämpade maskininlärningstekniker för att bättre förstå vad som finns i en bild samt förbättra Sök-och hämtningsprocessen.

fotosökning byggdes med Unicorn, ett in-memory-och flashlagringsindexeringssystem utformat för att söka trillioner av kanter mellan tiotals miljarder användare och enheter. Skapad för några år sedan för att driva den sociala grafmedveten grafsökning, Unicorn stöder miljarder frågor per dag driver flera komponenter i Facebook.,

grafsökning byggdes för att hämta objekt från den sociala grafen baserat på relationerna mellan dem, till exempel ”Mina vänner som bor i San Francisco.”Detta har visat sig vara effektivt men innebär tekniska utmaningar när man begränsar frågan till en relevant delmängd, sorterar och poängterar resultaten för relevans och sedan levererar de mest relevanta resultaten. För att öka detta tillvägagångssätt tillämpade Photo Search-teamet djupa neurala nätverk för att förbättra noggrannheten hos bildsökningar baserat på visuellt innehåll i bilden och sökbar text.,

vilken sökning behöver förstå om bilder

att förstå bilder på Facebook: s skala innebär olika utmaningar jämfört med att visa låga felfrekvenser för bildigenkänning i tävlingen Imagenet Challenge. Tillämpad forskning har producerat avancerade djupa inlärningstekniker som kan bearbeta miljarder bilder för att extrahera sökbar semantisk mening i enorm skala. Var och en av de offentliga bilder som laddas upp till Facebook behandlas av ett distribuerat realtidssystem som heter image understanding engine.,

bildförståelsemotorn är ett djupt neuralt nätverk med miljontals inlärbara parametrar. Motorn bygger på toppen av det toppmoderna djupa kvarvarande nätverket utbildat med tiotals miljoner bilder med anteckningar. Det kan automatiskt förutsäga en rik uppsättning begrepp, inklusive scener, föremål, djur, attraktioner och kläder objekt. Vi kan träna modeller och lagra användbar information i förväg, vilket möjliggör låg latens svar på användarfrågor.,

bildförståelsemotorn producerar högdimensionella floatvektorer av semantiska funktioner som är för beräkningsintensiva för indexering och sökning på Facebook: s skala. Genom att utnyttja iterativ kvantifiering och lokalkänslig hashteknik komprimeras funktionerna ytterligare till ett litet antal bitar som fortfarande bevarar det mesta av semantiken. Bitrepresentationen används som kompakt inbäddning av de bilder som kan användas direkt i ranking, hämtning och foto deduplication., De kompakta inbäddningarna rangordnar resultatordningen som svar på sökfrågan. Det är en liknande teknik som tillämpas på dokumentsökning och hämtning, för vilken Unicorn ursprungligen skapades, med olika algoritmer applicerade på de djupa neurala nätverkslagren som är specifika för att söka en storskalig samling bilder. Objekttaggarna och semantiska inbäddningar fyller Unicorn med ett index för sökfrågor. En uppdatering för att använda kompakta inbäddningar för låg latens hämtning är under utveckling.,

att använda taggar och inbäddningar för modellering

en komplex rankningsmodell som tillämpas på hela fotobutiken är inte möjlig med tanke på Facebook: s skala och människors förväntningar på ett snabbt svar på deras frågor. En relevant modell som tillämpas på taggar och inbäddningar uppskattar relevans och ger låg latens frågeresultat.

Konceptrelevans

relevans bedöms med Rich query och photo concept signals genom att jämföra konceptuppsättningarna med en likhetsfunktion., Till exempel är frågekoncepten direkt korrelerade till ett foto begrepp för frågan ”Central Park” för att främja on-topic bilder och ta bort Off-topic bilder under rankningen.

inbäddning relevans

direkt mätning av begreppet korrelation mellan en fråga och ett resultat är ofta inte tillräckligt för att exakt förutsäga relevans. Den relevanta modellen som utvecklades utnyttjar multimodalt lärande för att lära sig en gemensam inbäddning mellan en fråga och en bild.,

ingångarna till modellen är inbäddningsvektorerna för frågan och fotoresultatet. Syftet med träningen är att minimera klassificeringsförlusten. Varje vektor utbildas tillsammans och bearbetas av flera lager av ett djupt neuralt nätverk för att producera en binär signal, där ett positivt resultat betecknar en match och negativ betecknar en icke-match. Fråge-och fotoinmatningsvektorerna produceras av sina separata nätverk, eventuellt med ett annat antal lager. Nätverken kan utbildas eller finjusteras tillsammans med parametrarna för ingjutningsskiktet.,

inbäddning med rankningsförlust

tillvägagångssättet som beskrivs ovan för att bestämma relevans mellan en fråga och ett foto formuleras som ett klassificeringsproblem. Det huvudsakliga målet med rankningen är dock att bestämma den bästa ordningen för uppsättningen fotoresultat. Vi gick utöver klassificering formulering och används utbildning med en ranking förlust som behandlar ett par relevanta och icke-relevanta resultat för en enda fråga samtidigt.

som visas i denna figur är den högra delen av modellen en djup kopia av den vänstra delen; det vill säga den delar samma nätverksstruktur och parametrar., Under träning matas en fråga och dess två resultat i vänster respektive höger komponenter. Den positiva bilden rankas högre än den negativt rankade bilden för en viss fråga. Denna utbildningsstrategi visar betydande vinster i ranking kvalitetsmått.

fråga förståelse tillämpas på fotosökning

foto corpus är sökbar med Unicorn, med de inbäddningar som tillämpas av bild förståelse motorn., Bitmappen är disassocierad Från fråga och hämtning förutom det index som används för att hämta fotot om frågesemantiken som tillämpas på inbäddningarna ger en hög sannolikhet för relevans. Några av de viktigaste signalerna som spelar en roll för att förstå frågans semantik sammanfattas nedan:

Frågeintentioner föreslår vilka typer av scener vi ska hämta. Till exempel bör en fråga med avsikt att få ett djur visa fotoresultat med djuret som ett centralt ämne.,

syntaktisk analys hjälper till att förstå en mening grammatiska beståndsdelar, delar av tal, syntaktiska relationer och semantisk. Sökfrågor brukar inte observera grammatiken i ett skriftligt språk, och befintliga parsers fungerar dåligt. Vi använder toppmoderna tekniker för att träna neurala delar av taggers på sökfrågor.

Entitetslänkning hjälper oss att identifiera bilder om specifika begrepp, ofta representerade av en sida; till exempel platser eller TV-program.

omskrivning av frågekunskap för att extrahera begrepp ger en semantisk tolkning av en fråga., Begrepp inte bara utöka frågan mening men också överbrygga klyftan mellan olika vokabulärer som används av fråga och resultat.

query inbäddning är en kontinuerlig vektor utrymme representation av frågan. Det läras via överföring lärande ovanpå word2vec vektor representation av ord, som kartlägger liknande frågor till närliggande punkter.

Verticals och query rewriting

När någon skriver en fråga och träffar sökning genereras en begäran och skickas till våra servrar. Begäran går först till webbskiktet, som samlar in olika kontextuella uppgifter om frågan., Frågan och tillhörande sammanhang skickas till en topp aggregator-nivå som skriver om frågan till ett s-uttryck, som sedan beskriver hur man hämtar en uppsättning dokument från indexservern.

baserat på frågeintentionen används en utlösningsmekanism med hjälp av en neural nätverksmodell för att bestämma vilka vertikaler — till exempel nyheter, foton eller videoklipp — som är relevanta för att undvika onödiga förfrågningar som behandlas på mindre relevanta vertikaler., Till exempel, om en person frågar termen ”funny cats”, avsikten skulle söka och returnera fler resultat från bilderna vertikala och hoppa querying resultat från nyheterna vertikala.

om en fråga om Halloween utlöser både avsikten för offentliga bilder och bilder av vänner i Halloween kostymer, kommer både offentliga och sociala foto vertikaler sökas. Bilder som delas mellan sökarens vänner och offentliga bilder som rankas som relevanta kommer att returneras. Två oberoende förfrågningar görs eftersom sociala bilder är mycket personlig och kräver sin egen specialiserade hämtning och scoring., Photo privacy skyddas genom att tillämpa Facebook: s systembredda sekretesskontroller till resultaten. Diagrammet nedan visar en modul där den övre delen är social och botten är offentlig.

rangordning i första etappen

Efter att indexservrarna har hämtat dokument enligt s-uttrycket tillämpas den maskinlärda rankern i första etappen på dessa dokument., De översta m-dokumenten med de högsta poängen skickas tillbaka till rackaggregator-nivån, som utför sammanslagningssorteringen av alla dokument som den tar emot och returnerar sedan topp n-resultaten till toppaggregator-nivån. Huvudmålet med den första etappens ranking är att se till att dokumenten återvände till rackaggregatorn bevarar relevans för frågan. Till exempel, för frågan ”hund”, bör bilderna med hundar rankas högre än de utan hundar. Latens från komplexiteten i hämtning och ranking skede är balanserad för att tjäna relevanta bilder på order av millisekunder.,

andra etappen omrankning

Efter att de rankade dokumenten returneras till toppaggregatorn går de igenom en annan omgång av signalberäkning, deduplicering och ranking. Signalerna som beskriver fördelningen av hela resultatet beräknas, detekterar avvikande resultat. Därefter är dokumenten deduplicerade av visuellt liknande resultat med hjälp av bild fingeravtryck. Ett djupt neuralt nätverk gör sedan och rankar den slutliga ordningen av fotoresultaten. Samlingen av rankade bilder, kallad en modul, skickas sedan till resultatsidan UI.,

finjusterande relevans ranking för fotosökning

bedömningen av en frågas relevans för ett foto och vice versa är ett kärnproblem för fotosökning som sträcker sig utanför omfattningen av textbaserad fråga omskrivning och matchning. Det kräver en omfattande förståelse av frågan, författare, post text och visuellt innehåll i fotoresultatet., Avancerade relevansmodeller som innehåller toppmodern ranking, naturlig språkbehandling och datorvisionsteknik utvecklades för att finjustera relevansen av dessa resultat, vilket ger oss ett nytt bildtaxonomisystem som kan leverera snabba och relevanta resultat i skala.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *