La théorie des réseaux de neurones a été créée en s’inspirant du modèle biologique du neurone lors de recherches en informatique. Leur faculté remarquable à trouver du sens dans des jeux de données compliquées ou bruitées a fait des réseaux de neurones un objet important de la recherche mathématique.
Mathématiquement, un neurone est un modèle qui se caractérise par deux opérations arithmétiques élémentaires : la somme pondérée de ses entrées et l’application d’une fonction « d’activation » sur le résultat de la somme.

INSPIRATION

La théorie mathématique des réseaux de neurones trouve son inspiration dans le monde de la biologie, et plus spécifiquement dans ce que l’on connaît du fonctionnement du cerveau. On retrouve le même type d’inspiration dans la création des algorithmes génétiques, algorithmes d’optimisation inspirés des lois de la génétique et de la théorie de l’évolution naturelle. Les réseaux de neurones sont nés au sein de la recherche sur l’intelligence artificielle avec pour objectif de répliquer la tolérance à la faute et la faculté d’apprendre que l’on rencontre dans les systèmes biologiques des neurones. La schématisation d’un neurone biologique – à savoir un corps cellulaire, des prolongements apportant des informations au neurone (les dendrites) et un prolongement qui communique les informations recueillies par le neurone (les axones), l’axone d’un neurone étant connecté aux dendrites d’un autre neurone par les synapses – a servi de modèle de base pour définir mathématiquement un neurone formel.

LES NEURONES FORMELS

Mathématiquement, un neurone formel (ou simplement un neurone) est un modèle qui se caractérise par deux opérations arithmétiques élémentaires: la somme pondérée de ses entrées et l’application d’une fonction « d’activation » sur le résultat de la somme. Les variables de la fonction sont appelées les « entrées » du neurone (elles sont affectées d’un poids qui dépend de chaque neurone et calculé dans la phase d’apprentissage) et la valeur de la fonction sa « sortie ». On introduit de plus un paramètre supplémentaire qui représente le biais du neurone, ce qui implique que la fonction d’activation opère une transformation d’une combinaison affine des entrées. Les différents types de neurones se distinguent par la nature de la fonction d’activation, qui peut-être une fonction linéaire, une fonction de seuil, une fonction radiale ou encore une fonction stochastique. Un neurone formel ne réalise rien d’autre qu’une somme pondérée suivie d’une transformation non linéaire de cette somme.

UN RÉSEAU DE NEURONES

Un réseau neuronal (ou réseau de neurones) est l’association (représentée sous la forme d’un graphe plus ou moins complexe) d’objets élémentaires, les neurones formels. Les principaux réseaux de neurones se différencient par leur architecture, par leur niveau de complexité (nombre de neurones, présence ou non de boucles de rétroaction dans le réseau), par le type des neurones (différents types de fonction d’activation) et enfin par l’objectif visé par la mise en place du réseau: apprentissage.

LE PERCEPTRON MULTICOUCHE

Le cas le plus simple est celui du réseau de neurones non bouclés. Ce dernier est un ensemble de neurones connectés entre eux dans lequel l’information circule des entrées vers les sorties sans retour en arrière, c’est-à-dire que les entrées ne peuvent contenir de valeur de sortie d’un autre neurone. Ce type de réseau est utilisé par exemple pour des problèmes d’approximation de fonctions non linéaires. Un exemple de réseaux de neurones non bouclés répondant à de très nombreuses problématiques concrètes est le perceptron multicouche (PCM). Une couche est un ensemble de neurones n’ayant pas de connexion entre eux. Dans le PCM, on trouve une couche d’entrée qui lit les signaux entrants, une couche de sortie qui fournit la réponse du système et, entre les deux, des couches cachées qui participent au transfert. Ces réseaux sont en mesure de modéliser des fonctions très complexes, où le nombre de couches et le nombre de neurones dans chaque couche vont déterminer la complexité de la fonction.

APPRENTISSAGE

Un des points importants de la théorie des réseaux de neurones est la notion d’apprentissage du réseau. En effet, une fois choisie l’architecture du réseau, c’est-à-dire le type de neurones ainsi que la fonction d’activation, il faut alors déterminer les autres paramètres du modèle que sont les poids qui permettent de connecter les entrées aux neurones cachés et les neurones cachés aux neurones de sortie. C’est que l’on appelle la phase d’apprentissage. L’apprentissage « supervisé » (il existe également des techniques plus affinées d’apprentissage non supervisé) consiste alors à calculer les poids de manière que les sorties du réseau de neurones soient, pour les exemples utilisés lors de l’apprentissage, aussi proches que possible des sorties « désirées ». La plupart des algorithmes d’apprentissage sont des algorithmes d’optimisation : ils cherchent à minimiser une fonction de coût qui constitue une mesure de l’écart entre les réponses réelles du réseau et ses réponses désirées.

La théorie des réseaux de neurones s’inspire du fonctionnement du cerveau et notamment des interactions entre neurones biologiques. Ainsi, il a été défini des neurones formels et des réseaux de neurones formels plus ou moins complexes (bouclés ou non bouclés) qui répondent à des questions mathématiques, informatiques ou concrètes. Ces réseaux, qui subissent une phase d’apprentissage, ont trouvé un grand nombre d’applications en traitement du signal, en robotique, en pose de diagnostic et suivi médical ou encore sur les marchés boursiers.

À RETENIR

supervisé ou non, optimisation ou encore systèmes dynamiques. On distingue deux grands types d’architecture de réseaux de neurones: les réseaux de neurones non bouclés et les réseaux de neurones bouclés. Une boucle offre la possibilité de ramener aux entrées la valeur d’une ou plusieurs sorties. La topologie des connexions dans un réseau de neurones bouclés peut être très complexe et doit contenir un effet de retard pour chaque boucle. Les réseaux bouclés sont donc des systèmes dynamiques.