Onder de motorkap: zoeken op foto ‘s-Facebook Engineering

vandaag daagt het aantal foto’ s genomen door mensen met smartphonecamera ‘ s de grenzen van gestructureerde categorisering uit. Het is moeilijk voor een persoon om hun eigen repository van smartphone foto ’s te categoriseren, laat staan om een gestructureerde taxonomie te definiëren voor foto’ s van iedereen.

op Facebook Delen mensen elke dag miljarden foto ‘s, waardoor het een uitdaging is om terug te scrollen in de tijd om foto’ s te vinden die een paar dagen geleden zijn geplaatst, laat staan maanden of jaren geleden., Om mensen te helpen om de foto ’s die ze zoeken gemakkelijker te vinden, Facebook’ s Photo Search team toegepast machine learning technieken om beter te begrijpen wat er in een afbeelding, evenals het verbeteren van het zoeken en ophalen proces.

Photo Search is gebouwd met Unicorn, een indexeringssysteem voor in-memory en flash storage dat is ontworpen om biljoenen randen te zoeken tussen tientallen miljarden gebruikers en entiteiten. Een paar jaar geleden gemaakt om de sociale graph-aware Graph Search, Unicorn ondersteunt miljarden query ‘ s per dag het voeden van meerdere componenten in Facebook.,

Graph Search werd gebouwd om objecten uit de sociale grafiek op te halen gebaseerd op de relaties tussen hen, zoals “mijn vrienden die in San Francisco wonen.”Dit is effectief gebleken, maar levert technische uitdagingen op bij het beperken van de query tot een relevante subset, het sorteren en scoren van de resultaten op Relevantie, en vervolgens het leveren van de meest relevante resultaten. Om deze aanpak te vergroten, paste het Photo Search team diepe neurale netwerken toe om de nauwkeurigheid van zoekopdrachten op basis van visuele inhoud in de foto en doorzoekbare tekst te verbeteren.,

wat zoekopdrachten moeten begrijpen over foto ‘s

het begrijpen van foto’ s op de schaal van Facebook is een andere uitdaging dan het aantonen van lage foutenpercentages voor beeldherkenning in de Imagenet Challenge-wedstrijd. Toegepast onderzoek heeft geavanceerde deep learning-technieken geproduceerd die miljarden foto ‘ s kunnen verwerken om doorzoekbare semantische betekenis op enorme schaal te extraheren. Elk van de openbare foto ‘ s geüpload naar Facebook wordt verwerkt door een gedistribueerd real-time systeem genaamd de image understanding engine.,

De image understanding engine is een diep neuraal netwerk met miljoenen leerbare parameters. De motor bouwt op de top van de state-of-the-art diepe restnetwerk getraind met behulp van tientallen miljoenen foto ‘ s met annotaties. Het kan automatisch een rijke reeks Concepten voorspellen, waaronder scènes, objecten, dieren, attracties en kledingartikelen. We kunnen modellen trainen en nuttige informatie van tevoren opslaan, waardoor reacties met lage latency op gebruikersvragen mogelijk zijn.,

De image understanding engine produceert hoogdimensionale floatvectoren van semantische functies die te computationeel intensief zijn voor het indexeren en zoeken op de schaal van Facebook. Door gebruik te maken van iteratieve kwantisatie en lokale-gevoelige hashing technologie, worden de functies verder gecomprimeerd in een klein aantal bits die nog steeds het grootste deel van de semantiek behouden. De bit representatie wordt gebruikt als de compacte inbedding van de foto ‘ s die direct kunnen worden gebruikt bij het rangschikken, ophalen en foto deduplicatie., De compacte inbeddingen rangschikken de volgorde van de resultaten in reactie op de zoekopdracht. Het is een vergelijkbare techniek toegepast op document zoeken en ophalen, waarvoor Unicorn oorspronkelijk werd gemaakt, met verschillende algoritmen toegepast op de diepe neurale netwerklagen specifiek voor het zoeken van een grootschalige verzameling beelden. De object tags en semantische inbeddingen bevolken eenhoorn met een index voor zoekopdrachten. Een update om compacte inbeddingen te gebruiken voor low-latency retrieval is in ontwikkeling.,

het gebruik van tags en inbeddingen voor het modelleren van

een complex ranking model toegepast op de hele foto Winkel is niet mogelijk gezien de schaal van Facebook en de verwachtingen van mensen voor een snelle reactie op hun vragen. Een relevant model toegepast op de tags en embeddings schattingen relevantie en produceert low-latency query resultaten.

Conceptrelevantie

relevantie wordt beoordeeld met rijke query-en fotoconceptsignalen door de conceptverzamelingen te vergelijken met een similariteitsfunctie., De query-concepten zijn bijvoorbeeld direct gecorreleerd aan de concepten van een foto voor de query “Central Park” om on-topic foto ’s te promoten en off-topic foto’ s te verwijderen tijdens de ranking.

relevantie inbedden

direct meten van het concept correlatie tussen een query en een resultaat is vaak niet voldoende om de relevantie nauwkeurig te voorspellen. Het relevantiemodel dat werd ontwikkeld, maakt gebruik van multimodaal leren om een gezamenlijke inbedding te leren tussen een query en een beeld.,

de ingangen voor het model zijn de inbeddevectoren van de query en het fotoresultaat. Het doel van de training is om classificatieverlies te minimaliseren. Elke vector wordt samen getraind en verwerkt door verschillende lagen van een diep neuraal netwerk om een binair signaal te produceren, waarbij een positief resultaat een overeenkomst aangeeft en een negatief resultaat een niet-Overeenkomst. De query-en foto-invoervectoren worden geproduceerd door hun afzonderlijke netwerken, mogelijk met een ander aantal lagen. De netwerken kunnen worden getraind of verfijnd samen met de parameters van de inbeddingslaag.,

Embedding with ranking loss

de hierboven beschreven benadering om de relevantie te bepalen tussen een query en een foto is geformuleerd als een classificatieprobleem. Het belangrijkste doel van de ranking is echter om de beste volgorde voor de set fotoresultaten te bepalen. We gingen verder dan classificatieformulering en gebruikten training met een ranking verlies dat een paar relevante en niet-relevante resultaten verwerkt voor een enkele query op hetzelfde moment.

zoals getoond in deze figuur, is het rechterdeel van het model een diepe kopie van het linkerdeel; dat wil zeggen, het deelt dezelfde netwerkstructuur en parameters., Tijdens de training worden een query en de twee resultaten in respectievelijk de linker-en rechtercomponenten ingevoerd. De positieve afbeelding is hoger gerangschikt dan de negatief gerangschikt afbeelding voor een bepaalde query. Deze trainingsstrategie laat aanzienlijke verbeteringen zien in het rangschikken van kwaliteitsmetrics.

query understanding toegepast op Foto Zoeken

het fotocorpus is doorzoekbaar met eenhoorn, met de inbeddingen toegepast door de image understanding engine., De bitmap wordt losgemaakt van query en retrieval, met uitzondering van de index die wordt gebruikt om de foto op te halen als de query-semantiek toegepast op de inbeddingen een hoge waarschijnlijkheid van relevantie opleveren. Enkele van de belangrijkste signalen die een rol spelen bij het begrijpen van de semantiek van de query zijn hieronder samengevat:

Query intents suggereren welke soorten scènes we moeten ophalen. Bijvoorbeeld, een query met de bedoeling van het krijgen van een dier moet Foto resultaten met het dier als een centraal onderwerp te tonen.,

syntactische analyse helpt bij het begrijpen van de grammaticale bestanddelen van een zin, delen van spraak, syntactische relaties en semantische. Zoekopdrachten meestal niet de grammatica van een geschreven taal te observeren, en bestaande parsers presteren slecht. We gebruiken state-of-the-art technieken voor het trainen van neurale delen van spraak taggers op zoekopdrachten.

Entity linking helpt ons foto ’s te identificeren over specifieke concepten, vaak weergegeven door een pagina; bijvoorbeeld plaatsen of TV-programma’ s.

rewriting query knowledge to extract concepts provides a semantic interpretation of a query., Concepten breiden niet alleen de Betekenis van de query uit, maar overbruggen ook de kloof tussen de verschillende woordenlijsten die door query en result worden gebruikt.

Query inbedding is een continue vectorruimte representatie van de query. Het wordt geleerd via overdracht leren op de top van de word2vec vectorweergave van woorden, die kaarten soortgelijke queries om nabijgelegen punten.

Verticals and query rewriting

wanneer iemand een query typt en zoekt, wordt een verzoek gegenereerd en naar onze servers verzonden. Het verzoek gaat eerst naar de web tier, die verschillende contextuele informatie over de query verzamelt., De query en de bijbehorende context krijgen verzonden naar een top aggregator tier dat de query herschrijft in een s-expressie, die vervolgens beschrijft hoe u een set documenten van de index server op te halen.

Op basis van de query — intentie wordt een triggermechanisme gebruikt met behulp van een neuraal netwerkmodel om te beslissen welke verticals — bijvoorbeeld nieuws, foto ’s of video’ s-relevant zijn om onnodige verzoeken te voorkomen die worden verwerkt op minder relevante verticals., Bijvoorbeeld, als een persoon queries de term “funny cats,” de bedoeling zou zoeken en meer resultaten van de foto ‘ s verticaal en sla querying resultaten van het nieuws verticaal.

als een query over Halloween zowel de bedoeling voor publieke foto ’s als foto’ s van vrienden in Halloween kostuums activeert, zullen zowel de publieke als sociale foto verticals worden doorzocht. Foto ’s gedeeld onder vrienden van de zoeker en openbare foto’ s gerangschikt als relevant zullen worden geretourneerd. Twee onafhankelijke verzoeken worden gemaakt omdat sociale foto ‘ s zijn zeer gepersonaliseerd en vereisen hun eigen gespecialiseerde ophalen en scoren., Foto privacy wordt beschermd door het toepassen van Facebook ‘ s systemwide privacy controles op de resultaten. Het diagram hieronder toont een module waar het bovenste gedeelte sociaal is en de onderste openbaar.

eerste-fase ranking

nadat de indexservers documenten ophalen volgens de S-expressie, wordt de door de machine geleerde eerste-fase ranker toegepast op die documenten., De top m documenten met de hoogste scores worden teruggestuurd naar de rack aggregator tier, die de samenvoeging soort van alle documenten die het ontvangt uitvoert en vervolgens de top n resultaten terug naar de top aggregator tier. Het belangrijkste doel van de eerste-fase ranking is om ervoor te zorgen dat de documenten die worden geretourneerd naar de rack aggregator relevant blijven voor de query. Bijvoorbeeld, voor de query” hond, “de foto’ s met honden moet hoger worden gerangschikt dan die zonder honden. De latentie van de complexiteit van de retrieval en rangschikking fase is gebalanceerd om relevante foto ‘ s te dienen in de Orde van milliseconden.,

tweede-fase re-ranking

nadat de ranked documenten zijn geretourneerd naar de top aggregator, gaan ze door een nieuwe ronde van signaalberekening, deduplicatie en ranking. De signalen die de verdeling van het volledige resultaat beschrijven, worden berekend en detecteren afgelegen resultaten. Vervolgens worden de documenten gededupliceerd van visueel vergelijkbare resultaten met behulp van vingerafdrukken. Een diep neuraal netwerk scoort en rangschikt dan de uiteindelijke volgorde van de fotoresultaten. De verzameling van gerangschikt foto ‘ s, aangeduid als een module, wordt vervolgens doorgegeven aan de pagina resultaten UI.,

fine-tuning relevance ranking for Photo Search

de beoordeling van de relevantie van een query voor een foto en vice versa is een kernprobleem van het zoeken naar foto ’s dat verder gaat dan het herschrijven en matchen van op tekst gebaseerde query’ s. Het vereist een uitgebreid begrip van de query, auteur, posttekst, en visuele inhoud van de foto resultaat., Geavanceerde relevantie modellen met state-of-the-art ranking, natural language processing, en computer vision technieken werden ontwikkeld om de relevantie van deze resultaten te verfijnen, waardoor we een nieuw beeld taxonomie systeem in staat om snelle, relevante resultaten op schaal te leveren.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *