Geoffrey Hinton a effectué des recherches sur quelque chose qu'il appelle "la théorie des capsules" dans les réseaux de neurones. Qu'est-ce que c'est et comment ça marche?
Geoffrey Hinton a effectué des recherches sur quelque chose qu'il appelle "la théorie des capsules" dans les réseaux de neurones. Qu'est-ce que c'est et comment ça marche?
Réponses:
Il semble ne pas avoir encore été publié. les meilleurs disponibles en ligne sont ces diapositives pour cette présentation . (Plusieurs personnes font référence à une précédente conversation avec ce lien , mais malheureusement, cette réponse est brisée au moment de la rédaction de cette réponse.)
Mon impression est qu'il s'agit d'une tentative de formalisation et d'abstraction de la création de sous-réseaux au sein d'un réseau de neurones. Autrement dit, si vous regardez un réseau de neurones standard, les couches sont entièrement connectées (c’est-à-dire que chaque neurone de la couche 1 a accès à chaque neurone de la couche 0 et est lui-même accessible par chaque neurone de la couche 2). Mais ce n'est évidemment pas utile. Par exemple, on peut avoir, par exemple, n piles de couches parallèles (les «capsules»), chacune étant spécialisée dans une tâche distincte (qui peut nécessiter plusieurs couches pour être complétée avec succès).
Si j'imagine correctement ses résultats, cette topologie de graphe plus sophistiquée semble être quelque chose qui pourrait facilement augmenter l'efficacité et l'interprétabilité du réseau résultant.
Pour compléter la réponse précédente: il existe un article à ce sujet qui traite principalement de l’apprentissage des capsules de bas niveau à partir de données brutes, mais explique la conception de Hinton d’une capsule dans sa section d’introduction: http://www.cs.toronto.edu/~ fritz / absps / transauto6.pdf
Il est également intéressant de noter que le lien vers le discours du MIT dans la réponse ci-dessus semble fonctionner à nouveau.
Selon Hinton, une "capsule" est un sous-ensemble de neurones dans une couche qui génère à la fois un "paramètre d'instanciation" indiquant si une entité est présente dans un domaine limité et un vecteur de "paramètres de pose" spécifiant la pose de l'entité par rapport à une version canonique.
Les paramètres fournis par les capsules de bas niveau sont convertis en prévisions pour la pose des entités représentées par des capsules de niveau supérieur, qui sont activées si les prédictions s’accordent et produisent leurs propres paramètres (les paramètres de pose de plus haut niveau étant des moyennes des prédictions reçues). ).
Hinton suppose que cette détection de coïncidence de grande dimension est l’objet de l’organisation de mini-colonnes dans le cerveau. Son objectif principal semble être de remplacer le pooling maximal utilisé dans les réseaux convolutionnels, dans lequel les couches profondes perdent des informations sur la pose.
Les réseaux de capsules tentent d'imiter les observations de Hinton sur le cerveau humain sur la machine. La motivation provient du fait que les réseaux de neurones avaient besoin d'une meilleure modélisation des relations spatiales des parties. Au lieu de modéliser la coexistence, en négligeant le positionnement relatif, Caps-nets tente de modéliser les transformations relatives globales de différentes sous-parties le long d'une hiérarchie. C'est le compromis eqivariance vs invariance, comme expliqué ci-dessus par d'autres.
Ces réseaux comportent donc en quelque sorte une prise de conscience du point de vue / de l’orientation et répondent différemment aux différentes orientations. Cette propriété les rend plus discriminants, tout en introduisant potentiellement la possibilité d'effectuer une estimation de la pose car les caractéristiques d'espace latent contiennent des détails spécifiques de la position interprétables.
Tout cela est accompli en incluant une couche imbriquée appelée capsules dans la couche, au lieu de concaténer une autre couche dans le réseau. Ces capsules peuvent fournir une sortie vectorielle au lieu d’une sortie scalaire par nœud.
La contribution essentielle du papier est le routage dynamique qui remplace le max-pooling standard par une stratégie intelligente. Cet algorithme applique une classification par décalage moyen sur les sorties de la capsule afin de garantir que la sortie est envoyée uniquement au parent approprié dans la couche ci-dessus.
Les auteurs associent également les contributions à une perte de marge et à une perte de reconstruction, qui aident simultanément à mieux apprendre la tâche et à afficher des résultats de pointe sur MNIST.
Le récent article s'appelle Dynamic Routing Between Capsules et est disponible sur Arxiv: https://arxiv.org/pdf/1710.09829.pdf .
Basé sur leur papier Le routage dynamique entre les capsules
Une capsule est un groupe de neurones dont le vecteur d'activité représente les paramètres d'instanciation d'un type d'entité spécifique, tel qu'un objet ou une partie d'objet. Nous utilisons la longueur du vecteur d'activité pour représenter la probabilité que l'entité existe et son orientation pour représenter les paramètres d'instanciation. Les gélules actives à un niveau font des prédictions, via des matrices de transformation, pour les paramètres d'instanciation des gélules de niveau supérieur. Lorsque plusieurs prédictions s'accordent, une capsule de niveau supérieur devient active. Nous montrons qu’un système de capsules multicouches à entraînement discriminatoire permet d’obtenir des performances de pointe sur le MNIST et est nettement supérieur à un réseau de convolution pour la reconnaissance de chiffres très imbriqués. Pour atteindre ces résultats, nous utilisons un mécanisme de routage par accord itératif: Une capsule de niveau inférieur préfère envoyer sa sortie à des capsules de niveau supérieur dont les vecteurs d'activité ont un grand produit scalaire, la prédiction provenant de la capsule de niveau inférieur. La version finale du document est en cours de révision afin d'intégrer les commentaires des réviseurs.
L'un des principaux avantages des réseaux de neurones convolutifs est leur invariance à la traduction. Cependant, cette invariance a un prix et ne tient pas compte de la façon dont différentes caractéristiques sont liées les unes aux autres. Par exemple, si nous avons l'image d'un visage, CNN aura des difficultés à faire la distinction entre la bouche et le nez. Les couches de pooling maximales sont la raison principale de cet effet. Parce que lorsque nous utilisons les couches de pooling maximales, nous perdons les emplacements précis de la bouche et du bruit et nous ne pouvons pas dire comment elles sont liées les unes aux autres.
Les gélules essaient de conserver l'avantage de CNN et de remédier à cet inconvénient de deux manières.
Lorsque la capsule fonctionne correctement, la probabilité que l’entité visuelle soit présente est invariante localement - elle ne change pas lorsque l’entité se déplace sur la multitude d’apparences possibles dans le domaine limité couvert par la capsule.
En d'autres termes, capsule prend en compte l'existence de la particularité que nous recherchons, comme la bouche ou le nez. Cette propriété garantit que les capsules invariantes en traduction sont les mêmes que les CNN.