Utilisateur:Goel/Réseau neuronal convolutif

Une page de Wikipédia, l'encyclopédie libre.

(Article traduit de son équivalent en anglais)

Dans l'apprentissage automatique, un réseau de neurones convolutifs (CNN ou ConvNet) est un type de réseau de neurones artificiels acycliques (feedforward), dans lequel le motif de connexion entre les neurones est inspiré par le cortex visuel des animaux. Les neurones individuels sont arrangés de telle sorte qu'ils répondent aux régions qui se chevauchent lors du pavage du champ visuel [1]. Leur fonctionnement est inspiré par les processus biologiques [2], ils conssistent en un empilage multicouche de perceptrons, dont le but est de prétraiter [3] de petites quantités d'informations. Les réseaux neuronaux convolutifs ont de larges applications dans la reconnaissance d'image et vidéo, les systèmes de recommandation [4] et le traitement du langage naturel [5].

Présentation[modifier | modifier le code]

Considérons l'analyse d'une image.

Un réseau neuronal convolutif se compose de 2 types de neurones artificiels, agencés en « couches » traitant successivement l'information :

  • les neurones de traitement, qui traitent une portion limitée de l'image,
  • les neurones de mise en commun des sorties.

Un traitement non-linéaire et ponctuel peut être appliqué entre chaque couche pour améliorer la pertinence du résultat[6].

Base[modifier | modifier le code]

Dans le cadre de la reconnaissance d'image, cette dernière est « pavée », c'est-à-dire découpée en petites zones (appelées tuiles). Chaque tuile sera traitée individuellement par un ensemble de neurones qui constitue la première couche du traitement. Dans les faits, la zone analysée est légèrement plus grande que la tuile et est appelée « champ récepteur ». Les champs récepteurs se chevauchent donc, afin d'obtenir une meilleure représentation de l'image originale ainsi que la cohérence du traitement au fil des couches de traitement[7]. En sortie d'une couche de traitement un nouveau pavage peut être appliqué.

Traitement convolutif[modifier | modifier le code]

L'élément spécifique des réseaux convolutifs est la (les) couche spéciale de mise en commun des signaux issus des neurones de traitement (localement ou globalement) [8] [9]. Cette mise en commun est basée sur une opération mathématique appelée « convolution » (une sorte de fusion entre deux fonctions mathématiques). Le résultat du traitement peut être modulé en fonction de l'étendue des champs récepteurs qui sont utilisés lors d'un traitement de convolution.

Un avantage majeur des réseaux convolution est l'utilisation d'un poids unique associé aux signaux entrant dans tous les neurones d'une même couche de convolution (ce qui signifie que le même filtre est utilisé pour chaque pixel dans la couche). Cette méthode réduit l'empreinte mémoire et améliore les performances[3].

Certains réseaux de neurones à temporisation (delay) utilisent également une architecture très similaire aux réseaux neuronaux de convolution, en particulier ceux pour la reconnaissance d'image et/ou la classification des tâches, puisque le pavage en sortie de chaque couche de neurones peut être minuté d'une manière utile pour l'analyse des images [10]

Comparé à d'autres algorithmes de classification de l'image, les réseaux de neurones convolutifs utilisent relativement peu de pré-traitement. Cela signifie que le réseau est responsable de l'apprentissage de ses propres filtres, qui dans les algorithmes traditionnels, seraient faits à la main. L'absence d'une connaissance initiale et d'intervention humaine est un atout majeur pour les CNN.

Histoire[modifier | modifier le code]

La conception des réseaux de neurones convolutifs suit la découverte de mécanismes visuels dans les organismes vivants. Début 1968, des travaux [11] ont montré chez l'animal, que le cortex visuel contient des arrangements complexes de cellules, responsables de la détection de la lumière dans les sous-régions du champ visuel qui se chevauchent, appelés champs réceptifs. Le document a identifié deux types de cellules de base: les cellules simples, qui répondent au maximum à des modèles de pointe comme spécifiques à l'intérieur de leur champ récepteur, et les cellules complexes, qui ont des champs récepteurs plus grands et sont localement invariant à la position exacte du motif. Ces cellules agissent comme des filtres locaux sur l'espace d'entrée.

Le neocognitron, un prédécesseur de réseaux de convolution[12], a été introduit dans un document de 1980 Erreur de référence : Balise fermante </ref> manquante pour la balise <ref>. Les neocognitron diffère de réseaux convolution parce qu'il ne force pas les unités situées à plusieurs positions d'avoir les mêmes poids trainable. Cette idée apparaît en 1986 dans la version livre du papier de rétropropagation originale [13] (Figure 14). Ils ont été développés en 1988 pour les signaux temporels [14] Leur conception a été améliorée en 1998[15], généralisée en 2003[16], et simplifié dans la même année[17]. Le célèbre réseau Lenet-5 est capable de reconnaître les chiffres et est appliqué à la reconnaissance de nombres manuscrits sur des chèques. Toutefois, compte tenu des problèmes plus complexes de la largeur et la profondeur du réseau augmente et devient limitée par les ressources informatiques ainsi obstacle à l'exécution.

Une conception différente CNN a été proposé en 1988 [18] pour l'application de la décomposition de unidimensionnelles électromyographie signaux. Cette conception a été modifiée en 1989 à d'autres conceptions à base de convolution[19],[20].

Suite à l'article de 2005 qui a établi la valeur du GPU Computing pour l'apprentissage de la machine[21], plusieurs publications ont décrit des moyens plus efficaces pour former des réseaux de neurones à convolution utilisant le GPU Computing [22],[23],[24],[25] En 2011, ils ont été affinés et mis en œuvre sur un GPU, avec des résultats impressionnants [8] En 2012, Ciresan et al. Significativement amélioré la meilleure performance dans la littérature pour plusieurs images base de données s, y compris le base de données MNIST, la base de données noRb, le HWDB1. 0 données (caractères chinois), l'ensemble de données CIFAR10 (ensemble de données de 60000 32x32 images RVB marqués)[6], et l'ensemble de données IMAGEnet [26]

Caractéristiques distinctives[modifier | modifier le code]

Bien que traditionnelle perceptron multicouches (MLP) modèles ont été utilisés avec succès pour la reconnaissance d'image, en raison de la connectivité complète entre les nœuds qu'ils souffrent de la malédiction de dimensionnalité et donc n'échelle pas bien à des images haute résolution.

couches CNN disposées en 3 dimensions

Par exemple, dans ICRA-10, les images ne sont de taille 32x32x3 (32 de large, 32 de haut, 3 canaux de couleur), de sorte qu'un seul neurone entièrement connecté dans une première couche cachée d'un réseau régulier Neural aurait 32 * 32 * 3 = 3072 poids. Une image 200x200, cependant, conduirait à des neurones qui ont 200 * 200 * 3 = 120.000 poids.

Une telle architecture de réseau ne prend pas en compte la structure spatiale des données, le traitement des pixels d'entrée qui sont éloignés et rapprochés exactement sur le même pied. De toute évidence, la pleine connectivité des neurones est inutile dans le cadre de la reconnaissance de l'image, et le grand nombre de paramètres conduit rapidement à overfitting.

les réseaux de neurones convolutifs sont biologiquement inspirés des variantes de perceptrons multicouches, conçu pour émuler le comportement d'un cortex visuel. Ces modèles atténuer les défis posés par l'architecture MLP en exploitant la forte corrélation actuelle spatialement locale dans les images naturelles. Par opposition à MLP, CNN ont les traits distinctifs suivants:

  1. 'Volumes 3D de neurones' . Les couches d'un CNN ont neurones disposés en 3 dimensions: largeur, hauteur et profondeur. Les neurones à l'intérieur d'une couche sont uniquement reliés à une petite zone de la couche devant elle, appelé champ réceptif. Distinct types de couches, à la fois localement et complètement connectés, sont empilés pour former une architecture CNN.
  2. 'De la connectivité locale' : suivant le concept de champ réceptif s, CNNs exploiter la corrélation spatiale locale en appliquant un modèle de connectivité locale entre les neurones des couches adjacentes. L'architecture assure ainsi que les «filtres» apprises produisent la réponse la plus forte à un motif d'entrée dans l'espace local. Empilement beaucoup de ces couches conduit à des «filtres» non-linéaires qui deviennent de plus en plus «globale» (à savoir en réponse à une région plus vaste de l'espace de pixel). Cela permet au réseau de d'abord créer de bonnes représentations de petites parties de l'entrée, puis assembler les représentations de plus grandes surfaces d'eux.
  3. 'Poids partagés' : Dans CNNs, chaque filtre est répliqué à travers tout le champ visuel. Ces unités répliqués partagent la même paramétrisation (vecteur de poids et biais) et forment une carte de fonction. Cela signifie que tous les neurones dans une couche donnée convolutif détectent exactement la même fonction. unités Réplication de cette manière permet de fonctionnalités pour être détectées indépendamment de leur position dans le champ visuel, ce qui constitue la propriété de traduction invariance.

Ensemble, ces propriétés permettent des réseaux de neurones à convolution pour parvenir à une meilleure généralisation sur des problèmes de vision. le partage de poids aide également en réduisant considérablement le nombre de paramètres libres étant appris, réduisant ainsi les besoins en mémoire pour le fonctionnement du réseau. La diminution de l'empreinte mémoire permet la formation des réseaux plus grands et plus puissants.

Les blocs de construction[modifier | modifier le code]

Une architecture CNN est formée par un empilement de couches distinctes qui transforment le volume d'entrée dans un volume de sortie (par exemple, les scores de maintien de la classe) par une fonction différentiable. Quelques types distincts de couches sont couramment utilisés. Nous discutons plus loin:

Neurones d'une couche de convolution, relié à leur champ récepteur

Couche convolution[modifier | modifier le code]

La couche convolution est le bloc de construction de base d'un CNN. Les paramètres de la couche se composent d'un ensemble de filtres apprenables (ou noyaux), qui ont un petit champ récepteur, mais étendent à travers toute la profondeur du volume d'entrée. Au cours de la passe avant, chaque filtre est convoluée à travers la largeur et la hauteur du volume d'entrée, le calcul du produit scalaire entre les entrées du filtre et l'entrée et la production d'une carte d'activation de deux dimensions de ce filtre. En conséquence, le réseau apprend les filtres qui activent quand ils voient un certain type spécifique de fonction à une position spatiale dans l'entrée.

Empiler les cartes d'activation pour tous les filtres le long de la dimension de profondeur formant le volume de sortie complet de la couche de convolution. Chaque entrée dans le volume de sortie peut donc aussi être interprété comme un signal de sortie d'un neurone qui ressemble à une petite région dans les paramètres d'entrée et partage avec les neurones de la même carte d'activation.

Connectivité locale[modifier | modifier le code]

Lorsque vous traitez avec des entrées de grande dimension tels que des images, il est impossible de se connecter à tous les neurones neurones dans le volume précédent, car une telle architecture de réseau ne prend pas la structure spatiale des données en compte. exploiter les réseaux convolutifs corrélation spatiale locale en application d'une configuration de connectivité locale entre les neurones des couches adjacentes: chaque neurone est connecté à seulement une petite zone du volume d'entrée. L'étendue de cette connectivité est un hyperparam'etre appelé le champ récepteur du neurone. Les connexions sont locales dans l'espace (le long de la largeur et hauteur), mais toujours étendent sur toute la profondeur du volume d'entrée. Une telle architecture assure que les filtres appris produisent la plus forte réponse à une forme d'entrée dans l'espace local.

Arrangement spatial[modifier | modifier le code]

Trois hyperparamètres contrôler la taille du volume de sortie de la couche de convolution: le 'profondeur, stride' et 'zero-padding' .

  1. 'Profondeur' du volume de sortie commande le nombre de neurones dans la couche qui se connectent à la même région du volume d'entrée. Tous ces neurones apprendront à activer pour les différentes fonctionnalités de l'entrée. Par exemple, si la première couche convolution prend l'image brute en entrée, puis des neurones différents le long de la dimension de profondeur peuvent activer en présence de divers bords orienté, ou taches de couleur.
  2. 'Stride' contrôle la façon dont les colonnes de profondeur autour des dimensions spatiales (largeur et hauteur) sont alloués. Lorsque la foulée est 1, une nouvelle colonne de profondeur de neurones est alloué à des positions spatiales seulement 1 unité spatiale à part. Cela conduit à des champs récepteurs fortement se chevauchent entre les colonnes, et aussi aux grands volumes de production. A l'inverse, si des progrès plus élevés sont utilisés, les zones réceptives se chevauchent moins et le volume de sortie qui en résulte aura des dimensions plus petites dans l'espace.
  3. Parfois, il est commode de l'entrée pad avec des zéros à la frontière du volume d'entrée. La taille de ce 'zero-padding' est un troisième hyperparamètre. Remplissage de zéros permet de contrôler la dimension spatiale des volumes de production. En particulier, il est parfois souhaitable de conserver exactement la taille spatiale du volume d'entrée.

La taille spatiale du volume de sortie peut être calculée en fonction de la taille du volume d'entrée , la taille du champ du noyau des neurones de la couche Conv , le pas avec lequel ils sont appliquées , et la quantité de zéro padding utilisé à la frontière. La formule pour calculer le nombre de neurones « adaptent » dans un volume donné est donné par . Si ce nombre est un nombre entier, les progrès sont mal réglés et les neurones ne peuvent pas être carrelés pour tenir dans le volume d'entrée d'une manière symétrique. En général, la mise en zéro padding pour être lorsque la foulée est assure que le volume d'entrée et le volume de sortie auront le même dimensionner l'espace. Bien qu'il soit généralement pas tout à fait nécessaire d'utiliser la totalité des neurones de la couche précédente, par exemple, vous pouvez décider d'utiliser seulement une partie de rembourrage.

Paramètre Partage[modifier | modifier le code]

système de partage des paramètres est utilisé dans les couches convolution pour contrôler le nombre de paramètres libres. Elle repose sur une hypothèse raisonnable: Que si une caractéristique de patch est utile pour calculer à une certaine position dans l'espace, alors il devrait également être utile pour calculer à une position différente. En d'autres mots, désignant une seule tranche 2 dimensions de la profondeur en tant que 'profondeur tranche' , nous limitons les neurones dans chaque tranche de profondeur à utiliser les mêmes poids et biais.

Étant donné que tous les neurones dans une seule tranche de profondeur partagent la même paramétrisation, puis la passe en avant dans chaque tranche de profondeur de la couche de CONV peut être calculée comme convolution des poids du neurone avec le volume d'entrée (d'où le nom: convolution Couche). Par conséquent, il est courant de se référer aux ensembles de poids de filtre (ou noyau), qui est convoluée avec l'entrée. Le résultat de cette convolution est une carte d'activation, et l'ensemble des cartes d'activation pour chacun des filtres différents sont empilés le long de la dimension en profondeur pour produire le volume de sortie. Partage des paramètres contribue à l'invariance par translation de l'architecture CNN.

Il est important de noter que, parfois, le partage des paramètres hypothèse n'a pas de sens. Cela est particulièrement le cas lorsque les images d'entrée à un CNN ont une structure centrée spécifique, dans laquelle nous nous attendons complètement différentes caractéristiques à tirer sur les différents emplacements spatiaux. Un exemple pratique est lorsque l'entrée sont des visages qui ont été centrées sur l'image: nous pourrions nous attendre différentes caractéristiques spécifiques des yeux ou des cheveux spécifiques à tirer dans différentes parties de l'image. Dans ce cas, il est courant de détendre le système de partage des paramètres, et au lieu simplement appeler la couche une couche connectée localement.

Couche Pooling[modifier | modifier le code]

Fichier:Pooling.png Max
Max mise en commun avec un filtre 2x2 et stride = 2

Un autre concept important de CNNs est mise en commun, ce qui est une forme de sous-échantillonnage non-linéaire. l'image d'entrée mettant en commun des cloisons en une série de rectangles ne se chevauchant pas, et pour chaque sous-région, par exemple, les sorties au maximum. L'intuition est que, une fois une caractéristique a été trouvée, son emplacement exact est pas aussi important que son emplacement approximatif par rapport à d'autres caractéristiques. La fonction de la couche de mise en commun est de réduire progressivement la taille spatiale de la représentation afin de réduire la quantité de paramètres et de calcul dans le réseau, et donc de contrôler également overfitting. Il est fréquent d'insérer périodiquement une couche de pooling entre-deux couches Conv successives dans une architecture CNN. L'opération Pooling fournit une forme de traduction invariance.

La couche de pooling fonctionne indépendamment sur chaque tranche de profondeur de l'entrée et redimensionne spatialement. La forme la plus courante est une couche de mise en commun avec des filtres de taille 2x2 appliquées avec une foulée de 2 sous-échantillonne à chaque tranche de profondeur dans l'entrée par 2 le long de la largeur et la hauteur, en rejetant 75% des activations. Chaque opération MAX serait, dans ce cas prendre un max de plus de 4 chiffres. La dimension de profondeur reste inchangée.

En plus de la mise en commun max, les unités de mise en commun peuvent également effectuer d'autres fonctions, telles que la mise en commun moyenne ou même norme L2 mise en commun . pooling moyenne a souvent été utilisé historiquement, mais a récemment perdu la faveur par rapport à l'opération de mise en commun max, qui a été montré pour mieux travailler dans la pratique.

En raison de la réduction agressive de la taille de la représentation (qui est utile seulement pour les petits ensembles de données pour contrôler overfitting), la tendance actuelle dans la littérature est à l'aide de petits filtres [27] ou jeter la couche de mise en commun tout à fait [28]

Couche Relu[modifier | modifier le code]

Relu est l'abréviation de Unités Rectifié linéaires. Ceci est une couche de neurones qui applique la non saturant activation de la fonction . Il augmente les propriétés non linéaires de la fonction de décision et de l'ensemble du réseau sans affecter les champs récepteurs de la couche de convolution.

D'autres fonctions sont également utilisées pour augmenter la non-linéarité, par exemple le saturant tangente hyperbolique , < maths alt = "fonction de x est égal à la valeur absolue de la tangente hyperbolique de x"> f (x) = | \ tanh (x) | </math>, et la fonction sigmoïde mathématiques alt = "fonction <de x est égal à l'inverse d'un e plus pour la puissance moins x "> f (x) = (1 + e ^ {-} x) ^ {- 1} </math>. Par rapport à d'autres fonctions de l'utilisation de Relu est préférable, car il en résulte la formation de réseau neuronal plusieurs fois plus rapide[29], sans faire une différence significative à la généralisation de précision.

Couche entièrement connecté[modifier | modifier le code]

Enfin, après plusieurs couches de mise en commun de convolution et max, le raisonnement de haut niveau dans le réseau neuronal se fait via des couches entièrement connectées. Neurones dans une couche entièrement connecté ont des connexions complètes à toutes les activations dans la couche précédente, comme on le voit dans les réseaux réguliers de neurones. Leurs activations peuvent donc être calculées avec une multiplication matricielle suivie d'un décalage de polarisation.

Couche de perte[modifier | modifier le code]

La couche de perte spécifie comment la formation du réseau pénalise l'écart entre les étiquettes prévues et vraies et est normalement la dernière couche dans le réseau. Diverses fonctions de perte appropriées pour différentes tâches peuvent y être utilisés. Softmax la perte est utilisée pour prédire une seule classe de K Classes mutuellement exclusives. sigmoïde entropie croisée la perte est utilisée pour prédire K valeurs de probabilité indépendante en . euclidienne la perte est utilisée pour régressant aux étiquettes à valeurs réelles .

modèles de calque[modifier | modifier le code]

Modèle:Section Confondre La forme la plus commune d'une architecture CNN empile quelques couches Conv-Relu, les suit avec des couches POOL, et répète ce schéma jusqu'à ce que l'entrée a été fusionné dans l'espace à une petite taille. À un certain point, il est fréquent de faire la transition vers les couches entièrement connectées. La dernière couche entièrement connecté maintient la sortie, tels que les scores de classe. Voici quelques architectures communes CNN qui suivent ce modèle:

  • INPUT -> FC implémente un classificateur linéaire
  • INPUT -> CONV -> RELU -> FC
  • INPUT -> [CONV -> RELU -> POOL] * 2 -> FC -> RELU -> FC Ici, il y a une couche de CONV unique entre chaque couche POOL
  • INPUT -> [CONV -> RELU -> CONV -> RELU -> POOL] * 3 -> [FC -> RELU] * 2 -> FC Ici, il y a deux couches CONV empilées avant chaque couche PISCINE.
Fichier:Cnn.png typique
Architecture typique CNN

Empilage des couches de CONV avec de plus petits filtres plutôt que d'avoir une couche de CONV avec un grand filtre permet d'exprimer des fonctionnalités plus puissantes de l'entrée, avec moins de paramètres. Comme un inconvénient pratique, plus de mémoire pourrait être nécessaire pour contenir tous les résultats intermédiaires de la couche CONV pour l'étape rétropropagation.

hyperparamètres Choisir[modifier | modifier le code]

CNNs utiliser plus hyperparamètres qu'un MLP standard. Alors que les règles habituelles pour les taux d'apprentissage et des constantes de régularisation appliquent toujours, ce qui suit devrait garder à l'esprit lors de l'optimisation des réseaux de convolution.

Nombre de filtres[modifier | modifier le code]

Depuis fonction taille de la carte diminue avec la profondeur, les couches proches de la couche d'entrée ont tendance à avoir moins de filtres tandis que les couches, plus haut, peuvent avoir plus. Pour égaliser le calcul à chaque couche, le produit du nombre de caractéristiques et le nombre de positions de pixel est généralement choisi pour être à peu près constante à travers les couches. La préservation de l'information sur l'entrée, il faudrait maintenir le nombre total d'activations (nombre de cartes fonction multiplié par le nombre de positions de pixel) pour être non décroissante d'une couche à l'autre.

Le nombre de cartes fonctionnalité contrôle directement la capacité et dépend du nombre d'exemples disponibles et la complexité de la tâche.

Filtre forme[modifier | modifier le code]

formes communes sur le terrain dans la littérature varient considérablement, et sont généralement choisis en fonction de l'ensemble de données. Les meilleurs résultats sur les images de MNIST taille (28x28) sont habituellement dans la gamme de 5x5 sur la première couche, tandis que les ensembles de données d'image naturelle (souvent avec des centaines de pixels dans chaque dimension) ont tendance à utiliser de plus grands filtres de première couche de 12x12 de forme ou 15x15.

Le défi est donc de trouver le bon niveau de granularité de manière à créer des abstractions à l'échelle appropriée, étant donné un ensemble de données particulier.

Forme Max Pooling[modifier | modifier le code]

Les valeurs typiques sont 2x2. Très grands volumes d'entrée peuvent justifier la mise en commun 4x4 dans les couches inférieures. Cependant, le choix des formes plus grandes seront considérablement réduire la dimension du signal, et peut entraîner des rejets trop d'informations.

méthodes de régularisation[modifier | modifier le code]

Empirique[modifier | modifier le code]

Dropout[modifier | modifier le code]

Depuis une couche entièrement connecté occupe la plupart des paramètres, il est enclin à overfitting. Le abandon méthode [30] est introduit pour éviter le surajustement. A chaque étape de la formation, les nœuds individuels sont soit « abandonnés » du filet avec une probabilité ou conservés avec une probabilité , de sorte qu'un réseau réduit est laissée; bords entrants et sortants à un nœud tombé-out[Quoi ?] sont également supprimés. Seul le réseau réduit est formé sur les données à ce stade. Les nœuds supprimés sont ensuite réinsérés dans le réseau avec leurs poids originaux.

Dans les étapes de formation, la probabilité d'un nœud caché sera retenu (à savoir pas abandonné) est habituellement de 0,5; pour les nœuds d'entrée de la probabilité de rétention devrait être beaucoup plus élevé, intuitivement, car l'information est directement perdue lorsque les nœuds d'entrée sont ignorés.

Au temps de test après la formation est terminée, nous aimerait idéalement trouver un moyen de l'échantillon de tous les possibles chute-out des réseaux; Malheureusement, cela est impossible pour les grandes valeurs de . Cependant, nous pouvons trouver une approximation en utilisant le réseau complet avec la sortie de chaque nœud pondérée par un facteur de , de sorte que la valeur attendue de la sortie d'un nœud est le même que dans les étapes de formation.

Notes et références[modifier | modifier le code]

  1. « convolution neural Networks (Lenet) - 0,1 documentation deep learning », LISA Lab (consulté le )
  2. Modèle:Cite la revue
  3. a et b Yann LeCun, « Lenet-5, les réseaux de neurones convolutifs » (consulté le )
  4. Modèle:Cite livre
  5. Modèle:Cite revue
  6. a et b Modèle:Cite la revue
  7. Keisuke Korekado, Takashi Morie, Osamu Nomura, Hiroshi Ando, Teppei Nakano, Masakazu Matsugu et Atsushi Iwata, « A Convolutif Neural Network VLSI pour la reconnaissance d'images utilisant Fusionné / mixte analogique-numérique Architecture », Knowledge-Based Engineering Systems Intelligent Information et,‎ , p. 169-176
  8. a et b Modèle:Cite la revue
  9. « Classification IMAGEnet avec convolution Profonde Réseaux de neurones » (consulté le )
  10. Modèle:Cite la revue
  11. Modèle:Cite revue
  12. Modèle:Cite la revue
  13. (en) David E. Rumelhart et Geoffrey E. Hinton, {{Ouvrage}} : paramètre titre manquant, MIT Press, (ISBN 9780262680530, lire en ligne), « Chapter 8: Apprentissage Représentations internes par ErrorPropagation », p. 319--362
  14. Modèle:Cite la revue
  15. Modèle:Cite la revue
  16. S. Behnke. Réseaux de neurones hiérarchiques pour Interprétation des images, le volume 2766 de Lecture Notes in Computer Science. Springer, 2003.
  17. Simard, Patrice, David Steinkraus, et John C. Platt. «Meilleures pratiques pour les réseaux de neurones convolutifs appliqués à Visual d'analyse." Dans ICDAR, vol. 3, pp. 958-962. 2003.
  18. Daniel Graupe, Ruey Wen Liu, George S Moschytz. "Applications des réseaux de neurones à traitement du signal médical». Dans Proc. 27 IEEE décision et contrôle Conf., Pp. 343-347, 1988.
  19. Daniel Graupe, Boris Vern, G. Gruener, Aaron Field et Qiu Huang. "La décomposition des signaux de l'EMG de surface en un seul potentiel d'action des fibres au moyen de réseau de neurones». Proc. IEEE international Symp. sur les circuits et systèmes, pp. 1008-1011, 1989.
  20. Qiu Huang, Daniel Graupe, Yi Fang Huang, Ruey Wen Liu « Identification des modes de tir des signaux neuronaux. » Dans Proc. 28e IEEE décision et contrôle Conf., Pp. 266-271, 1989.
  21. (en) Dave Steinkraus et Patrice Simard, 12e Conférence internationale sur l'analyse de documents et de reconnaissance (ICDAR 2005), , 1115-1119 p. (lire en ligne), « Using GPU pour Machine Learning Algorithms »
  22. (en) dixième atelier international sur les frontières de l'écriture manuscrite Recognition, Suvisoft, (lire en ligne), « High Performance convolution Réseaux neuronaux pour le traitement de documents »
  23. Modèle:Cite la revue
  24. Yoshua Bengio, Pascal Lamblin, Dan Popovici et Hugo Larochelle, « Greedy Layer-Wise Formation des réseaux profonds », {{Article}} : paramètre « périodique » manquant,‎ , p. 153-160
  25. MarcAurelio Ranzato, Christopher Poultney, Sumit Chopra et Yann LeCun, « Efficient Apprentissage des clairsemées Représentations avec un modèle Energy-Based », {{Article}} : paramètre « périodique » manquant,‎ (http: //yann.lecun.com/exdb/publis/pdf/ranzato-06.pdf)
  26. 10 Deng, Jia et al. « IMAGEnet:... A hiérarchique base de données à grande échelle de l'image » Computer Vision and Pattern Recognition, IEEE, 2009.
  27. (en) Benjamin Graham, « Fractional Max-Pooling », .
  28. (en) Jost Tobias Springenberg et Thomas Brox, « [1] », .
    erreur modèle {{Lien arXiv}} : renseignez un paramètre « |titre »
  29. Modèle:Cite la revue
  30. Modèle:Cite la revue