Une introduction aux réseaux de neurones
Ce qu’est un réseau de neurones, comment fonctionne un neurone, où se fait l’apprentissage, et les grandes familles de réseaux.

Dans l’article précédent – Comment les réseaux de neurones peuvent-ils aider à prédire l’avenir ? – nous nous sommes concentrés sur un usage particulier des réseaux de neurones, en supposant que vous connaissiez déjà les bases de leur structure et de leurs principes. Il peut pourtant être utile d’avoir une référence à laquelle revenir chaque fois que nous parlons de réseaux de neurones. C’est l’objet de ce nouvel article.
Qu’est-ce qu’un réseau de neurones ?
Il vaudrait peut-être mieux parler de réseaux de neurones artificiels (RNA), pour les distinguer des réseaux de neurones biologiques. Les RNA tentent de modéliser la façon dont notre cerveau traite l’information : ils cherchent à simuler la manière dont les neurones interagissent entre eux et se transmettent une information électrique pour réagir à des stimuli.
Tout RNA peut être divisé en 3 couches ou plus : la couche d’entrée est une couche passive ; les couches cachées et la couche de sortie sont des couches actives, où le calcul est réellement effectué.
Les nœuds d’entrée reçoivent simplement l’entrée correspondante et la transmettent aux nœuds de la couche suivante. Dans le cas le plus simple, il n’y a qu’une couche cachée, qui traite l’information reçue de la couche précédente et transmet le résultat aux nœuds suivants. La couche de sortie donne les résultats du traitement du RNA.
La figure suivante montre un exemple de RNA : les nœuds sont des neurones artificiels, et chaque flèche représente le flux d’information qui transmet la sortie d’un neurone aux suivants.

Comment fonctionne exactement un neurone ?
Les neurones actifs – ceux des couches actives – sont les unités de calcul de base de tout RNA. Ils effectuent une somme pondérée de leurs entrées (chaque flèche a un poids, que l’on peut voir comme la « force » du signal correspondant) et utilisent une fonction d’activation pour calculer la sortie correspondante. Dans le cas le plus simple, la sortie peut valoir simplement 0 ou 1 (fonction d’activation en échelon) : la somme pondérée dépasse-t-elle un seuil donné ? Si oui, le neurone « s’active » – il renvoie 1 – et l’information est transmise aux neurones suivants. En pratique, il existe différentes fonctions d’activation.
Où la magie opère-t-elle vraiment ?
Vous l’avez sans doute remarqué : en modifiant les poids, on peut influer sur la sortie de chaque neurone et, par conséquent, sur la sortie de l’ensemble du RNA. On peut s’en servir comme d’un mécanisme d’apprentissage pour le RNA. Ce mécanisme repose souvent sur l’algorithme de rétropropagation (du moins en apprentissage supervisé). Au fond, ce que nous voulons, c’est que le RNA donne un résultat précis pour une entrée donnée. L’idée générale de la rétropropagation est d’utiliser l’écart entre la sortie obtenue et la sortie souhaitée (l’erreur) comme indication pour ajuster les poids. Ce processus d’apprentissage est répété de nombreuses fois, jusqu’à obtenir une sortie acceptable.
Combien de RNA différents peut-on avoir ?
La façon dont les neurones sont connectés détermine la topologie du RNA : les RNA où l’information ne circule que dans un sens, de la couche d’entrée aux couches cachées puis à la couche de sortie, sont appelés RNA à propagation avant ; à l’inverse, les RNA à rétroaction (ou récurrents) permettent aux signaux de circuler dans les deux sens.
Quoi qu’il en soit, pour une topologie donnée, on peut obtenir des RNA aux performances très différentes simplement en changeant le nombre de couches, de nœuds, de connexions, les fonctions d’activation et d’autres paramètres. Selon le domaine d’application, un RNA peut bien sûr être plus adapté qu’un autre.
C’est tout pour aujourd’hui ! J’espère que l’article vous a plu. Continuez à nous suivre et n’hésitez pas, comme d’habitude, à poser vos questions en commentaire !
Graziano Mita
Data scientist chez Ezako