Pourquoi «Profondeur = représentation sémantique» dans les réseaux de neurones convolutifs?

8

Je regardais quelques vidéos en ligne sur les réseaux convolutionnels, et le conférencier discutait du concept de l'exécution d'un filtre sur une image.

Il a dit, et il est également montré dans l'image ci-dessous, que "Profondeur = représentation sémantique".
entrez la description de l'image ici

Cela semble agréable, mais je ne sais pas exactement ce qui est si spécial dans la réduction de la dimension spatiale de l'image au profit d'une augmentation de la profondeur? Qu'est-ce qui rend la profondeur plus importante que toute autre dimension? Une dimension est juste une dimension, non?

EDIT: J'ai l'impression que la raison va avoir quelque chose à voir avec l'indépendance de la traduction ...

Monica Heddneck
la source

Réponses:

5

L'intérêt de la profondeur de couche et de la réduction pyramidale progressive est de construire une hiérarchie de représentations spatialement invariantes, chacune plus complexe que celles des niveaux antérieurs. Par exemple, au niveau le plus bas, un convolutionnel peut être capable de repérer des arrangements de pixels remarquables; au niveau suivant, il peut les condenser en points particuliers, formes de base, bords, etc.; puis à des niveaux supérieurs, il peut reconnaître des objets de plus en plus grands et complexes. Je vais emprunter un exemple de la thèse de Gerod M. Bonhoff 1sur la mémoire temporelle hiérarchique (HTM) de Hawkins, qui est un concept étroitement lié, qui utilise également des régions réceptives pour construire des représentations invariantes. Aux niveaux supérieurs, le processus de filtrage permet à un convolutionnel ou HTM d'assembler des lignes et des formes individuelles en objets tels que "queue de chien" ou "tête de chien"; à l'étape suivante, ils peuvent être reconnus comme un «chien» ou peut-être une variante particulière, comme «berger allemand».

Cela est rendu possible non seulement par l'empilement de plusieurs couches, mais par la division des neurones en leur sein en régions réceptives distinctes. Les régions réceptives imitent les «assemblages cellulaires» neuronaux réels et les colonnes corticales qui apprennent à tirer ensemble en groupes; cela permet un regroupement autour de types particuliers d'objets, tandis que les couches supplémentaires permettent de les relier ensemble en des objets de plus en plus sophistiqués. La diminution des dimensions spatiales dans l'exemple que vous avez cité reflète le rétrécissement des régions réceptives à mesure que nous remontons la pyramide; la troisième dimension (c'est-à-dire la profondeur à l'intérieur d'une couche, par opposition à la profondeur des couches) augmente en tandem afin que nous puissions offrir un choix plus large de représentations spatialement invariantes à sélectionner à chaque étape, c.-à-d. chaque filtre dans la dimension profondeur du volume de sortie apprend à regarder quelque chose de différent. Si nous rétrécissions simplement la pyramide à chaque étape de chaque dimension, nous nous retrouverons finalement avec une gamme étroite d'objets parmi lesquels choisir; pris assez loin, il pourrait bien nous laisser un seul nœud en haut reflétant un seul choix oui-non entre "est-ce un chien ou pas?" Cette conception plus flexible nous permet de choisir plus de combinaisons des représentations spatialement invariantes de la couche précédente. Je crois que cela permet également à un réseau convolutionnel de prendre en compte divers problèmes d'orientation, y compris l'indépendance de la traduction, en ajoutant plus d'assemblages / colonnes de cellules pour faire face à chaque réorientation d'une représentation invariante. finalement, il ne nous resterait qu'une gamme étroite d'objets à choisir; pris assez loin, il pourrait bien nous laisser un seul nœud en haut reflétant un seul choix oui-non entre "est-ce un chien ou pas?" Cette conception plus flexible nous permet de choisir plus de combinaisons des représentations spatialement invariantes de la couche précédente. Je crois que cela permet également à un réseau convolutionnel de prendre en compte divers problèmes d'orientation, y compris l'indépendance de la traduction, en ajoutant plus d'assemblages / colonnes de cellules pour faire face à chaque réorientation d'une représentation invariante. finalement, il ne nous resterait qu'une gamme étroite d'objets à choisir; pris assez loin, il pourrait bien nous laisser un seul nœud en haut reflétant un seul choix oui-non entre "est-ce un chien ou pas?" Cette conception plus flexible nous permet de choisir plus de combinaisons des représentations spatialement invariantes de la couche précédente. Je crois que cela permet également à un réseau convolutionnel de prendre en compte divers problèmes d'orientation, y compris l'indépendance de la traduction, en ajoutant plus d'assemblages / colonnes de cellules pour faire face à chaque réorientation d'une représentation invariante. Cette conception plus flexible nous permet de choisir plus de combinaisons des représentations spatialement invariantes de la couche précédente. Je crois que cela permet également à un réseau convolutionnel de prendre en compte divers problèmes d'orientation, y compris l'indépendance de la traduction, en ajoutant plus d'assemblages / colonnes de cellules pour faire face à chaque réorientation d'une représentation invariante. Cette conception plus flexible nous permet de choisir plus de combinaisons des représentations spatialement invariantes de la couche précédente. Je crois que cela permet également à un réseau convolutionnel de prendre en compte divers problèmes d'orientation, y compris l'indépendance de la traduction, en ajoutant plus d'assemblages / colonnes de cellules pour faire face à chaque réorientation d'une représentation invariante.

Comme l'explique cet excellent tutoriel sur github ,

Premièrement, la profondeur du volume de sortie est un hyperparamètre: elle correspond au nombre de filtres que nous aimerions utiliser, chacun apprenant à chercher quelque chose de différent dans l'entrée. Par exemple, si la première couche convolutionnelle prend en entrée l'image brute, différents neurones le long de la dimension de profondeur peuvent s'activer en présence de divers bords orientés ou taches de couleur. Nous ferons référence à un ensemble de neurones qui regardent tous la même région de l'entrée comme une colonne de profondeur (certaines personnes préfèrent également le terme fibre).

Ce type de conception est inspiré de diverses structures biologiquement plausibles trouvées dans de vrais organismes, tels que les yeux des chats. Si ce que j'ai dit ici n'est pas assez clair pour répondre à votre question, je peux ajouter beaucoup de détails, y compris plus d'exemples, certains basés sur des organes réels de ce genre.

1 Voir pages 26-27, 36 76 Bonhoff, Gerod M., Using Hierarchical Temporal Memory for Detecting Anomalous Network Activity. Thèse remise en mars 2008 à la faculté de l'Air Force Institute of Technology à Wright-Patterson Air Force Base, Ohio.

SQLServerSteve
la source