Qu’est-ce qu’un réseau de neurones ?
Désigné en anglais par « artificial neural network », réseau de neurones artificiels en français, il s’agit d’un système informatique matériel ou logiciel (ou les deux à la fois), procédant par imitation du fonctionnement des neurones du cerveau humain. C’est une branche de la technologie d’apprentissage profond (Deep learning), une sous-catégorie de l’intelligence artificielle ou du machine learning (apprentissage automatique).
Naissance des réseaux de neurones
C’est en 1943 que le concept des réseaux de neurones artificiels fut inventé à l’Université de Chicago par deux chercheurs. Ces derniers ont mis en avant leur théorie dans un article du journal Brain Theory, lequel indique que l’activation de neurones est l’unité de base de l’activité cérébrale.
Fonctionnement d’un réseau neuronal artificiel
Réseau de neurones : comment ça marche ?
Généralement, un réseau de neurones est basé sur un important nombre de processeurs qui opèrent en parallèle et organisés en couches. L’une de ces couches reçoit les entrées d’informations brutes, comme cela se fait avec le nerf optique de l’être humain quand celui-ci traite des signaux visuels. Ensuite, chaque couche reçoit les sorties d’informations de la couche précédente, un processus qu’on retrouve chez l’Humain. C’est, en effet, ce qui se passe lors de la transmission d’information entre les neurones via les synapses notamment à proximité du nerf optique. Les résultats du système sont produits par la dernière couche de neurones.
Réseau de neurones et apprentissage
Dans un premier temps, le réseau de neurones artificiels aura une performance de prédiction très faible. Le réseau de neurones devra donc passer par une phase d’apprentissage à partir de données observées. Cet apprentissage se fait grâce à l’algorithme de backpropagation. A partir des prédictions du modèle et en les comparant à la réalité, le réseau de neurones va apprendre à mieux prédire les sorties. Par exemple, un réseau de neurones pourra apprendre à reconnaître des objets. Pour cela, il observe un nombre important d’objets appartenant à une même catégorie en connaissant le type d’objet. Ensuite, le réseau de neurones pourra prédire l’objet présent sur de nouvelles images, ce qui est possible grâce à l’identification des patterns récurrents au sein des images. Cela permet par exemple d’apprendre à reconnaître un chat sur n’importe quelle photo en analysant des milliers de photos de chats.
À quoi servent les réseaux neuronaux ?
Les cas d’usage des réseaux de neurones artificiels sont nombreux et ne cessent de se multiplier au fil du temps. On peut s’en servir notamment pour la reconnaissance d’écriture manuscrite, la prévision des marchés financiers ou encore la conversion de l’audio ou la voix en texte (speech-to-text). L’utilisation des neural networks est possible aussi pour faire de la reconnaissance faciale, de la détection de cancer sur les imageries médicales et de la prédiction météo. On y a également recours pour entraîner les chatbots, mettre au point des algorithmes de traitement du langage naturel ou découvrir de nouveaux médicaments.
Les différents types de réseaux neuronaux
Il existe différents types de réseaux neuronaux. On les catégorise le plus souvent en fonction de l’architecture des couches intermédiaires. On peut aussi différencier les réseaux de neurones par le nombre d’épaisseurs séparant l’entrée de données de la production du résultat, en tenant compte du nombre de nœuds cachés du modèle ou en considérant le nombre d’entrées et de sorties de chaque nœud.
Réseau de neurones “feed forward”
On note une variation de la propagation des informations entre les différentes couches de neurones. Dans le réseau de neurones dit « feed forward », les informations passent directement de l’entrée aux nœuds de traitement et ensuite aux sorties.
Réseau de neurones récurrents
Les réseaux de neurones récurrents, par contre, font la sauvegarde des résultats produits par les nœuds de traitement et se servent de ces résultats pour nourrir le modèle.
Crédit image : fdeloche, CC BY-SA 4.0, via Wikimedia Commons
Réseau de neurones convolutifs
Il existe aussi les réseaux de neurones convolutifs qui sont couramment utilisés dans une multitude de domaines, comme la reconnaissance faciale, le traitement du langage naturel et la numérisation de texte.