Les réseaux de neurones ont révolutionné le domaine de la reconnaissance des formes, mais en raison de l'interprétabilité non évidente du principe de fonctionnement, ils ne sont pas utilisés dans des domaines tels que la médecine et l'évaluation des risques. Il nécessite une représentation visuelle du réseau, ce qui en fera non pas une boßte noire, mais au moins «translucide».
Cristopher Olah, dans Neural Networks, Manifolds, and Topology, a démontré les principes de fonctionnement des réseaux de neurones et les a connectés à la théorie mathématique de la topologie et de la diversité, qui a servi de base à cet article. Pour démontrer le fonctionnement d'un réseau de neurones, des réseaux de neurones profonds de faible dimension sont utilisés.
Comprendre le comportement des réseaux de neurones profonds n'est généralement pas une tùche triviale. Il est plus facile d'explorer des réseaux de neurones profonds de faible dimension - des réseaux dans lesquels il n'y a que quelques neurones dans chaque couche. Pour les réseaux de faible dimension, vous pouvez créer des visualisations pour comprendre le comportement et la formation de ces réseaux. Cette perspective fournira une compréhension plus approfondie du comportement des réseaux de neurones et observera la connexion qui combine les réseaux de neurones avec un domaine mathématique appelé topologie.
Un certain nombre de choses intéressantes en découlent, notamment les limites inférieures fondamentales de la complexité d'un réseau neuronal capable de classer certains ensembles de données.
Considérons le principe du réseau en utilisant un exemple
Commençons par un simple ensemble de données - deux courbes sur un plan. La tùche réseau apprendra à classer les points appartenant aux courbes.

Une façon évidente de visualiser le comportement d'un réseau de neurones, pour voir comment l'algorithme classe tous les objets possibles (dans notre exemple, les points) d'un ensemble de données.
Commençons par la classe la plus simple de réseau neuronal, avec une couche d'entrée et de sortie. Un tel réseau essaie de séparer deux classes de données en les divisant par une ligne.

Un tel réseau n'est pas utilisé dans la pratique. Les réseaux de neurones modernes ont généralement plusieurs couches entre leur entrée et leur sortie, appelées couches «cachées».

Diagramme de réseau simple
Nous visualisons le comportement de ce réseau, en observant ce qu'il fait avec différents points de son domaine. Un réseau à couche cachée sépare les données d'une courbe plus complexe qu'une ligne.

Avec chaque couche, le réseau transforme les données, créant une nouvelle vue. Nous pouvons voir les données dans chacune de ces vues et comment le réseau avec une couche cachée les classe. Lorsque l'algorithme atteint la présentation finale, le réseau neuronal tracera une ligne à travers les données (ou dans des dimensions supérieures - un hyperplan).
Dans la visualisation précédente, les données d'une vue brute sont prises en compte. Vous pouvez l'imaginer en regardant la couche d'entrée. Maintenant, considérez-le aprÚs sa conversion en premiÚre couche. Vous pouvez l'imaginer en regardant la couche cachée.
Chaque mesure correspond Ă l'activation d'un neurone dans la couche.

La couche cachée est entraßnée sur la vue afin que les données soient linéairement séparables.
Rendu de calque continuDans l'approche décrite dans la section précédente, nous apprenons à comprendre les réseaux en regardant la présentation correspondant à chaque couche. Cela nous donne une liste discrÚte de vues.
La partie non triviale consiste à comprendre comment nous passons de l'un à l'autre. Heureusement, les niveaux de réseau neuronal ont des propriétés qui rendent cela possible.
Il existe de nombreux types de couches différents utilisés dans les réseaux de neurones.
Considérons une couche tanh pour un exemple spécifique. La couche de Tanh-tanh (Wx + b) comprend:
- La transformation linéaire de la matrice "poids" W
- Traduction Ă l'aide du vecteur b
- Application ponctuelle de tanh.
Nous pouvons représenter cela comme une transformation continue comme suit:

Ce principe de fonctionnement est trĂšs similaire Ă d'autres couches standard consistant en une transformation affine, suivie de l'application ponctuelle d'une fonction d'activation monotone.
Cette mĂ©thode peut ĂȘtre utilisĂ©e pour comprendre des rĂ©seaux plus complexes. Ainsi, le rĂ©seau suivant classe deux spirales lĂ©gĂšrement emmĂȘlĂ©es Ă l'aide de quatre couches cachĂ©es. Au fil du temps, on peut voir que le rĂ©seau de neurones passe d'une vue brute Ă un niveau supĂ©rieur que le rĂ©seau a Ă©tudiĂ© pour classer les donnĂ©es. Alors que les spirales sont initialement enchevĂȘtrĂ©es, vers la fin, elles sont linĂ©airement sĂ©parables.

En revanche, le prochain rĂ©seau, qui utilise Ă©galement plusieurs niveaux, mais ne peut pas classer deux spirales, qui sont plus enchevĂȘtrĂ©es.

Il convient de noter que ces tùches ont une complexité limitée, car des réseaux de neurones de faible dimension sont utilisés. Si des réseaux plus larges étaient utilisés, la résolution des problÚmes était simplifiée.
Couches Tang
Chaque couche étire et comprime l'espace, mais il ne coupe jamais, ne casse pas et ne le plie pas. Intuitivement, nous voyons que les propriétés topologiques sont préservées sur chaque couche.
De telles transformations qui n'affectent pas la topologie sont appelĂ©es homomorphismes (Wiki - Ceci est une cartographie du systĂšme algĂ©brique A qui prĂ©serve les opĂ©rations de base et les relations de base). Formellement, ce sont des bijections qui sont des fonctions continues dans les deux sens. Dans un mappage bijectif, chaque Ă©lĂ©ment d'un ensemble correspond exactement Ă un Ă©lĂ©ment d'un autre ensemble, et un mappage inverse qui a la mĂȘme propriĂ©tĂ© est dĂ©fini.
Le théorÚmeLes couches à N entrées et N sorties sont des homomorphismes si la matrice de poids W n'est pas dégénérée. (Vous devez faire attention au domaine et à la plage.)
Preuve:1. Supposons que W ait un déterminant non nul. Il s'agit alors d'une fonction linéaire bijective avec une inverse linéaire. Les fonctions linéaires sont continues. La multiplication par W est donc un homéomorphisme.
2. Cartographies - homomorphismes
3. tanh (sigmoïde et softplus, mais pas ReLU) sont des fonctions continues avec des inverses continus. Ce sont des bijections si nous faisons attention à la zone et à la portée que nous envisageons. Leur utilisation ponctuelle est un homomorphisme.
Ainsi, si W a un déterminant non nul, la fibre est homéomorphe.
Topologie et classification
ConsidĂ©rons un ensemble de donnĂ©es Ă deux dimensions avec deux classes A, BâR2:
A = {x | d (x, 0) <1/3}
B = {x | 2/3 <d (x, 0) <1}

A rouge, B bleu
Condition: un réseau de neurones ne peut pas classer cet ensemble de données sans 3 couches cachées ou plus, quelle que soit la largeur.
Comme mentionné précédemment, la classification avec une fonction sigmoïde ou une couche softmax équivaut à essayer de trouver l'hyperplan (ou dans ce cas la ligne) qui sépare A et B dans la représentation finale. Avec seulement deux couches masquées, le réseau est topologiquement incapable de partager des données de cette maniÚre et est voué à l'échec dans cet ensemble de données.
Dans la visualisation suivante, nous observons une vue latente pendant que le réseau s'entraßne avec la ligne de classification.

Pour ce réseau de formation, il ne suffit pas d'atteindre un résultat à cent pour cent.
L'algorithme tombe dans un minimum local non productif, mais est capable d'atteindre une précision de classification de ~ 80%.
Dans cet exemple, il n'y avait qu'une seule couche masquée, mais cela n'a pas fonctionné.
Déclaration. Soit chaque couche est un homomorphisme, soit la matrice de poids de la couche a le déterminant 0.
Preuve:S'il s'agit d'un homomorphisme, alors A est toujours entourĂ© de B, et la ligne ne peut pas les sĂ©parer. Mais supposons qu'il ait un dĂ©terminant de 0: alors l'ensemble de donnĂ©es s'effondre sur un axe. Ătant donnĂ© que nous avons affaire Ă quelque chose d'homĂ©omorphe Ă l'ensemble de donnĂ©es d'origine, A est entourĂ© de B, et l'effondrement sur n'importe quel axe signifie que nous aurons quelques points de A et B mĂ©langĂ©s, ce qui rend la distinction impossible.
Si nous ajoutons un troisiÚme élément caché, le problÚme deviendra trivial. Le réseau neuronal reconnaßt la représentation suivante:

La vue permet de séparer les jeux de données avec un hyperplan.
Pour mieux comprendre ce qui se passe, regardons un ensemble de données encore plus simple, qui est unidimensionnel:

A = [- 1 / 3,1 / 3]
B = [- 1, â2 / 3] âȘ [2 / 3,1]
Sans utiliser une couche de deux ou plusieurs éléments cachés, nous ne pouvons pas classer cet ensemble de données. Mais, si nous utilisons un réseau à deux éléments, nous apprendrons à représenter les données comme une bonne courbe qui nous permet de séparer les classes à l'aide d'une ligne:

Que se passe-t-il? Un élément caché apprend à tirer lorsque x> -1/2, et l'autre apprend à tirer lorsque x> 1/2. Lorsque le premier est déclenché, mais pas le second, nous savons que nous sommes en A.
Conjecture de variété
Cela s'applique-t-il aux ensembles de donnĂ©es du monde rĂ©el, tels que les ensembles d'images? Si vous ĂȘtes sĂ©rieux au sujet de l'hypothĂšse de la diversitĂ©, je pense que cela compte.
L'hypothĂšse multidimensionnelle est que les donnĂ©es naturelles forment des variĂ©tĂ©s de faible dimension dans l'espace d'implantation. Il y a des raisons Ă la fois thĂ©oriques [1] et expĂ©rimentales [2] de croire que cela est vrai. Si oui, alors la tĂąche de l'algorithme de classification est de sĂ©parer le faisceau de variĂ©tĂ©s enchevĂȘtrĂ©es.
Dans les exemples précédents, une classe a complÚtement entouré l'autre. Cependant, il est peu probable que la variété d'images de chiens soit complÚtement entourée d'une collection d'images de chats. Mais il existe d'autres situations topologiques plus plausibles qui peuvent encore survenir, comme nous le verrons dans la section suivante.
Connexions et homotopies
Un autre jeu de données intéressant est les deux tori connectés A et B.

Comme les prĂ©cĂ©dents ensembles de donnĂ©es que nous avons examinĂ©s, cet ensemble de donnĂ©es ne peut pas ĂȘtre divisĂ© sans utiliser n + 1 dimensions, Ă savoir la quatriĂšme dimension.
Les connexions sont Ă©tudiĂ©es dans la thĂ©orie des nĆuds, dans le domaine de la topologie. Parfois, lorsque nous voyons une connexion, il n'est pas immĂ©diatement clair s'il s'agit d'une incohĂ©rence (beaucoup de choses qui s'emmĂȘlent mais peuvent ĂȘtre sĂ©parĂ©es par une dĂ©formation continue) ou non.

Incohérence relativement simple.
Si un rĂ©seau neuronal utilisant des couches avec seulement trois unitĂ©s peut le classer, alors il est incohĂ©rent. (Question: toutes les incohĂ©rences peuvent-elles ĂȘtre classĂ©es sur le rĂ©seau avec seulement trois incohĂ©rences, thĂ©oriquement?)
Du point de vue de ce nĆud, la visualisation continue des reprĂ©sentations créées par un rĂ©seau de neurones est une procĂ©dure pour dĂ©nouer les connexions. En topologie, nous appellerons cette isotopie ambiante entre le lien d'origine et les liens sĂ©parĂ©s.
Formellement, l'isotopie de l'espace environnant entre les variĂ©tĂ©s A et B est une fonction continue F: [0,1] Ă X â Y telle que chaque Ft est un homĂ©omorphisme de X Ă sa gamme, F0 est une fonction d'identitĂ© et F1 mappe A Ă B. T .e. Ft passe continuellement de la carte A Ă elle-mĂȘme, Ă la carte A Ă B.
ThĂ©orĂšme: il y a une isotopie de l'espace environnant entre l'entrĂ©e et la reprĂ©sentation du niveau du rĂ©seau si: a) W n'est pas dĂ©gĂ©nĂ©rĂ©, b) nous sommes prĂȘts Ă transfĂ©rer des neurones vers la couche cachĂ©e et c) il y a plus d'un Ă©lĂ©ment cachĂ©.
Preuve:1. La partie la plus difficile est la transformation linĂ©aire. Pour rendre cela possible, nous avons besoin de W pour avoir un dĂ©terminant positif. Notre prĂ©misse est qu'il n'est pas Ă©gal Ă zĂ©ro, et nous pouvons inverser le signe s'il est nĂ©gatif en commutant deux neurones cachĂ©s, et donc nous pouvons garantir que le dĂ©terminant est positif. L'espace des matrices dĂ©terminantes positives est connectĂ©, donc il existe p: [0,1] â GLn Âź5 tel que p (0) = Id et p (1) = W. On peut passer en continu de la fonction identitĂ© Ă la transformation W en utilisant fonctions x â p (t) x, multipliant x Ă chaque instant t par une matrice passante continue p (t).
2. On peut passer continuellement de la fonction d'identitĂ© Ă la b-map en utilisant la fonction x â x + tb.
3. On peut passer continuellement de la fonction identique Ă l'utilisation ponctuelle de Ï avec la fonction: x â (1-t) x + tÏ (x)
Jusqu'à présent, il est peu probable que les relations dont nous avons parlé apparaissent dans des données réelles, mais il existe des généralisations d'un niveau supérieur. Il est plausible que de telles fonctionnalités puissent exister dans des données réelles.
Les connexions et les nĆuds sont des variĂ©tĂ©s unidimensionnelles, mais nous avons besoin de 4 dimensions pour que les rĂ©seaux puissent tous les dĂ©mĂȘler. De mĂȘme, un espace dimensionnel encore plus Ă©levĂ© peut ĂȘtre nĂ©cessaire pour pouvoir Ă©tendre les variĂ©tĂ©s Ă n dimensions. Tous les collecteurs Ă n dimensions peuvent ĂȘtre Ă©tendus en 2n + 2 dimensions. [3]
Sortie facile
Le moyen le plus simple est d'essayer de sĂ©parer les collecteurs et d'Ă©tirer les piĂšces aussi emmĂȘlĂ©es que possible. Bien que cela ne soit pas proche d'une vĂ©ritable solution, une telle solution peut atteindre une prĂ©cision de classification relativement Ă©levĂ©e et ĂȘtre un minimum local acceptable.

De tels minima locaux sont absolument inutiles pour essayer de résoudre des problÚmes topologiques, mais les problÚmes topologiques peuvent fournir une bonne motivation pour étudier ces problÚmes.
D'un autre cÎté, si nous voulons seulement obtenir de bons résultats de classification, l'approche est acceptable. Si un petit morceau d'un collecteur de données est pris sur un autre collecteur, est-ce un problÚme? Il est probable qu'il sera possible d'obtenir des résultats de classement arbitrairement bons, malgré ce problÚme.
Des couches améliorées pour manipuler les collecteurs?
Il est difficile d'imaginer que les couches standard avec des transformations affines sont vraiment bonnes pour manipuler les variétés.
Peut-ĂȘtre qu'il est logique d'avoir une couche complĂštement diffĂ©rente, que nous pouvons utiliser dans la composition avec des couches plus traditionnelles?
L'étude d'un champ vectoriel avec une direction dans laquelle nous voulons déplacer la variété est prometteuse:

Et puis nous déformons l'espace en fonction du champ vectoriel:

On pourrait étudier le champ vectoriel à des points fixes (il suffit de prendre quelques points fixes de l'ensemble de données de test pour les utiliser comme ancres) et interpoler en quelque sorte.
Le champ vectoriel ci-dessus a la forme:P (x) = (v0f0 (x) + v1f1 (x)) / (1 + 0 (x) + f1 (x))
OĂč v0 et v1 sont des vecteurs, et f0 (x) et f1 (x) sont des Gaussiens Ă n dimensions.
Couches K-voisins les plus proches
La sĂ©parabilitĂ© linĂ©aire peut ĂȘtre un besoin Ă©norme et peut-ĂȘtre dĂ©raisonnable pour les rĂ©seaux de neurones. Il est naturel d'utiliser la mĂ©thode des k plus proches voisins (k-NN). Cependant, le succĂšs du k-NN dĂ©pend fortement de la prĂ©sentation qu'il classe, donc une bonne prĂ©sentation est requise avant que le k-NN puisse bien fonctionner.
k-NN se diffĂ©rencie par la reprĂ©sentation sur laquelle il agit. De cette façon, nous pouvons directement former le rĂ©seau pour classer k-NN. Cela peut ĂȘtre vu comme une sorte de couche de «plus proche voisin» qui agit comme une alternative Ă softmax.
Nous ne voulons pas mettre en garde contre l'ensemble de nos formations pour chaque mini-soirée, car ce sera une procédure trÚs coûteuse. L'approche adaptée consiste à classer chaque élément du mini-lot en fonction des classes des autres éléments du mini-lot, en donnant à chaque unité de poids divisée par la distance de la cible de classification.
Malheureusement, mĂȘme avec des architectures complexes, l'utilisation de k-NN rĂ©duit la probabilitĂ© d'erreur - et l'utilisation d'architectures plus simples dĂ©grade les rĂ©sultats.
Conclusion
Les propriĂ©tĂ©s topologiques des donnĂ©es, telles que les relations, peuvent rendre impossible la division linĂ©aire des classes en utilisant des rĂ©seaux de faible dimension, quelle que soit la profondeur. MĂȘme dans les cas oĂč cela est techniquement possible. Par exemple, les spirales, qu'il peut ĂȘtre trĂšs difficile de sĂ©parer.
Pour une classification prĂ©cise des donnĂ©es, les rĂ©seaux de neurones ont besoin de larges couches. De plus, les couches traditionnelles du rĂ©seau neuronal sont mal adaptĂ©es pour reprĂ©senter des manipulations importantes avec des variĂ©tĂ©s; mĂȘme si nous rĂ©glons les poids manuellement, il serait difficile de reprĂ©senter de maniĂšre compacte les transformations que nous voulons.
Liens vers des sources et explications[1] Une grande partie des transformations naturelles que vous voudrez peut-ĂȘtre effectuer sur une image, comme la translation ou la mise Ă l'Ă©chelle d'un objet ou la modification de l'Ă©clairage, formeraient des courbes continues dans l'espace image si vous les exĂ©cutiez en continu.
[2] Carlsson et al. ont constaté que des taches locales d'images forment une bouteille de klein.
[3] Ce résultat est mentionné dans la sous-section de Wikipedia sur les versions d'isotopie.