Il existe de nombreux types de réseaux neuronaux artificiels ( RNA ).
Les réseaux neuronaux artificiels sont des modèles informatiques inspirés des réseaux neuronaux biologiques et sont utilisés pour approximer des fonctions généralement inconnues. Ils s'inspirent notamment du comportement des neurones et des signaux électriques qu'ils transmettent entre l'entrée (comme celle des yeux ou des terminaisons nerveuses de la main), le traitement et la sortie du cerveau (comme la réaction à la lumière, au toucher ou à la chaleur). La façon dont les neurones communiquent sémantiquement est un domaine de recherche en cours. La plupart des réseaux neuronaux artificiels ne ressemblent que légèrement à leurs homologues biologiques plus complexes, mais sont très efficaces dans les tâches prévues (par exemple, la classification ou la segmentation).
Certains réseaux de neurones artificiels sont des systèmes adaptatifs et sont utilisés par exemple pour modéliser des populations et des environnements qui changent constamment.
Les réseaux neuronaux peuvent être basés sur du matériel (les neurones sont représentés par des composants physiques) ou sur des logiciels (modèles informatiques) et peuvent utiliser une variété de topologies et d'algorithmes d'apprentissage.
Progression
Le réseau neuronal à propagation directe est le premier et le plus simple des types de réseaux. Dans ce réseau, l'information circule uniquement de la couche d'entrée directement à travers les couches cachées jusqu'à la couche de sortie sans cycles/boucles. Les réseaux à propagation directe peuvent être construits avec différents types d'unités, comme les neurones binaires de McCulloch–Pitts , dont le plus simple est le perceptron . Les neurones continus, souvent à activation sigmoïdale , sont utilisés dans le contexte de la rétropropagation .
Méthode de groupe pour le traitement des données
La méthode de traitement des données par groupe (GMDH) propose une optimisation entièrement automatique des modèles structurels et paramétriques. Les fonctions d'activation des nœuds sont des polynômes de Kolmogorov-Gabor qui permettent des additions et des multiplications. Elle utilise un perceptron multicouche profond à huit couches. Il s'agit d'un réseau d'apprentissage supervisé qui se développe couche par couche, où chaque couche est formée par analyse de régression . Les éléments inutiles sont détectés à l'aide d'un ensemble de validation et élagués par régularisation . La taille et la profondeur du réseau résultant dépendent de la tâche.
Autoencodeur
Un autoencodeur, un autoassociateur ou un réseau Diabolo est similaire au perceptron multicouche (MLP) – avec une couche d’entrée, une couche de sortie et une ou plusieurs couches cachées les reliant. Cependant, la couche de sortie a le même nombre d’unités que la couche d’entrée. Son but est de reconstruire ses propres entrées (au lieu d’émettre une valeur cible). Par conséquent, les autoencodeurs sont des modèles d’apprentissage non supervisés . Un autoencodeur est utilisé pour l’apprentissage non supervisé de codages efficaces , généralement dans le but de réduire la dimensionnalité et d’apprendre des modèles génératifs de données.
Probabiliste
Un réseau neuronal probabiliste (PNN) est un réseau neuronal à quatre couches. Les couches sont l'entrée, le motif caché/la sommation et la sortie. Dans l'algorithme PNN, la fonction de distribution de probabilité parente (PDF) de chaque classe est approximée par une fenêtre de Parzen et une fonction non paramétrique. Ensuite, en utilisant la PDF de chaque classe, la probabilité de classe d'une nouvelle entrée est estimée et la règle de Bayes est utilisée pour l'attribuer à la classe avec la probabilité postérieure la plus élevée. Il est dérivé du réseau bayésien et d'un algorithme statistique appelé analyse discriminante Kernel Fisher . Il est utilisé pour la classification et la reconnaissance de formes.
Délai de temporisation
Un réseau neuronal à retard temporel (TDNN) est une architecture de rétroaction pour les données séquentielles qui reconnaît les caractéristiques indépendamment de la position de la séquence. Afin d'obtenir une invariance de décalage temporel, des retards sont ajoutés à l'entrée afin que plusieurs points de données (points dans le temps) soient analysés ensemble.
Il fait généralement partie d'un système de reconnaissance de formes plus vaste. Il a été mis en œuvre à l'aide d'un réseau perceptron dont les poids de connexion ont été entraînés avec une rétropropagation (apprentissage supervisé).
Convolutionnel
Un réseau neuronal convolutionnel (CNN, ou ConvNet ou invariant par décalage ou invariant spatial) est une classe de réseau profond, composé d'une ou plusieurs couches convolutionnelles avec des couches entièrement connectées (correspondant à celles des ANN typiques) au-dessus. Il utilise des pondérations liées et des couches de regroupement . En particulier, le regroupement maximal. Il est souvent structuré via l'architecture convolutionnelle de Fukushima. Ce sont des variantes de perceptrons multicouches qui utilisent un prétraitement minimal . Cette architecture permet aux CNN de tirer parti de la structure 2D des données d'entrée.
Son modèle de connectivité unitaire s'inspire de l'organisation du cortex visuel . Les unités répondent aux stimuli dans une région restreinte de l'espace appelée champ récepteur . Les champs récepteurs se chevauchent partiellement, recouvrant l'ensemble du champ visuel . La réponse unitaire peut être approximée mathématiquement par une opération de convolution .
Les CNN sont adaptés au traitement de données visuelles et autres données bidimensionnelles. Ils ont montré des résultats supérieurs dans les applications d'image et de parole. Ils peuvent être formés avec une rétropropagation standard. Les CNN sont plus faciles à former que d'autres réseaux neuronaux réguliers, profonds et à propagation directe et ont beaucoup moins de paramètres à estimer.
Les réseaux neuronaux à capsules (CapsNet) ajoutent des structures appelées capsules à un CNN et réutilisent la sortie de plusieurs capsules pour former des représentations plus stables (par rapport à diverses perturbations).
Parmi les exemples d'applications en vision par ordinateur, on peut citer DeepDream et la navigation robotique . Elles ont de vastes applications dans la reconnaissance d'images et de vidéos , les systèmes de recommandation et le traitement du langage naturel .
Réseau de deep stacking
Un réseau d'empilement profond (DSN) (réseau convexe profond) est basé sur une hiérarchie de blocs de modules de réseaux neuronaux simplifiés. Il a été introduit en 2011 par Deng et Yu. Il formule l'apprentissage comme un problème d'optimisation convexe avec une solution sous forme fermée , soulignant la similitude du mécanisme avec la généralisation empilée . Chaque bloc DSN est un module simple qui est facile à entraîner par lui-même de manière supervisée sans rétropropagation pour l'ensemble des blocs.
Chaque bloc est constitué d'un perceptron multicouches simplifié (MLP) avec une seule couche cachée. La couche cachée h a des unités sigmoïdales logistiques et la couche de sortie a des unités linéaires. Les connexions entre ces couches sont représentées par la matrice de pondération U ; les connexions d'entrée à couche cachée ont une matrice de pondération W . Les vecteurs cibles t forment les colonnes de la matrice T et les vecteurs de données d'entrée x forment les colonnes de la matrice X. La matrice des unités cachées est . Les modules sont formés dans l'ordre, de sorte que les poids de couche inférieure W sont connus à chaque étape. La fonction effectue l'opération sigmoïde logistique élément par élément . Chaque bloc estime la même classe d'étiquette finale y et son estimation est concaténée avec l'entrée d'origine X pour former l'entrée étendue du bloc suivant. Ainsi, l'entrée du premier bloc contient uniquement les données d'origine, tandis que l'entrée des blocs en aval ajoute la sortie des blocs précédents. Ensuite, l'apprentissage de la matrice de pondération de couche supérieure U étant donné d'autres poids dans le réseau peut être formulé comme un problème d'optimisation convexe :
qui a une solution sous forme fermée.
Contrairement à d'autres architectures profondes, telles que les DBN , l'objectif n'est pas de découvrir la représentation des caractéristiques transformées . La structure de la hiérarchie de ce type d'architecture rend l'apprentissage parallèle simple, en tant que problème d'optimisation en mode batch. Dans les tâches purement discriminantes , les DSN surpassent les DBN classiques.
Réseaux d'empilement profond de tenseurs
Cette architecture est une extension DSN. Elle offre deux améliorations importantes : elle utilise des informations d'ordre supérieur provenant de statistiques de covariance et elle transforme le problème non convexe d'une couche inférieure en un sous-problème convexe d'une couche supérieure. Les TDSN utilisent des statistiques de covariance dans une application bilinéaire de chacun des deux ensembles distincts d'unités cachées de la même couche vers des prédictions, via un tenseur de troisième ordre .
Bien que la parallélisation et l'évolutivité ne soient pas prises en compte sérieusement dans les DNN conventionnels , tout l'apprentissage pour les DSN et les TDSN est effectué en mode batch, pour permettre la parallélisation. La parallélisation permet de faire évoluer la conception vers des architectures et des ensembles de données plus grands (plus profonds).
L'architecture de base est adaptée à diverses tâches telles que la classification et la régression .
Commentaires réglementaires
Les réseaux de rétroaction régulatrice ont été créés à l'origine comme modèle pour expliquer les phénomènes cérébraux observés lors de la reconnaissance, notamment l'éclatement du réseau et la difficulté de similarité que l'on retrouve universellement dans la reconnaissance sensorielle. Un mécanisme permettant d'effectuer une optimisation lors de la reconnaissance est créé à l'aide de connexions de rétroaction inhibitrices renvoyant aux mêmes entrées qui les activent. Cela réduit les exigences lors de l'apprentissage et permet d'apprendre et de mettre à jour plus facilement tout en étant capable d'effectuer une reconnaissance complexe.
Un réseau de rétroaction réglementaire fait des inférences en utilisant une rétroaction négative . La rétroaction est utilisée pour trouver l'activation optimale des unités. Elle est très similaire à une méthode non paramétrique , mais diffère du K-plus proche voisin en ce qu'elle émule mathématiquement les réseaux de rétroaction directe.
Fonction de base radiale
Les fonctions de base radiales sont des fonctions qui ont un critère de distance par rapport à un centre. Les fonctions de base radiales ont été appliquées en remplacement de la caractéristique de transfert de couche cachée sigmoïdale dans les perceptrons multicouches. Les réseaux RBF ont deux couches : dans la première, l'entrée est mappée sur chaque RBF de la couche « cachée ». Le RBF choisi est généralement gaussien. Dans les problèmes de régression, la couche de sortie est une combinaison linéaire de valeurs de couche cachée représentant la sortie moyenne prédite. L'interprétation de cette valeur de couche de sortie est la même qu'un modèle de régression en statistique. Dans les problèmes de classification, la couche de sortie est généralement une fonction sigmoïde d'une combinaison linéaire de valeurs de couche cachée, représentant une probabilité postérieure. Les performances dans les deux cas sont souvent améliorées par des techniques de rétrécissement , connues sous le nom de régression de crête dans les statistiques classiques. Cela correspond à une croyance préalable en de petites valeurs de paramètres (et donc des fonctions de sortie lisses) dans un cadre bayésien .
Les réseaux RBF ont l'avantage d'éviter les minima locaux de la même manière que les perceptrons multicouches. En effet, les seuls paramètres ajustés dans le processus d'apprentissage sont la correspondance linéaire de la couche cachée à la couche de sortie. La linéarité garantit que la surface d'erreur est quadratique et possède donc un seul minimum facile à trouver. Dans les problèmes de régression, cela peut être trouvé dans une opération matricielle. Dans les problèmes de classification, la non-linéarité fixe introduite par la fonction de sortie sigmoïde est traitée plus efficacement en utilisant les moindres carrés pondérés de manière itérative .
Les réseaux RBF présentent l'inconvénient de nécessiter une bonne couverture de l'espace d'entrée par des fonctions de base radiales. Les centres RBF sont déterminés en référence à la distribution des données d'entrée, mais sans référence à la tâche de prédiction. Par conséquent, des ressources de représentation peuvent être gaspillées sur des zones de l'espace d'entrée qui ne sont pas pertinentes pour la tâche. Une solution courante consiste à associer chaque point de données à son propre centre, bien que cela puisse étendre le système linéaire à résoudre dans la couche finale et nécessite des techniques de rétrécissement pour éviter le surajustement .
L'association de chaque donnée d'entrée à un RBF conduit naturellement à des méthodes à noyau telles que les machines à vecteurs de support (SVM) et les processus gaussiens (le RBF est la fonction noyau ). Les trois approches utilisent une fonction noyau non linéaire pour projeter les données d'entrée dans un espace où le problème d'apprentissage peut être résolu à l'aide d'un modèle linéaire. Comme les processus gaussiens, et contrairement aux SVM, les réseaux RBF sont généralement formés dans un cadre de vraisemblance maximale en maximisant la probabilité (en minimisant l'erreur). Les SVM évitent le surajustement en maximisant à la place une marge . Les SVM surpassent les réseaux RBF dans la plupart des applications de classification. Dans les applications de régression, ils peuvent être compétitifs lorsque la dimensionnalité de l'espace d'entrée est relativement petite.
Comment fonctionnent les réseaux RBF
Les réseaux neuronaux RBF sont conceptuellement similaires aux modèles K-plus proches voisins (k-NN). L'idée de base est que des entrées similaires produisent des sorties similaires.
Supposons que chaque cas d'un ensemble d'apprentissage comporte deux variables prédictives, x et y, et que la variable cible comporte deux catégories, positive et négative. Étant donné un nouveau cas avec des valeurs prédictives x = 6, y = 5,1, comment la variable cible est-elle calculée ?
La classification des voisins les plus proches effectuée pour cet exemple dépend du nombre de points voisins pris en compte. Si la classification 1-NN est utilisée et que le point le plus proche est négatif, le nouveau point doit être classé comme négatif. Par ailleurs, si la classification 9-NN est utilisée et que les 9 points les plus proches sont pris en compte, l'effet des 8 points positifs environnants peut l'emporter sur le 9e point (négatif) le plus proche.
Un réseau RBF positionne les neurones dans l'espace décrit par les variables prédictives (x, y dans cet exemple). Cet espace a autant de dimensions que de variables prédictives. La distance euclidienne est calculée à partir du nouveau point jusqu'au centre de chaque neurone, et une fonction de base radiale (RBF, également appelée fonction noyau) est appliquée à la distance pour calculer le poids (l'influence) de chaque neurone. La fonction de base radiale est ainsi nommée car la distance radiale est l'argument de la fonction.
- Poids = RBF( distance )
Fonction de base radiale
La valeur du nouveau point est trouvée en additionnant les valeurs de sortie des fonctions RBF multipliées par les poids calculés pour chaque neurone.
La fonction de base radiale d'un neurone possède un centre et un rayon (également appelé étalement). Le rayon peut être différent pour chaque neurone et, dans les réseaux RBF générés par DTREG, le rayon peut être différent dans chaque dimension.
Avec une plus grande propagation, les neurones éloignés d'un point ont une plus grande influence.
Architecture
Les réseaux RBF comportent trois couches :
- Couche d'entrée : un neurone apparaît dans la couche d'entrée pour chaque variable prédictive. Dans le cas de variables catégorielles , N-1 neurones sont utilisés, où N est le nombre de catégories. Les neurones d'entrée normalisent les plages de valeurs en soustrayant la médiane et en divisant par l' écart interquartile . Les neurones d'entrée transmettent ensuite les valeurs à chacun des neurones de la couche cachée.
- Couche cachée : cette couche comporte un nombre variable de neurones (déterminé par le processus d'apprentissage). Chaque neurone est constitué d'une fonction de base radiale centrée sur un point avec autant de dimensions que de variables prédictives. La dispersion (rayon) de la fonction RBF peut être différente pour chaque dimension. Les centres et les dispersions sont déterminés par l'apprentissage. Lorsqu'on lui présente le vecteur x des valeurs d'entrée de la couche d'entrée, un neurone caché calcule la distance euclidienne du cas de test à partir du point central du neurone, puis applique la fonction noyau RBF à cette distance en utilisant les valeurs de dispersion. La valeur résultante est transmise à la couche de sommation.
- Couche de sommation : la valeur provenant d'un neurone de la couche cachée est multipliée par un poids associé au neurone et ajoutée aux valeurs pondérées des autres neurones. Cette somme devient la sortie. Pour les problèmes de classification, une sortie est produite (avec un ensemble distinct de poids et d'unités de sommation) pour chaque catégorie cible. La valeur de sortie pour une catégorie est la probabilité que le cas évalué ait cette catégorie.
Entraînement
Les paramètres suivants sont déterminés par le processus de formation :
- Le nombre de neurones dans la couche cachée
- Les coordonnées du centre de chaque fonction RBF de couche cachée
- Le rayon (étalement) de chaque fonction RBF dans chaque dimension
- Les poids appliqués aux sorties de la fonction RBF lorsqu'elles passent à la couche de sommation
Différentes méthodes ont été utilisées pour former des réseaux RBF. Une approche utilise d'abord le clustering K-means pour trouver les centres de cluster qui sont ensuite utilisés comme centres pour les fonctions RBF. Cependant, le clustering K-means nécessite beaucoup de calculs et ne génère souvent pas le nombre optimal de centres. Une autre approche consiste à utiliser un sous-ensemble aléatoire de points d'entraînement comme centres.
DTREG utilise un algorithme de formation qui utilise une approche évolutive pour déterminer les points centraux et les écarts optimaux pour chaque neurone. Il détermine quand arrêter d'ajouter des neurones au réseau en surveillant l'erreur de suppression estimée (LOO) et en s'arrêtant lorsque l'erreur LOO commence à augmenter en raison d'un surajustement.
Le calcul des poids optimaux entre les neurones de la couche cachée et de la couche de sommation est réalisé à l'aide d'une régression de crête. Une procédure itérative calcule le paramètre Lambda de régularisation optimal qui minimise l'erreur de validation croisée généralisée (GCV).
Réseau neuronal de régression générale
Un GRNN est un réseau neuronal de mémoire associative similaire au réseau neuronal probabiliste, mais il est utilisé pour la régression et l'approximation plutôt que pour la classification.
Réseau de croyances profondes

Un réseau de croyances profondes (DBN) est un modèle probabiliste et génératif composé de plusieurs couches cachées. Il peut être considéré comme une composition de modules d'apprentissage simples.
Un DBN peut être utilisé pour pré-entraîner de manière générative un réseau neuronal profond (DNN) en utilisant les poids DBN appris comme poids DNN initiaux. Divers algorithmes discriminants peuvent ensuite ajuster ces poids. Cela est particulièrement utile lorsque les données d'entraînement sont limitées, car des poids mal initialisés peuvent considérablement entraver l'apprentissage. Ces poids pré-entraînés se retrouvent dans une région de l'espace de poids qui est plus proche des poids optimaux que les choix aléatoires. Cela permet à la fois une modélisation améliorée et une convergence finale plus rapide.
Réseau neuronal récurrent
Les réseaux neuronaux récurrents (RNN) propagent les données vers l'avant, mais aussi vers l'arrière, des étapes de traitement ultérieures aux étapes antérieures. Les RNN peuvent être utilisés comme processeurs de séquence généraux.
Totalement récurrent
Cette architecture a été développée dans les années 1980. Son réseau crée une connexion dirigée entre chaque paire d'unités. Chacune d'elles possède une activation (sortie) à valeur réelle variable dans le temps (plus que zéro ou un). Chaque connexion possède un poids à valeur réelle modifiable. Certains nœuds sont appelés nœuds étiquetés, certains nœuds de sortie, les autres nœuds cachés.
Pour l'apprentissage supervisé dans des paramètres de temps discret, les séquences d'apprentissage de vecteurs d'entrée à valeur réelle deviennent des séquences d'activations des nœuds d'entrée, un vecteur d'entrée à la fois. À chaque pas de temps, chaque unité non d'entrée calcule son activation actuelle comme une fonction non linéaire de la somme pondérée des activations de toutes les unités dont elle reçoit des connexions. Le système peut activer explicitement (indépendamment des signaux entrants) certaines unités de sortie à certains pas de temps. Par exemple, si la séquence d'entrée est un signal vocal correspondant à un chiffre parlé, la sortie cible finale à la fin de la séquence peut être une étiquette classant le chiffre. Pour chaque séquence, son erreur est la somme des écarts de toutes les activations calculées par le réseau à partir des signaux cibles correspondants. Pour un ensemble d'apprentissage de nombreuses séquences, l'erreur totale est la somme des erreurs de toutes les séquences individuelles.
Pour minimiser l'erreur totale, la descente de gradient peut être utilisée pour modifier chaque poids proportionnellement à sa dérivée par rapport à l'erreur, à condition que les fonctions d'activation non linéaires soient différentiables . La méthode standard est appelée « rétropropagation dans le temps » ou BPTT, une généralisation de la rétropropagation pour les réseaux à propagation avant. Une variante en ligne plus coûteuse en calcul est appelée « apprentissage récurrent en temps réel » ou RTRL. Contrairement à BPTT, cet algorithme est local dans le temps mais pas local dans l'espace . Il existe un hybride en ligne entre BPTT et RTRL avec une complexité intermédiaire, avec des variantes pour le temps continu. Un problème majeur avec la descente de gradient pour les architectures RNN standard est que les gradients d'erreur disparaissent de manière exponentielle rapidement avec la taille du décalage temporel entre les événements importants. L' architecture à mémoire à long terme surmonte ces problèmes.
Dans les contextes d'apprentissage par renforcement , aucun enseignant ne fournit de signaux cibles. À la place, une fonction d'aptitude , une fonction de récompense ou une fonction d'utilité est parfois utilisée pour évaluer les performances, ce qui influence son flux d'entrée via des unités de sortie connectées à des actionneurs qui affectent l'environnement. Des variantes de calcul évolutionnaire sont souvent utilisées pour optimiser la matrice de pondération.
Hopfield
Le réseau Hopfield (comme les réseaux similaires basés sur les attracteurs) présente un intérêt historique bien qu'il ne soit pas un RNN général, car il n'est pas conçu pour traiter des séquences de motifs. Au lieu de cela, il nécessite des entrées stationnaires. C'est un RNN dans lequel toutes les connexions sont symétriques. Il garantit qu'il convergera. Si les connexions sont formées à l'aide de l'apprentissage hebbien, le réseau Hopfield peut fonctionner comme une mémoire adressable par contenu robuste , résistante à l'altération des connexions.
Machine de Boltzmann
La machine de Boltzmann peut être considérée comme un réseau Hopfield bruyant. C'est l'un des premiers réseaux neuronaux à démontrer l'apprentissage de variables latentes (unités cachées). L'apprentissage automatique de Boltzmann était au début lent à simuler, mais l'algorithme de divergence contrastive accélère l'apprentissage des machines de Boltzmann et des produits d'experts .
Carte auto-organisée
La carte auto-organisatrice (SOM) utilise l'apprentissage non supervisé . Un ensemble de neurones apprend à mapper des points dans un espace d'entrée à des coordonnées dans un espace de sortie. L'espace d'entrée peut avoir des dimensions et une topologie différentes de celles de l'espace de sortie, et SOM tente de les préserver.
Apprentissage de la quantification vectorielle
La quantification vectorielle d'apprentissage (LVQ) peut être interprétée comme une architecture de réseau neuronal. Des représentants prototypiques des classes sont paramétrés, avec une mesure de distance appropriée, dans un schéma de classification basé sur la distance.
Simple récurrent
Les réseaux récurrents simples comportent trois couches, avec l'ajout d'un ensemble d'« unités de contexte » dans la couche d'entrée. Ces unités se connectent à partir de la couche cachée ou de la couche de sortie avec un poids fixe de un. À chaque pas de temps, l'entrée est propagée de manière standard par anticipation, puis une règle d'apprentissage de type rétropropagation est appliquée (sans descente de gradient ). Les connexions arrière fixes laissent une copie des valeurs précédentes des unités cachées dans les unités de contexte (puisqu'elles se propagent sur les connexions avant l'application de la règle d'apprentissage).
Calcul des réservoirs
Le calcul de réservoir est un cadre de calcul qui peut être considéré comme une extension des réseaux neuronaux . En général, un signal d'entrée est envoyé dans un système dynamique fixe (aléatoire) appelé réservoir dont la dynamique mappe l'entrée sur une dimension supérieure. Un mécanisme de lecture est formé pour mapper le réservoir sur la sortie souhaitée. La formation n'est effectuée qu'au stade de la lecture. Les machines à état liquide sont un type de calcul de réservoir.
État d'écho
Le réseau d'états d'écho (ESN) utilise une couche cachée aléatoire peu connectée. Les poids des neurones de sortie sont la seule partie du réseau qui est entraînée. Les ESN sont efficaces pour reproduire certaines séries temporelles .
Mémoire à long terme et à court terme
La mémoire à long terme (LSTM) évite le problème du gradient de disparition . Elle fonctionne même avec de longs délais entre les entrées et peut gérer des signaux qui mélangent des composants à basse et haute fréquence. La mémoire à long terme (LSTM RNN) a surpassé les autres RNN et d'autres méthodes d'apprentissage séquentiel telles que HMM dans des applications telles que l'apprentissage des langues et la reconnaissance de l'écriture manuscrite connectée.
Bidirectionnel
Les RNN bidirectionnels, ou BRNN, utilisent une séquence finie pour prédire ou étiqueter chaque élément d'une séquence en fonction du contexte passé et futur de l'élément. Cela se fait en additionnant les sorties de deux RNN : l'un traite la séquence de gauche à droite, l'autre de droite à gauche. Les sorties combinées sont les prédictions des signaux cibles donnés par l'enseignant. Cette technique s'est avérée particulièrement utile lorsqu'elle est combinée avec LSTM.
Hiérarchique
Le RNN hiérarchique connecte les éléments de diverses manières pour décomposer le comportement hiérarchique en sous-programmes utiles.
Stochastique
Un district de réseaux neuronaux conventionnels, réseau neuronal artificiel stochastique utilisé comme approximation de fonctions aléatoires.
Échelle génétique
Un RNN (souvent un LSTM) où une série est décomposée en un certain nombre d'échelles où chaque échelle informe de la longueur principale entre deux points consécutifs. Une échelle de premier ordre se compose d'un RNN normal, un deuxième ordre se compose de tous les points séparés par deux indices et ainsi de suite. Le N-ième RNN relie le premier et le dernier nœud. Les sorties de toutes les différentes échelles sont traitées comme un Comité de machines et les scores associés sont utilisés génétiquement pour l'itération suivante.
Modulaire
Des études biologiques ont montré que le cerveau humain fonctionne comme un ensemble de petits réseaux. Cette constatation a donné naissance au concept de réseaux neuronaux modulaires , dans lesquels plusieurs petits réseaux coopèrent ou rivalisent pour résoudre des problèmes.
Comité des machines
Un comité de machines (CoM) est un ensemble de différents réseaux neuronaux qui « votent » ensemble sur un exemple donné. Cela donne généralement un bien meilleur résultat que les réseaux individuels. Étant donné que les réseaux neuronaux souffrent de minima locaux, le fait de commencer avec la même architecture et la même formation mais en utilisant des poids initiaux aléatoirement différents donne souvent des résultats très différents. Un CoM tend à stabiliser le résultat.
La méthode CoM est similaire à la méthode générale d'ensachage par apprentissage automatique , sauf que la variété nécessaire de machines dans le comité est obtenue par un entraînement à partir de différents poids de départ plutôt que par un entraînement sur différents sous-ensembles sélectionnés au hasard des données d'entraînement.
Associatif
Le réseau neuronal associatif (ASNN) est une extension du comité de machines qui combine plusieurs réseaux neuronaux à feedforward et la technique des k-plus proches voisins. Il utilise la corrélation entre les réponses d'ensemble comme mesure de la distance entre les cas analysés pour le kNN. Cela corrige le biais de l'ensemble du réseau neuronal. Un réseau neuronal associatif a une mémoire qui peut coïncider avec l'ensemble d'apprentissage. Si de nouvelles données deviennent disponibles, le réseau améliore instantanément sa capacité prédictive et fournit une approximation des données (auto-apprentissage) sans réentraînement. Une autre caractéristique importante de l'ASNN est la possibilité d'interpréter les résultats du réseau neuronal par l'analyse des corrélations entre les cas de données dans l'espace des modèles.
Physique
Un réseau neuronal physique comprend un matériau de résistance électriquement réglable pour simuler des synapses artificielles. Les exemples incluent le réseau neuronal basé sur un memristor ADALINE . Un réseau neuronal optique est une implémentation physique d'un réseau neuronal artificiel avec des composants optiques .
Dynamique
Contrairement aux réseaux neuronaux statiques, les réseaux neuronaux dynamiques adaptent leur structure et/ou leurs paramètres aux données d'entrée lors de l'inférence montrant un comportement dépendant du temps, tel que des phénomènes transitoires et des effets de retard. Les réseaux neuronaux dynamiques dans lesquels les paramètres peuvent changer au fil du temps sont liés à l'architecture de pondération rapide (1987), où un réseau neuronal génère les pondérations d'un autre réseau neuronal.
En cascade
Cascade-Correlation est une architecture et un algorithme d'apprentissage supervisé . Au lieu de simplement ajuster les poids dans un réseau de topologie fixe, Cascade-Correlation commence avec un réseau minimal, puis entraîne et ajoute automatiquement de nouvelles unités cachées une par une, créant ainsi une structure multicouche. Une fois qu'une nouvelle unité cachée a été ajoutée au réseau, ses poids côté entrée sont gelés. Cette unité devient alors un détecteur de caractéristiques permanent dans le réseau, disponible pour produire des sorties ou pour créer d'autres détecteurs de caractéristiques plus complexes. L'architecture Cascade-Correlation présente plusieurs avantages : elle apprend rapidement, détermine sa propre taille et sa propre topologie, conserve les structures qu'elle a construites même si l'ensemble d'entraînement change et ne nécessite aucune rétropropagation .
Neuro-flou
Un réseau neuro-flou est un système d'inférence floue dans le corps d'un réseau neuronal artificiel. Selon le type de FIS, plusieurs couches simulent les processus impliqués dans une inférence floue, comme la fuzzification , l'inférence, l'agrégation et la défuzzification . L'intégration d'un FIS dans une structure générale d'un ANN présente l'avantage d'utiliser les méthodes d'apprentissage ANN disponibles pour trouver les paramètres d'un système flou.
Production de motifs de composition
Les réseaux de production de motifs de composition (CPPN) sont une variante des réseaux neuronaux artificiels qui diffèrent par leur ensemble de fonctions d'activation et la manière dont elles sont appliquées. Alors que les réseaux neuronaux artificiels typiques ne contiennent souvent que des fonctions sigmoïdes (et parfois des fonctions gaussiennes ), les CPPN peuvent inclure les deux types de fonctions et bien d'autres. De plus, contrairement aux réseaux neuronaux artificiels typiques, les CPPN sont appliqués sur l'ensemble de l'espace des entrées possibles afin de pouvoir représenter une image complète. Puisqu'ils sont des compositions de fonctions, les CPPN codent en effet des images à une résolution infinie et peuvent être échantillonnés pour un affichage particulier à n'importe quelle résolution optimale.
Réseaux de mémoire
Les réseaux de mémoire intègrent la mémoire à long terme . La mémoire à long terme peut être lue et écrite, dans le but de l'utiliser à des fins de prédiction. Ces modèles ont été appliqués dans le contexte de la réponse aux questions (QA) où la mémoire à long terme agit efficacement comme une base de connaissances (dynamique) et le résultat est une réponse textuelle.
Dans la mémoire distribuée clairsemée ou la mémoire temporelle hiérarchique , les modèles codés par les réseaux neuronaux sont utilisés comme adresses pour la mémoire adressable par contenu , les « neurones » servant essentiellement d'encodeurs et de décodeurs d'adresses . Cependant, les premiers contrôleurs de ces mémoires n'étaient pas différentiables.
Mémoire associative à un coup
Ce type de réseau peut ajouter de nouveaux modèles sans réentraînement. Cela se fait en créant une structure de mémoire spécifique, qui attribue chaque nouveau modèle à un plan orthogonal à l'aide de tableaux hiérarchiques connectés de manière adjacente. Le réseau offre une reconnaissance de modèles en temps réel et une grande évolutivité ; cela nécessite un traitement parallèle et est donc particulièrement adapté aux plates-formes telles que les réseaux de capteurs sans fil , le calcul en grille et les GPGPU .
Mémoire temporelle hiérarchique
La mémoire temporelle hiérarchique (HTM) modélise certaines des propriétés structurelles et algorithmiques du néocortex . HTM est un modèle biomimétique basé sur la théorie de la prédiction de la mémoire . HTM est une méthode permettant de découvrir et de déduire les causes de haut niveau des modèles et séquences d'entrée observés, construisant ainsi un modèle de plus en plus complexe du monde.
HTM combine des idées existantes pour imiter le néocortex avec une conception simple qui offre de nombreuses fonctionnalités. HTM combine et étend les approches utilisées dans les réseaux bayésiens , les algorithmes de clustering spatial et temporel, tout en utilisant une hiérarchie arborescente de nœuds qui est courante dans les réseaux neuronaux .
Mémoire associative holographique
La mémoire associative holographique (HAM) est un système analogique, basé sur la corrélation, associatif, stimulus-réponse. Les informations sont mappées sur l'orientation de phase des nombres complexes. La mémoire est efficace pour les tâches de mémoire associative , de généralisation et de reconnaissance de formes avec une attention variable. La localisation de recherche dynamique est au cœur de la mémoire biologique. Dans la perception visuelle, les humains se concentrent sur des objets spécifiques dans un modèle. Les humains peuvent changer de focalisation d'un objet à l'autre sans apprentissage. La HAM peut imiter cette capacité en créant des représentations explicites de la focalisation. Elle utilise une représentation bimodale du modèle et un espace d'état de poids sphérique complexe de type hologramme. Les HAM sont utiles pour la réalisation optique car les calculs hypersphériques sous-jacents peuvent être mis en œuvre avec le calcul optique.
Structures de mémoire différentiables liées au LSTM
Outre la mémoire à long terme et à court terme (LSTM), d’autres approches ont également ajouté une mémoire différentiable aux fonctions récurrentes. Par exemple :
- Actions push et pop différenciables pour les réseaux de mémoire alternatifs appelés machines à pile neuronale
- Réseaux de mémoire où le stockage différentiable externe du réseau de contrôle se trouve dans les poids rapides d'un autre réseau
- Portes d'oubli LSTM
- RNN autoréférentiels avec unités de sortie spéciales pour adresser et manipuler rapidement les propres poids du RNN de manière différentiable (stockage interne)
- Apprendre à transduire avec une mémoire illimitée
Machines neuronales de Turing
Les machines neuronales de Turing (NTM) couplent les réseaux LSTM à des ressources de mémoire externes, avec lesquelles ils peuvent interagir par des processus attentionnels. Le système combiné est analogue à une machine de Turing mais est différentiable de bout en bout, ce qui lui permet d'être efficacement entraîné par descente de gradient . Les résultats préliminaires démontrent que les machines neuronales de Turing peuvent déduire des algorithmes simples tels que la copie, le tri et le rappel associatif à partir d'exemples d'entrée et de sortie.
Les ordinateurs neuronaux différentiables (DNC) sont une extension de NTM. Ils ont surpassé les machines neuronales de Turing, les systèmes de mémoire à long terme et les réseaux de mémoire dans les tâches de traitement de séquences.
Hachage sémantique
Les approches qui représentent directement les expériences précédentes et utilisent une expérience similaire pour former un modèle local sont souvent appelées méthodes du voisin le plus proche ou des k-voisins les plus proches . L'apprentissage profond est utile dans le hachage sémantique où un modèle graphique profond des vecteurs de comptage de mots obtenus à partir d'un grand ensemble de documents. Les documents sont mappés aux adresses mémoire de telle manière que les documents sémantiquement similaires soient situés à des adresses proches. Les documents similaires à un document de requête peuvent ensuite être trouvés en accédant à toutes les adresses qui ne diffèrent que de quelques bits de l'adresse du document de requête. Contrairement à la mémoire distribuée clairsemée qui fonctionne sur des adresses de 1000 bits, le hachage sémantique fonctionne sur des adresses de 32 ou 64 bits trouvées dans une architecture informatique conventionnelle.
Réseaux de pointeurs
Les réseaux neuronaux profonds peuvent être potentiellement améliorés par l'approfondissement et la réduction des paramètres, tout en maintenant la capacité d'apprentissage. Bien que l'entraînement de réseaux neuronaux extrêmement profonds (par exemple, 1 million de couches) puisse ne pas être pratique, les architectures de type CPU telles que les réseaux de pointeurs et les machines à accès aléatoire neuronales surmontent cette limitation en utilisant une mémoire à accès aléatoire externe et d'autres composants qui appartiennent généralement à une architecture informatique tels que les registres , les ALU et les pointeurs . De tels systèmes fonctionnent sur des vecteurs de distribution de probabilité stockés dans des cellules de mémoire et des registres. Ainsi, le modèle est entièrement différentiable et s'entraîne de bout en bout. La caractéristique clé de ces modèles est que leur profondeur, la taille de leur mémoire à court terme et le nombre de paramètres peuvent être modifiés indépendamment.
Hybrides
Réseaux codeur-décodeur
Les cadres d'encodeur-décodeur sont basés sur des réseaux neuronaux qui mappent une entrée hautement structurée à une sortie hautement structurée. L'approche est née dans le contexte de la traduction automatique , où l'entrée et la sortie sont des phrases écrites dans deux langues naturelles. Dans ce travail, un RNN ou CNN LSTM a été utilisé comme encodeur pour résumer une phrase source, et le résumé a été décodé à l'aide d'un modèle de langage RNN conditionnel pour produire la traduction. Ces systèmes partagent des éléments de base : des RNN et des CNN à porte et des mécanismes d'attention entraînés.
Autres types
Formation instantanée
Les réseaux neuronaux à entraînement instantané (ITNN) ont été inspirés par le phénomène d'apprentissage à court terme qui semble se produire instantanément. Dans ces réseaux, les pondérations des couches cachées et de sortie sont mappées directement à partir des données vectorielles d'entraînement. En règle générale, ils fonctionnent sur des données binaires, mais il existe des versions pour les données continues qui nécessitent un petit traitement supplémentaire.
Pointes
Les réseaux neuronaux à pics (SNN) prennent explicitement en compte le timing des entrées. L'entrée et la sortie du réseau sont généralement représentées par une série de pics ( fonction delta ou formes plus complexes). Les SNN peuvent traiter des informations dans le domaine temporel (signaux qui varient dans le temps). Ils sont souvent mis en œuvre sous forme de réseaux récurrents. Les SNN sont également une forme d' ordinateur à impulsions .
Les réseaux neuronaux à pointes avec des retards de conduction axonale présentent une polychronisation et pourraient donc avoir une très grande capacité de mémoire.
Les SNN et les corrélations temporelles des assemblages neuronaux dans de tels réseaux ont été utilisés pour modéliser la séparation figure/fond et la liaison des régions dans le système visuel.
Spatial
Les réseaux neuronaux spatiaux (SNN) constituent une supercatégorie de réseaux neuronaux personnalisés (NN) pour représenter et prédire les phénomènes géographiques. Ils améliorent généralement à la fois la précision statistique et la fiabilité des NN a-spatiaux/classiques lorsqu'ils traitent des ensembles de données géospatiales , ainsi que des autres modèles spatiaux (statistiques) (par exemple les modèles de régression spatiale) lorsque les variables des ensembles de données géospatiales décrivent des relations non linéaires . Les exemples de SNN sont les réseaux neuronaux spatiaux OSFA, les SVANN et les GWNN.
Néocognitron
Le néocognitron est un réseau hiérarchique multicouches qui a été modélisé d'après le cortex visuel . Il utilise plusieurs types d'unités (à l'origine deux, appelées cellules simples et complexes ), comme modèle en cascade pour une utilisation dans les tâches de reconnaissance de formes. Les caractéristiques locales sont extraites par les cellules S dont la déformation est tolérée par les cellules C. Les caractéristiques locales de l'entrée sont intégrées progressivement et classées dans les couches supérieures. Parmi les différents types de néocognitron on trouve des systèmes qui peuvent détecter plusieurs modèles dans la même entrée en utilisant la rétropropagation pour obtenir une attention sélective . Il a été utilisé pour des tâches de reconnaissance de formes et a inspiré les réseaux neuronaux convolutionnels .
Modèles composés hiérarchiques profonds
Les modèles hiérarchiques profonds composés composent des réseaux profonds avec des modèles bayésiens non paramétriques . Les caractéristiques peuvent être apprises à l'aide d'architectures profondes telles que les DBN , les machines de Boltzmann profondes (DBM), les encodeurs automatiques profonds, les variantes convolutionnelles, les ssRBM , les réseaux de codage profond, les DBN avec apprentissage de caractéristiques éparses, les RNN , les DBN conditionnels, les encodeurs automatiques de débruitage . Cela fournit une meilleure représentation, permettant un apprentissage plus rapide et une classification plus précise avec des données de grande dimension. Cependant, ces architectures sont médiocres pour apprendre de nouvelles classes avec peu d'exemples, car toutes les unités de réseau sont impliquées dans la représentation de l'entrée (unreprésentation distribuée ) et doivent être ajustées ensemble (degré de liberté). La limitation du degré de liberté réduit le nombre de paramètres à apprendre, facilitant l'apprentissage de nouvelles classes à partir de quelques exemples.Les modèles bayésiens hiérarchiques (HB) permettent l'apprentissage à partir de quelques exemples, par exemplepourla vision par ordinateur,les statistiquesetles sciences cognitives.
Les architectures HD composées visent à intégrer les caractéristiques des réseaux HB et profonds. L'architecture HDP-DBM composée est un processus de Dirichlet hiérarchique (HDP) en tant que modèle hiérarchique, incorporant l'architecture DBM. Il s'agit d'un modèle génératif complet , généralisé à partir de concepts abstraits circulant à travers les couches du modèle, qui est capable de synthétiser de nouveaux exemples dans de nouvelles classes qui semblent « raisonnablement » naturelles. Tous les niveaux sont appris conjointement en maximisant un score de probabilité logarithmique conjoint .
Dans un DBM avec trois couches cachées, la probabilité d'une entrée visible '' ν '' est :
où est l'ensemble des unités cachées, et sont les paramètres du modèle, représentant les termes d'interaction symétriques visibles-cachés et cachés-cachés.
Un modèle DBM appris est un modèle non orienté qui définit la distribution conjointe . Une façon d'exprimer ce qui a été appris est le modèle conditionnel et un terme antérieur .
Voici un modèle DBM conditionnel, qui peut être considéré comme un DBM à deux couches mais avec des termes de biais donnés par les états de :
Réseaux de codage prédictif profond
Un réseau de codage prédictif profond (DPCN) est un schéma de codage prédictif qui utilise des informations descendantes pour ajuster empiriquement les priors nécessaires à une procédure d'inférence ascendante au moyen d'un modèle génératif profond et connecté localement . Cela fonctionne en extrayant des caractéristiques éparses à partir d'observations variant dans le temps à l'aide d'un modèle dynamique linéaire. Ensuite, une stratégie de regroupement est utilisée pour apprendre des représentations de caractéristiques invariantes. Ces unités se composent pour former une architecture profonde et sont formées par un apprentissage non supervisé glouton par couche . Les couches constituent une sorte de chaîne de Markov telle que les états de n'importe quelle couche ne dépendent que des couches précédentes et suivantes.
Les DPCN prédisent la représentation de la couche, en utilisant une approche descendante utilisant les informations de la couche supérieure et les dépendances temporelles des états précédents.
Les DPCN peuvent être étendus pour former un réseau convolutif .
Machine à noyau multicouche
Les machines à noyau multicouches (MKM) sont un moyen d'apprendre des fonctions hautement non linéaires par application itérative de noyaux faiblement non linéaires. Elles utilisent l'analyse en composantes principales du noyau (KPCA), comme méthode pour l' étape de pré-formation non supervisée et gloutonne de l'apprentissage profond.
La couche apprend la représentation de la couche précédente , en extrayant la composante principale (PC) de la sortie de la couche de projection dans le domaine de caractéristiques induit par le noyau. Pour réduire la dimensionnalité de la représentation mise à jour dans chaque couche, une stratégie supervisée sélectionne les meilleures caractéristiques informatives parmi les caractéristiques extraites par KPCA. Le processus est le suivant :
- classer les fonctionnalités en fonction de leur information mutuelle avec les étiquettes de classe ;
- pour différentes valeurs de K et , calculer le taux d'erreur de classification d'un classificateur K-plus proche voisin (K-NN) en utilisant uniquement les fonctionnalités les plus informatives sur un ensemble de validation ;
- la valeur avec laquelle le classificateur a atteint le taux d'erreur le plus bas détermine le nombre de fonctionnalités à conserver.
La méthode KPCA pour les MKM présente certains inconvénients.
Une manière plus simple d'utiliser les machines à noyau pour l'apprentissage profond a été développée pour la compréhension du langage parlé. L'idée principale est d'utiliser une machine à noyau pour approximer un réseau neuronal peu profond avec un nombre infini d'unités cachées, puis d'utiliser un réseau d'empilement profond pour épisser la sortie de la machine à noyau et l'entrée brute dans la construction du niveau suivant, plus élevé, de la machine à noyau. Le nombre de niveaux dans le réseau convexe profond est un hyper-paramètre du système global, à déterminer par validation croisée .