Neural Best Buddies: Une explication technique

tl; dr Dans cet article, je donne une explication technique pour l’article «Neural Best-Buddies: une correspondance fragmentée entre domaines.»

Les humains peuvent identifier et cartographier des caractéristiques géométriques et sémantiques similaires entre différents objets. Par exemple, à partir d'une image de deux éléphants, nous (et nos conspécifiques) pouvons cartographier un point représentant le tronc de l'éléphant 1 jusqu'à celui représentant le tronc de l'éléphant 2.

Une correspondance mappant des points d'un chat à un lion.1

Un problème plus complexe est la correspondance interdomaine. À partir d’une paire d’images d’objets appartenant à différentes catégories (ex. Chat domestique et lion), pouvons-nous détecter et cartographier des points qui représentent des caractéristiques sémantiques ou géométriques significatives (c.-à-d. Oreille, bouche, yeux, etc.)?

Ainsi, les auteurs de cet article ont cherché à créer un modèle de calcul réalisant une correspondance entre domaines.

Résumé de haut niveau:

Un réseau pré-formé approfondi extrait des informations hiérarchiques utiles à partir de paires d'images. Dans chaque niveau de la hiérarchie (du dernier au premier), chaque neurone se voit attribuer un meilleur ami de l'autre hiérarchie, un neurone de la même région et une couche d'une autre image partageant un emplacement similaire dans l'espace des fonctions. L'espace occupé par ces neurones est ensuite propagé dans la couche précédente, filtré par une amplitude d'activation supérieure à une ligne de base arbitraire.

Le processus est répété pour chaque couche jusqu'à ce que l'image d'entrée d'origine soit atteinte. Les paires de points récupérés sur la base de ce processus de rétroprojection best-buddy récursif sont filtrées par une technique KNN et classées en fonction de la valeur totale des activations sur toutes les couches. Ces paires présentent une précision de correspondance élevée par rapport à d'autres techniques de pointe.

(a) À chaque niveau du réseau, les meilleurs amis neuronaux activés sont mis en évidence. (b) Un mappage de caractéristiques d'une couche convolutionnelle à son champ récepteur associé dans la couche précédente. Seules les régions saillantes qui passent une activation de seuil sont sélectionnées dans la couche précédente.¹

Détails de bas niveau

  1. Réseaux de neurones profonds

Les réseaux de neurones à convolution profonde peuvent extraire des informations sémantiques significatives à partir d'images invariantes pour leur position et leur apparence. Dans cet article, les auteurs utilisent VGG-19, un réseau de 19 couches pré-formé sur ImageNet (une vaste base de données d'images complexes - le standard auquel tous les réseaux sont comparés en vision par ordinateur). Chaque couche du réseau prend une entrée de la couche précédente, applique des transformations de convolution, de regroupement et de relu, puis envoie la sortie à la couche suivante. Ainsi, la sortie de chaque couche est une représentation unique de l’espace caractéristique. Les réseaux de neurones profonds peuvent être représentés sous la forme d'une pyramide trapézoïdale, où l'image d'entrée est en bas et chaque couche progressive change et (éventuellement) compresse l'espace des fonctions.

2. Correspondance Sparsity

Deux images sont acheminées via le réseau de neurones à convolution VGG et, par propagation en aval, deux hiérarchies de caractéristiques sont construites (une pour chaque image), en fonction des activations de chaque couche (ou sorties). Dans les premières couches de la hiérarchie, le réseau reconnaît les contours, les lignes et les autres fonctionnalités de base de bas niveau. Dans les dernières couches, le réseau commence à reconnaître les caractéristiques définissant le niveau de la classe (telles que les oreilles, les yeux, le nez, etc.).

Le réseau «reconnaît» les caractéristiques en affichant des activations élevées pour la cellule correspondant à la sortie. Ainsi, les cellules avec des activations élevées dans les premières couches correspondent aux arêtes / lignes, tandis que les cellules ayant des activations élevées dans les couches ultérieures correspondent aux caractéristiques de la catégorie. Toutes les activations inférieures à un seuil sont filtrées de l'espace de recherche afin que seules les caractéristiques saillantes soient identifiées - et que la sortie soit réellement rare. Sinon, un bruit important fausserait les résultats.

3. Transfert de style neuronal

Les régions, parties sémantiquement importantes des espaces de fonctions, seront fondamentalement différentes pour les deux images en raison de la différence entre les informations catégoriques. Une apparence locale commune est nécessaire pour éliminer le bruit créé par l'arrière-plan. Ainsi, tous les espaces caractéristiques sont transformés par transfert de style en fonction de la fusion des espaces associés à la paire d'images.

4. Les meilleurs amis de Neural

Les meilleurs amis des neurones sont des paires de neurones qui montrent une correspondance étroite. Les meilleurs amis neuronaux sont déterminés par une métrique de distance basée sur les magnitudes des voisins de la paire de neurones sélectionnée. Si les voisins présentent une grande similarité, le neurone lui-même devrait présenter une forte corrélation avec son homologue.

Dans les réseaux convolutionnels, un neurone de la couche k est corrélé à une grille de neurones de la couche k-1 de m x m, m étant déterminé par l'architecture du réseau, et k. Cette grille est connue sous le nom de champ récepteur du neurone. Une fois que les meilleurs amis neuronaux qui dépassent le seuil de rareté sont déterminés, leurs champs récepteurs correspondent aux nouvelles régions de la couche k-1.

5. Résumé de l'algorithme

Deux images RVB sont introduites dans le réseau neuronal. Les activations de chaque couche sont extraites de la propagation en aval. Dans la dernière couche, la région est définie pour englober la totalité de l'espace de fonctions.

Puis pour chaque région:

  • Transformer la région 1 et la région 2 correspondante avec transfert de style
  • Compute Neural Best Buddy Pairs pour chaque région
  • Filtrer les paires en fonction de la magnitude d'activation
  • Trouver des champs récepteurs correspondant à chaque paire de la couche précédente pour délimiter de nouvelles régions

Continuez jusqu'à ce que la couche d'entrée soit atteinte.

Les meilleurs amis calculés dans la première couche (image d'entrée) sont classés et répartis de manière égale afin de créer une correspondance robuste et précise entre ces deux images.

Évaluation

La méthode a une précision remarquablement élevée. Voici quelques visualisations comparant la technique Neural Best Buddies à d'autres algorithmes de pointe en matière de correspondance entre domaines.

Source: Neural Best Buddies¹

Application

Une application possible de Neural Best Buddies est une transformation d'image. Le problème est le suivant: étant donné que deux images montrant des objets sémantiquement similaires, un état intermédiaire peut être développé. Ci-dessous, nous voyons un tel exemple. La correspondance a été déterminée pour les images les plus à gauche et les plus à droite et un morphing peut ainsi se former entre elles.

L'image à l'extrême gauche et l'image à l'extrême droite sont des entrées dans l'algorithme créé dans le papier. Les états intermédiaires sont formés en fusionnant les deux images sur la base des points saillants détectés par l'algorithme¹.

¹Naturel Best-Buddies: Correspondance clairsemée entre domaines