Réseau de neurones artificiels - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Apprentissage

Base théorique

La notion d’apprentissage, bien que connue déjà depuis Sumer, n’est pas modélisable dans le cadre de la logique déductive : celle-ci en effet procède à partir de connaissances déjà établies dont on tire des connaissances dérivées. Or il s’agit ici de la démarche inverse : par observations limitées, tirer des généralisations plausibles : c'est un procédé par induction.

La notion d’apprentissage recouvre deux réalités souvent traitées de façon successive :

  • mémorisation : le fait d’assimiler sous une forme dense des exemples éventuellement nombreux,
  • généralisation : le fait d’être capable, grâce aux exemples appris, de traiter des exemples distincts, encore non rencontrés, mais similaires.

Dans le cas des systèmes d’apprentissage statistique, utilisés pour optimiser les modèles statistiques classiques, réseaux de neurones et automates markoviens, c’est la généralisation qui est l’objet de toute l’attention.

Cette notion de généralisation est traitée de façon plus ou moins complète par plusieurs approches théoriques.

  • La généralisation est traitée de façon globale et générique par la théorie de la régularisation statistique introduite par Vladimir Vapnik. Cette théorie, développée à l’origine en Union Soviétique, s’est diffusée en Occident depuis la Chute du Mur. La théorie de la régularisation statistique s’est diffusée très largement parmi ceux qui étudient les réseaux de neurones en raison de la forme générique des courbes d’erreurs résiduelles d’apprentissage et de généralisation issues des procédures d’apprentissage itératives telles que les descentes de gradient utilisées pour l’optimisation des perceptrons multi-couches. Ces formes génériques correspondent aux formes prévues par la théorie de la régularisation statistiques ; cela vient du fait que les procédures d’apprentissage par descentes de gradient, partant d’une configuration initiale des poids synaptiques explorent progressivement l’espace des poids synaptiques possibles ; on retrouve alors la problématique de l’augmentation progressive de la capacité d’apprentissage, concept fondamental au cœur de la théorie de la régularisation statistique.
  • La généralisation est aussi au cœur de l’approche de l'inférence bayésienne, enseignée depuis plus longtemps. Le théorème de Cox-Jaynes fournit ainsi une base importante à un tel apprentissage, en nous apprenant que toute méthode d’apprentissage est soit isomorphe aux probabilités munies de la relation de Bayes, soit incohérente. C’est là un résultat extrêmement fort, et c’est pourquoi les méthodes bayésiennes sont largement utilisées dans le domaine.

Classe de problèmes solubles

En fonction de la structure du réseau, différents types de fonction sont approchables grâce aux réseaux de neurones :

Fonctions représentables par un perceptron

Un perceptron (un réseau à une unité) peut représenter les fonctions booléennes suivantes : AND, OR, NAND, NOR mais pas le XOR. Comme toute fonction booléenne est représentable à l'aide de AND, OR, NAND et NOR, un réseau de perceptrons est capable de représenter toutes les fonctions booléennes.

Fonctions représentables par des réseaux de neurones multicouches acycliques

  • Fonctions booléennes : Toutes les fonctions booléennes sont représentables par un réseau à deux couches. Au pire des cas, le nombre de neurones de la couche cachée augmente de manière exponentielle en fonction du nombre d'entrées.
  • Fonctions continues : Toutes les fonctions continues bornées sont représentables, avec une précision arbitraire, par un réseau à deux couches (Cybenko, 1989). Ce théorème s'applique au réseau dont les neurones utilisent la sigmoïde dans la couche cachée et des neurones linéaires (sans seuil) dans la couche de sortie. Le nombre de neurones dans la couche cachée dépend de la fonction à approximer.
  • Fonctions arbitraires: N'importe quelle fonction peut être approximée avec une précision arbitraire grâce à un réseau à 3 couches (Théorème de Cybenko, 1988).

Algorithme

La large majorité des réseaux de neurones possède un algorithme « d’entraînement » qui consiste à modifier les poids synaptiques en fonction d’un jeu de données présentées en entrée du réseau. Le but de cet entraînement est de permettre au réseau de neurones « d’apprendre » à partir des exemples. Si l’entraînement est correctement réalisé, le réseau est capable de fournir des réponses en sortie très proches des valeurs d’origines du jeu de données d’entraînement.

Mais tout l’intérêt des réseaux de neurones réside dans leur capacité à généraliser à partir du jeu de test.

On peut donc utiliser un réseau de neurones pour réaliser une mémoire ; on parle alors de mémoire neuronale.

La vision topologique d’un apprentissage correspond à la détermination de l’hypersurface sur \mathbb{R}^n \mathbb{R} est l’ensemble des réels, et n le nombre d’entrées du réseau.

Apprentissage

Mode supervisé ou non

Un apprentissage est dit supervisé lorsque l’on force le réseau à converger vers un état final précis, en même temps qu’on lui présente un motif.

À l’inverse, lors d’un apprentissage non-supervisé, le réseau est laissé libre de converger vers n’importe quel état final lorsqu’on lui présente un motif.

Surapprentissage

Il arrive souvent que les exemples de la base d'apprentissage comportent des valeurs approximatives ou bruitées. Si on oblige le réseau à répondre de façon quasi parfaite relativement à ces exemples, on peut obtenir un réseau qui est biaisé par des valeurs erronées. Par exemple, imaginons qu'on présente au réseau des couples (xi,f(xi)) situés sur une droite d'équation y=ax+b, mais bruités de sorte que les points ne soient pas exactement sur la droite. S'il y a un bon apprentissage, le réseau répond ax+b pour toute valeur de x présentée. S'il y a surapprentissage, le réseau répond un peu plus que ax+b ou un peu moins, car chaque couple (xi, f(xi) positionné en dehors de la droite va influencer la décision. Pour éviter le surapprentissage, il existe une méthode simple : il suffit de partager la base d'exemples en 2 sous-ensembles. Le premier sert à l'apprentissage et le 2e sert à l'évaluation de l'apprentissage. Tant que l'erreur obtenue sur le 2e ensemble diminue, on peut continuer l'apprentissage, sinon on arrête.

Rétropropagation

La rétropropagation consiste à rétropropager l'erreur commise par un neurone à ses synapses et aux neurones qui y sont reliés. Pour les réseaux de neurones, on utilise habituellement la rétropropagation du gradient de l'erreur, qui consiste à corriger les erreurs selon l'importance des éléments qui ont justement participé à la réalisation de ces erreurs : les poids synaptiques qui contribuent à engendrer une erreur importante se verront modifiés de manière plus significative que les poids qui ont engendré une erreur marginale.

Élagage

L'élagage ("pruning", en anglais) est une méthode qui permet d'éviter le surapprentissage tout en limitant la complexité du modèle. Elle consiste à supprimer des connexions (ou synapses), des entrées ou des neurones du réseau une fois l'apprentissage terminé. En pratique, les éléments qui ont la plus petite influence sur l'erreur de sortie du réseau sont supprimés. Les deux algorithmes d'élagage les plus utilisés sont :

  • Optimal Brain Damage (OBD) de Y. LeCun et al.
  • Optimal Brain Surgeon (OBS) de B. Hassibi et D.G. Stork
Page générée en 0.145 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise