Sous le capot: recherche de photos-Ingénierie Facebook

Aujourd’hui, le volume de photos prises par des personnes avec des caméras de smartphone défie les limites de la catégorisation structurée. Il est difficile pour une personne de catégoriser son propre référentiel de photos de smartphone, encore moins de définir une taxonomie structurée pour les photos de chacun.

sur Facebook, les gens partagent des milliards de photos chaque jour, ce qui rend difficile de faire défiler vers l’arrière à temps pour trouver des photos postées il y a quelques jours, sans parler des mois ou des années., Pour aider les gens à trouver plus facilement les photos qu’ils recherchent, L’équipe de recherche de photos de Facebook a appliqué des techniques d’apprentissage automatique pour mieux comprendre ce qu’il y a dans une image et améliorer le processus de recherche et de récupération.

Photo Search a été construit avec Unicorn, un système d’indexation de stockage en mémoire et flash conçu pour rechercher des trillions d’arêtes entre des dizaines de milliards d’utilisateurs et d’entités. Créé il y a quelques années pour alimenter la recherche graphique sociale Graph-aware, Unicorn prend en charge des milliards de requêtes par jour alimentant plusieurs composants dans Facebook.,

Graph Search a été construit pour récupérer des objets du graphique social en fonction des relations entre eux, tels que « mes amis qui vivent à San Francisco.” Cela s’est avéré efficace, mais présente des défis d’ingénierie lors de la contrainte de la requête à un sous-ensemble pertinent, du tri et de la notation des résultats pour la pertinence, puis de la fourniture des résultats les plus pertinents. Pour renforcer cette approche, L’équipe de recherche de photos a appliqué des réseaux neuronaux profonds pour améliorer la précision des recherches d’images basées sur le contenu visuel de la photo et le texte consultable.,

ce que la recherche doit comprendre sur les photos

comprendre les photos à L’échelle de Facebook présente un défi différent par rapport à la démonstration de faibles taux d’erreur de reconnaissance d’image dans le concours Imagenet Challenge. La recherche appliquée a produit des techniques d’apprentissage profond de pointe capables de traiter des milliards de photos pour extraire un sens sémantique interrogeable à grande échelle. Chacune des photos publiques téléchargées sur Facebook est traitée par un système distribué en temps réel appelé image understanding engine.,

l’image understanding engine est un réseau neuronal profond avec des millions de paramètres à apprendre. Le moteur s’appuie sur le réseau résiduel profond de pointe formé à l’aide de dizaines de millions de photos avec annotations. Il peut prédire automatiquement un riche ensemble de concepts, y compris des scènes, des objets, des animaux, des attractions et des vêtements. Nous pouvons former des modèles et stocker des informations utiles à l’avance, ce qui permet des réponses à faible latence aux requêtes des utilisateurs.,

le moteur de compréhension des images produit des vecteurs flottants de haute dimension de caractéristiques sémantiques qui sont trop intensifs en calcul pour l’indexation et la recherche à L’échelle de Facebook. En tirant parti de la quantification itérative et de la technologie de hachage sensible à la localité, les fonctionnalités sont encore compressées en un petit nombre de bits qui conservent la plupart de la sémantique. La représentation de bits est utilisée comme incorporation compacte des photos qui peuvent être directement utilisées dans le classement, la récupération et la déduplication de photos., Les intégrations compactes classent l’ordre des résultats en réponse à la requête de recherche. Il s’agit d’une technique similaire appliquée à la recherche et à la récupération de documents, pour laquelle Unicorn a été créé à l’origine, avec différents algorithmes appliqués aux couches profondes du réseau neuronal spécifiques à la recherche d’une collection d’images à grande échelle. Les balises d’objet et les intégrations sémantiques remplissent Unicorn avec un index pour les requêtes de recherche. Une mise à jour pour utiliser des embeddings compacts pour la récupération à faible latence est en cours de développement.,

utilisation de balises et d’embeddings pour la modélisation

Un modèle de classement complexe appliqué à l’ensemble du magasin de photos n’est pas possible compte tenu de L’échelle de Facebook et des attentes des gens pour une réponse rapide à leurs requêtes. Un modèle de pertinence appliqué aux balises et aux embeddings estime la pertinence et produit des résultats de requête à faible latence.

pertinence du Concept

la pertinence est évaluée à l’aide de signaux rich query et photo concept en comparant les ensembles de concepts avec une fonction de similarité., Par exemple, les concepts de requête sont directement corrélés aux concepts d’une photo pour la requête « Central Park” afin de promouvoir des photos sur le sujet et de supprimer des photos hors sujet pendant le classement.

l’Incorporation de la pertinence

mesurer Directement la notion de corrélation entre une requête et un résultat n’est souvent pas suffisant pour prédire avec précision la pertinence. Le modèle de pertinence qui a été développé exploite l’apprentissage multimodal pour apprendre une intégration conjointe entre une requête et une image.,

Les entrées du modèle sont l’intégration des vecteurs de la requête et la photo du résultat. L’objectif de la formation est de minimiser la perte de classification. Chaque vecteur est formé ensemble et traité par plusieurs couches d’un réseau neuronal profond pour produire un signal binaire, où un résultat positif indique une correspondance et un négatif indique une non-correspondance. Les vecteurs d’entrée de requête et de photo sont produits par leurs réseaux distincts, potentiellement avec un nombre différent de couches. Les réseaux peuvent être formés ou affinés avec les paramètres de la couche d’incorporation.,

Intégration avec classement perte

L’approche décrite ci-dessus pour déterminer la pertinence entre une requête et une photo est formulé comme un problème de classement. Toutefois, l’objectif principal de ce classement est de déterminer le meilleur ordre pour l’ensemble des photos. Nous sommes allés au-delà de la formulation de la classification et avons utilisé une formation avec une perte de classement qui traite une paire de résultats pertinents et non pertinents pour une seule requête en même temps.

comme le montre cette figure, la partie droite du modèle est une copie profonde de la partie gauche; c’est-à-dire qu’elle partage la même structure et les mêmes paramètres de réseau., Pendant la formation, une requête et ses deux résultats sont introduits dans les composants gauche et droit, respectivement. L’image positive est classée plus haut que l’image classée négativement pour une requête donnée. Cette stratégie de formation montre des gains significatifs dans le classement des mesures de qualité.

compréhension de la requête appliquée à la recherche de photos

Le corpus de photos est consultable avec Unicorn, avec les embeddings appliqués par le moteur de compréhension d’images., Le bitmap est dissocié de la requête et récupération à l’exception de l’indice utilisé pour récupérer la photo si la requête sémantique appliquée à la plongements produire une forte probabilité de pertinence. Certains des principaux signaux qui jouent un rôle dans la compréhension de la sémantique de la requête sont résumés ci-dessous:

Les intentions de requête suggèrent quels types de scènes nous devrions récupérer. Par exemple, une requête dans le but d’obtenir un animal devrait afficher des résultats de photo avec l’animal comme sujet central.,

l’analyse syntaxique aide à comprendre les constituants grammaticaux, les parties du discours, les relations syntaxiques et la sémantique d’une phrase. Les requêtes de recherche ne respectent généralement pas la grammaire d’une langue écrite et les analyseurs existants fonctionnent mal. Nous utilisons des techniques de pointe pour former les tagueurs de la partie neuronale de la parole sur les requêtes de recherche.

Entity linking nous aide à identifier des photos sur des concepts spécifiques, souvent représentés par une page; par exemple, des lieux ou des émissions de télévision.

la réécriture des connaissances de requête pour extraire des concepts fournit une interprétation sémantique d’une requête., Les Concepts étendent non seulement la signification de la requête, mais comblent également le fossé entre les différents vocabulaires utilisés par la requête et le résultat.

L’intégration de la requête est une représentation continue de l’espace vectoriel de la requête. Il est appris via l’apprentissage par transfert au – dessus de la représentation vectorielle word2vec des mots, qui mappe des requêtes similaires aux points voisins.

verticales et réécriture des requêtes

lorsque quelqu’un tape une requête et frappe search, une requête est générée et envoyée à nos serveurs. La demande va d’abord au niveau web, qui collecte diverses informations contextuelles sur la requête., La requête et le contexte associé sont envoyés à un niveau supérieur de l’agrégateur qui réécrit la requête dans une s-expression, qui décrit ensuite comment récupérer un ensemble de documents à partir du serveur d’index.

sur la base de l’intention de la requête, un mécanisme de déclenchement est utilisé à l’aide d’un modèle de réseau neuronal pour décider quelles verticales — par exemple, des nouvelles, des photos ou des vidéos — sont pertinentes pour éviter les demandes inutiles traitées sur des verticales moins pertinentes., Par exemple, si une personne interroge le terme « chats drôles”, l’intention rechercherait et renverrait plus de résultats à partir des photos verticales et ignorerait l’interrogation des résultats à partir des nouvelles verticales.

Si une requête sur Halloween déclenche à la fois l’intention pour les photos publiques et les photos d’amis en costumes D’Halloween, les verticales de photos publiques et sociales seront recherchées. Les Photos partagées entre les amis du chercheur et les photos publiques classées comme pertinentes seront retournées. Deux demandes indépendantes sont faites parce que les photos sociales sont hautement personnalisées et nécessitent leur propre récupération et notation spécialisées., La confidentialité des photos est protégée en appliquant aux résultats les contrôles de confidentialité À L’échelle du système de Facebook. Le diagramme ci-dessous représente un module où la partie supérieure est sociale et la partie inférieure est publique.

classement de la première étape

Une fois que les serveurs d’index ont récupéré des documents en fonction de l’expression s, le classement de la première étape appris par machine est appliqué à ces documents., Les M meilleurs documents avec les scores les plus élevés sont renvoyés au niveau rack aggregator, qui effectue le type de fusion de tous les documents qu’il reçoit, puis renvoie les N meilleurs résultats au niveau TOP aggregator. L’objectif principal du classement de la première étape est de s’assurer que les documents renvoyés à l’agrégateur de rack conservent leur pertinence pour la requête. Par exemple, pour la requête « chien”, les photos avec des chiens doivent être classées plus haut que celles sans chiens. La latence de la complexité de l’étape de récupération et de classement est équilibrée pour fournir des photos pertinentes de l’ordre de millisecondes.,

second-stage re-ranking

Après que les documents classés sont retournés à l’agrégateur supérieur, ils passent par un autre tour de calcul des signaux, déduplication, et le classement. Les signaux décrivant la distribution du résultat entier sont calculés, détectant les résultats périphériques. Ensuite, les documents sont dédupliqués de résultats visuellement similaires à l’aide d’empreintes digitales d’image. Un réseau neuronal profond marque et classe ensuite l’ordre final des résultats de la photo. La collection de photos classées, appelée module, est ensuite transmise à l’interface utilisateur de la page de résultats.,

affiner le classement de la pertinence pour la recherche de photos

l’évaluation de la pertinence d’une requête par rapport à une photo et vice versa est un problème fondamental de la recherche de photos qui dépasse le cadre de la réécriture et de la correspondance de Cela nécessite une compréhension complète de la requête, de l’auteur, du texte de publication et du contenu visuel du résultat de la photo., Des modèles de pertinence avancés intégrant des techniques de classement, de traitement du langage naturel et de vision par ordinateur de pointe ont été développés pour affiner la pertinence de ces résultats, nous donnant un nouveau système de taxonomie d’images capable de fournir des résultats rapides et pertinents à grande échelle.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *