Apprentissage One-Shot avec Siamese Network [Pour la reconnaissance faciale]

Publié: 2021-02-08

L'article suivant parle de la nécessité d'utiliser l'apprentissage ponctuel ainsi que de ses variations et de ses inconvénients.

Pour commencer, afin de former un modèle d'apprentissage en profondeur, nous avons besoin d'une grande quantité de données pour que notre modèle exécute efficacement la tâche de prédiction ou de classification souhaitée. Par exemple, la détection d'un chien à partir d'images vous obligera à former un modèle de réseau neuronal sur des centaines et des milliers d'images de chiens et de non-chiens pour qu'il puisse les distinguer avec précision les unes des autres. Cependant, ce modèle de réseau neuronal ne fonctionnera pas s'il est entraîné sur une ou très peu de données d'entraînement.

Avec le manque de données, l'extraction d'entités pertinentes à différentes couches devient difficile. Le modèle ne pourra pas bien généraliser entre différentes classes, affectant ainsi ses performances globales.

A titre d'illustration, considérons l'exemple de la reconnaissance faciale dans un aéroport. En cela, nous n'avons pas la liberté de former notre modèle de centaines et de milliers d'images de chaque personne contenant différentes expressions, éclairage de fond et al. Avec plus de milliers de passagers arrivant chaque jour, c'est une tâche impossible ! En outre, le stockage d'une si grande quantité de données augmente le coût.

Pour résoudre le problème ci-dessus, nous utilisons une technique dans laquelle les tâches de classification ou de catégorisation peuvent être réalisées avec un ou quelques exemples pour classer de nombreux nouveaux exemples. Cette technique est appelée One-shot learning.

Ces dernières années, la technologie d'apprentissage unique est largement utilisée dans la reconnaissance faciale et les contrôles de passeport. Le concept utilisé est le suivant : le modèle prend en entrée 2 images ; l'une étant l'image du passeport et l'autre étant l'image de la personne regardant la caméra. Le modèle sort alors une valeur qui est la similarité entre les 2 images. Si la valeur de la sortie est faible, les deux images sont similaires, sinon elles sont différentes.

Table des matières

Réseau siamois

L'architecture utilisée pour l'apprentissage ponctuel s'appelle le réseau siamois. Cette architecture comprend deux réseaux de neurones parallèles, chacun prenant une entrée différente. La sortie du modèle est une valeur ou un indice de similarité qui indique si les deux images d'entrée sont semblables ou non. Une valeur inférieure à un seuil prédéfini correspond à la forte similarité entre les deux images et vice versa.

Lorsque les images sont transmises à une série de couches convolutives, de couches à regroupement maximal et de couches entièrement connectées, nous obtenons un vecteur qui encode les caractéristiques des images. Ici, parce que nous saisissons deux images, deux vecteurs englobant les caractéristiques des images d'entrée seront générés. La valeur dont nous parlions est la distance entre les deux vecteurs caractéristiques qui peut être calculée en trouvant la norme de la différence entre les deux vecteurs.

Fonction de perte de triplet

Comme son nom l'indique, pour former le modèle, nous avons besoin de trois images : une image d'ancrage (A), une image positive (P) et une image négative (N). Étant donné que deux entrées peuvent être fournies au modèle, une image d'ancrage avec une image positive ou négative est donnée. Le modèle apprend le paramètre de telle manière que la distance entre l'image d'ancrage et l'image positive est faible tandis que la distance entre l'image d'ancrage et l'image négative est élevée.

La fonction de perte constructive pénalise le modèle si la distance entre A et N est faible ou A et P est élevée, alors qu'elle encourage le modèle ou apprend des caractéristiques lorsque la distance entre A et N est élevée et A et P est faible.

Pour mieux comprendre l'ancre, les images positives et négatives, considérons l'exemple précédent de cela dans un aéroport. Dans un tel cas, l'image d'ancrage sera votre image lorsque vous regardez l'appareil photo, l'image positive sera celle de votre photo d'identité et l'image négative sera une image aléatoire d'un passager présent à l'aéroport.

Chaque fois que nous formons un réseau Siaseme, nous lui fournissons les images des trios APN (Ancre, positif et négatif). La création de cet ensemble de données est beaucoup plus facile et nécessiterait moins d'images à former.

Limites de l'apprentissage ponctuel

L'apprentissage ponctuel est encore un algorithme d'apprentissage automatique mature et possède certaines limites. Par exemple, le modèle ne fonctionnera pas bien si l'image d'entrée a quelques modifications - une personne portant un chapeau, des lunettes de soleil et al. De plus, un modèle formé pour une application ne peut pas être généralisé pour une autre application.

Passons maintenant à quelques variantes de l'apprentissage à un coup qui implique l'apprentissage à zéro coup et l'apprentissage à quelques coups.

Apprentissage instantané

L'apprentissage zéro coup est la capacité du modèle à identifier des données étiquetées nouvelles ou invisibles tout en étant formé sur des données vues et en connaissant les caractéristiques sémantiques des données nouvelles ou invisibles. Par exemple, un enfant qui a vu un chat peut l'identifier par ses caractéristiques distinctes. De plus, si l'enfant est conscient que le chien aboie et possède des caractéristiques plus solides qu'un chat, alors l'enfant n'aura aucun problème à reconnaître le chien.

Pour conclure, nous pouvons dire que la reconnaissance ZSL fonctionne d'une manière qui prend en compte l'ensemble d'apprentissage étiqueté des classes vues couplé avec la connaissance de la façon dont chaque classe invisible est sémantiquement liée aux classes vues.

Apprentissage N-shot

Comme son nom l'indique, dans N shot learning, nous aurons n données étiquetées de chaque classe disponibles pour la formation. Le modèle est entraîné sur K classes contenant chacune n données étiquetées. Après avoir extrait les caractéristiques et les modèles pertinents, le modèle doit catégoriser une nouvelle image sans étiquette dans l'une des classes K. Ils utilisent des réseaux d'appariement qui fonctionnent sur l'approche basée sur les voisins les plus proches formés entièrement de bout en bout.

Conclusion

En conclusion, le domaine de l'apprentissage ponctuel et ses homologues ont un immense potentiel pour résoudre certains des problèmes difficiles. Bien qu'il s'agisse d'un domaine de recherche relativement nouveau, il progresse rapidement et les chercheurs tentent de combler le fossé entre les machines et les humains.

Avec cela, nous sommes arrivés à la fin de ce post, j'espère que vous avez aimé le lire.

Si vous souhaitez en savoir plus sur l'apprentissage automatique, consultez le diplôme PG en apprentissage automatique et IA de IIIT-B & upGrad, conçu pour les professionnels en activité et offrant plus de 450 heures de formation rigoureuse, plus de 30 études de cas et missions, IIIT- Statut B Alumni, plus de 5 projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.

Apprenez le cours ML des meilleures universités du monde. Gagnez des programmes de maîtrise, Executive PGP ou Advanced Certificate pour accélérer votre carrière.

Menez la révolution technologique basée sur l'IA

Postuler pour un programme de certificat avancé en apprentissage automatique et PNL