8.8 C
New York

Reconnaissance d’photos évolutive avec le Deep Studying géométrique


Ceci est le premier d’une série d’articles sur les réseaux de neurones convolutionnels équivariants de groupe (GCNN). Aujourd’hui, nous le gardons court docket, de haut niveau et conceptuel ; des exemples et des implémentations suivront. En examinant les GCNN, nous reprenons un sujet que nous avions d’abord écrit au sujet de en 2021 : Apprentissage profond géométriqueune approche fondée sur des principes et basée sur les mathématiques pour la conception de réseaux qui, depuis lors, n’a fait que gagner en portée et en influence.

De l’alchimie à la science : le Deep Studying géométrique en deux minutes

En un mot, le Deep Studying géométrique consiste à dériver la construction du réseau à partir de deux éléments : le domaine et la tâche. Les messages entreront dans beaucoup de détails, mais permettez-moi de donner un aperçu rapide ici:

  • Par domaine, je fais référence à l’espace physique sous-jacent et à la manière dont il est représenté dans les données d’entrée. Par exemple, les photos sont généralement codées sous la forme d’une grille bidimensionnelle, avec des valeurs indiquant les intensités des pixels.
  • La tâche est ce à quoi nous entraînons le réseau : classification, par exemple, ou segmentation. Les tâches peuvent être différentes à différentes étapes de l’structure. À chaque étape, la tâche en query aura son mot à dire sur l’apparence que devrait avoir la conception des calques.

Par exemple, prenez MNIST. L’ensemble de données se compose d’photos à dix chiffres, de 0 à 10, toutes en niveaux de gris. La tâche – sans shock – est d’attribuer à chaque picture le chiffre représenté.

Considérons d’abord le domaine. UN (7) est un (7) où qu’il apparaisse sur la grille. Il nous faut donc une opération qui soit équivariant de traduction: Il s’adapte avec souplesse aux changements (traductions) dans son entrée. Plus concrètement, dans notre contexte, équivariant les opérations sont capables de détecter les propriétés de certains objets même si cet objet a été déplacé, verticalement et/ou horizontalement, vers un autre emplacement. Convolutionomniprésent non seulement dans l’apprentissage en profondeur, est une telle opération équivariante.

Permettez-moi d’attirer particulièrement l’consideration sur le fait que, dans l’équivariance, l’essentiel est cette « adaptation versatile ». Opérations équivariantes de traduction faire se soucier de la nouvelle place d’un objet ; ils enregistrent une caractéristique non pas abstraitement, mais à la nouvelle place de l’objet. Pour voir pourquoi c’est essential, considérez le réseau dans son ensemble. Lorsque nous composons des convolutions, nous construisons une hiérarchie de détecteurs de caractéristiques. Cette hiérarchie doit être fonctionnelle, peu importe où dans l’picture. De plus, il doit être cohérent : les informations de localisation doivent être conservées entre les couches.

D’un level de vue terminologique, il est donc essential de distinguer l’équivariance de invariance. Une opération invariante, dans notre contexte, serait toujours succesful de repérer une caractéristique où qu’elle se produise ; cependant, il oublierait volontiers où se trouvait cette fonctionnalité. Il est donc clair que pour construire une hiérarchie de caractéristiques, traduction-invariance n’est pas assez.

Ce que nous avons fait maintenant, c’est dériver une exigence du domaine, la grille d’entrée. Qu’en est-il de la tâche ? Si, finalement, tout ce que nous sommes censés faire est de nommer le chiffre, soudain, l’emplacement n’a plus d’significance. En d’autres termes, une fois que la hiérarchie existe, l’invariance est assez. Dans les réseaux de neurones, mise en commun est une opération qui oublie les détails (spatiaux). Il ne se soucie que de la moyenne, disons, ou de la valeur maximale elle-même. C’est ce qui le rend apte à « résumer » des informations sur une région, ou une picture complète, si à la fin on ne s’intéresse qu’à renvoyer une étiquette de classe.

En un mot, nous avons pu formuler une liste de souhaits de conception basée sur (1) ce qui nous est donné et (2) ce qui nous est confié.

Après cette esquisse de haut niveau de l’apprentissage profond géométrique, nous zoomons sur le sujet désigné de cette série d’articles : équivariant de groupe réseaux de neurones convolutifs.

Le pourquoi de « l’équivariant » ne devrait plus, à présent, poser trop d’énigme. Qu’en est-il de ce préfixe « groupe », cependant ?

Le « groupe » en équivariance de groupe

Comme vous l’avez peut-être deviné d’après l’introduction, en parlant de «principé» et «axé sur les mathématiques», ce vraiment concerne les groupes au « sens mathématique ». Selon vos antécédents, la dernière fois que vous avez entendu parler de groupes, c’était à l’école, et sans même savoir pourquoi ils sont importants. Je ne suis certainement pas qualifié pour résumer toute la richesse de ce pour quoi ils sont bons, mais j’espère qu’à la fin de cet article, leur significance dans l’apprentissage en profondeur aura un sens intuitif.

Groupes de symétries

Voici un carré.

Un carré dans sa position par défaut, aligné horizontalement sur un axe des x virtuel (invisible).

Maintenant fermez les yeux.

Maintenant, regardez à nouveau. Quelque selected est arrivé au carré ?

Un carré dans sa position par défaut, aligné horizontalement sur un axe des x virtuel (invisible).

Vous ne pouvez pas le dire. Peut-être qu’il a été tourné; peut-être que non. D’un autre côté, que se passerait-il si les sommets étaient numérotés ?

Un carré dans sa position par défaut, avec des sommets numérotés de 1 à 4, commençant dans le coin inférieur droit et comptant dans le sens inverse des aiguilles d'une montre.

Maintenant, vous sauriez.

Sans la numérotation, aurais-je pu faire pivoter le carré comme je le voulais ? Évidemment non. Cela ne passerait pas inaperçu :

Un carré, tourné dans le sens inverse des aiguilles d'une montre de quelques degrés.

Il y a exactement quatre façons dont j’aurais pu faire pivoter le carré sans éveiller les soupçons. Ces moyens peuvent être mentionnés de différentes manières; un moyen easy est par degré de rotation : 90, 180 ou 270 degrés. Pourquoi pas plus ? Tout ajout supplémentaire de 90 degrés entraînerait une configuration que nous avons déjà vue.

Quatre carrés, avec des sommets numérotés chacun.  Le premier a le sommet 1 en bas à droite, le second une rotation vers le haut, en haut à droite, et ainsi de suite.

L’picture ci-dessus montre trois carrés, mais j’ai énuméré trois rotations possibles. Qu’en est-il de la scenario à gauche, celle que j’ai prise comme état preliminary ? Il pourrait être atteint en faisant pivoter 360 degrés (ou deux fois, ou trois fois, ou …) Mais la façon dont cela est géré, en mathématiques, est de le traiter comme une sorte de « rotation nulle », de manière analogue à la façon dont (0) agit en plus, (1) en multiplication, ou la matrice identité en algèbre linéaire.

Au whole, nous avons donc quatre Actions qui pourrait être exécuté sur le carré (un carré non numéroté !) qui le laisserait tel quel, ou invariant. Ceux-ci sont appelés les symétries du carré. Une symétrie, en mathématiques/physique, est une quantité qui reste la même quoi qu’il arrive à mesure que le temps évolue. Et c’est là qu’interviennent les groupes. Groupes – concrètement, leur éléments – effectuer des actions comme la rotation.

Avant d’expliquer remark, permettez-moi de donner un autre exemple. Prenez cette sphère.

Une sphère, colorée uniformément.

Combien de symétries possède une sphère ? Infiniment nombreux. Cela implique que quel que soit le groupe choisi pour agir sur le carré, il ne servira à rien de représenter les symétries de la sphère.

Affichage des groupes by way of le motion lentille

Suite à ces exemples, permettez-moi de généraliser. Voici la définition typique.

Un groupe (G) est un ensemble fini ou infini d’éléments avec une opération binaire (appelée opération de groupe) qui satisfont ensemble les quatre propriétés fondamentales de fermeture, d’associativité, de propriété d’identité et de propriété inverse. L’opération par rapport à laquelle un groupe est défini est souvent appelée « opération de groupe », et un ensemble est dit être un groupe « sous » cette opération. Éléments (UN), (B), (C)… avec opération binaire entre (UN) et (B) dénoté (UN B) former un groupe si

  1. Fermeture : Si (UN) et (B) sont deux éléments dans (G)alors le produit (UN B) est aussi dans (G).

  2. Associativité : La multiplication définie est associative, c’est-à-dire pour tout (UN),(B),(C) dans (G), ((AB)C=A(BC)).

  3. Identité : il y a un élément d’identité (JE) (alias (1), (E)ou (e)) tel que (IA=IA=A) pour chaque élément (UN) dans (G).

  4. Inverse : Il doit y avoir un inverse (alias réciproque) de chaque élément. Ainsi, pour chaque élément (UN) de (G)l’ensemble contient un élément (B=A^{-1}) tel que (AA^{-1}=A^{-1}A=I).

Dans le langage de l’motion, les éléments de groupe spécifient les actions autorisées ; ou plus précisément, ceux qui se distinguent les uns des autres. Deux actions peuvent être composées ; c’est « l’opération binaire ». Les exigences ont maintenant un sens intuitif :

  1. Une combinaison de deux actions – disons deux rotations – est toujours une motion du même kind (une rotation).
  2. Si nous avons trois actions de ce kind, peu importe remark nous les regroupons. (Leur ordre d’utility doit cependant rester le même.)
  3. Une motion potential est toujours « l’motion nulle ». (Comme dans la vie.) Quant à « ne rien faire », peu importe que cela se produise avant ou après un « quelque selected » ; ce « quelque selected » est toujours le résultat ultimate.
  4. Chaque motion doit avoir un « bouton d’annulation ». Dans l’exemple des carrés, si je fais une rotation de 180 degrés, puis de nouveau de 180 degrés, je reviens à l’état d’origine. C’est si j’avais fait rien.

En reprenant une vue plus « à vol d’oiseau », ce que nous avons vu maintenant est la définition d’un groupe par la façon dont ses éléments agissent les uns sur les autres. Mais si les groupes doivent avoir de l’significance « dans le monde réel », ils doivent agir sur quelque selected d’extérieur (composants de réseaux de neurones, par exemple). Remark cela fonctionne est le sujet des articles suivants, mais je vais brièvement décrire l’instinct ici.

Views : CNN équivariant au groupe

Ci-dessus, nous avons noté que, dans la classification des photos, un traduction-une opération invariante (comme la convolution) est nécessaire : A (1) est un (1) qu’il soit déplacé horizontalement, verticalement, dans les deux sens ou pas du tout. Mais qu’en est-il des rotations ? Debout sur sa tête, un chiffre est toujours ce qu’il est. La convolution conventionnelle ne supporte pas ce kind d’motion.

Nous pouvons ajouter à notre liste de souhaits architecturaux en spécifiant un groupe de symétrie. Quel groupe? Si nous voulions détecter des carrés alignés sur les axes, un groupe approprié serait (C_4), le groupe cyclique d’ordre quatre. (Ci-dessus, nous avons vu qu’il nous fallait quatre éléments, et que nous pouvions cycle à travers le groupe.) Si, d’autre half, nous ne nous soucions pas de l’alignement, nous voudrions n’importe quel poste pour compter. En principe, nous devrions nous retrouver dans la même scenario qu’avec la sphère. Cependant, les photos vivent sur des grilles discrètes ; il n’y aura pas un nombre illimité de rotations dans la pratique.

Avec des functions plus réalistes, nous devons réfléchir plus attentivement. Prenez des chiffres. Quand est un numéro « le même » ? D’une half, cela dépend du contexte. S’il s’agissait d’une adresse manuscrite sur une enveloppe, accepterions-nous un (7) en tant que tel avait-il été tourné de 90 degrés ? Peut être. (Bien que nous puissions nous demander ce qui ferait changer la place du stylo à bille pour un seul chiffre.) Qu’en est-il d’un (7) debout sur sa tête ? En plus de considérations psychologiques similaires, nous devrions être sérieusement incertains du message voulu et, au moins, minimiser le level de données s’il faisait partie de notre ensemble de formation.

Surtout, cela dépend aussi du chiffre lui-même. UN (6)à l’envers, est un (9).

En zoomant sur les réseaux de neurones, il y a de la place pour encore plus de complexité. Nous savons que les CNN établissent une hiérarchie de fonctionnalités, en commençant par les plus simples, comme les bords et les cash. Même si, pour les couches ultérieures, nous ne voulons pas d’équivariance de rotation, nous aimerions toujours l’avoir dans l’ensemble preliminary de couches. (La couche de sortie – nous y avons déjà fait allusion – doit être considérée séparément dans tous les cas, automobile ses exigences résultent des spécificités de ce qui nous est confié.)

C’est tout pour aujourd’hui. J’espère avoir réussi à éclairer un peu pourquoi nous voudrions avoir des réseaux de neurones équivariants de groupe. La query demeure : remark les obtenir ? C’est de cela que parleront les prochains articles de la série.

D’ici là, et merci d’avoir lu !

photograph par Ihor OINUA sur Unsplash

Related Articles

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici

Latest Articles