Les réseaux de neurones artificiels (RNA) sont des programmes informatiques révolutionnaires qui transforment notre façon de percevoir la technologie. Dans un précédent article, nous avons déjà répondu aux questions les plus fréquemment posées sur les RNA et expliqué les concepts simples. Dans cet article, nous allons examiner en profondeur les différents types de RNA et vous aider à mieux comprendre comment ils impactent les technologies modernes.
En général, chaque type de réseau de neurones a ses propres forces et cas d’utilisation. Nous en décrivons certains ci-dessous.
Table des matières
- 1 1. Réseau de neurones à propagation directe
- 2 2. Réseau à fonction de base radiale (RBFN)
- 3 3. Réseau de neurones récurrent (RNN)
- 4 4. Perceptron multicouche (MLP)
- 5 5. Réseau neuronal convolutif (CNN)
- 6 6. Mémoire à court et à long terme (LSTM)
- 7 7. Modèles séquence à séquence
- 8 8. Réseau de neurones modulaire
1. Réseau de neurones à propagation directe
Le réseau de neurones à propagation directe, ou réseau profond à propagation directe, est l’un des types de RNA les plus simples. Dans ce RNA, les données passent par plusieurs nœuds d’entrée (unités de calcul appelées aussi neurones artificiels) jusqu’à ce qu’elles atteignent un nœud de sortie.
En termes simples, les informations passent dans une seule direction, d’un point d’entrée ou nœud d’entrée à un point de sortie ou nœud de sortie. Il diffère des autres types de RNA plus complexes en ce qu’il n’a pas de connexions de rétroaction où la sortie de chaque couche de neurones est réinjectée pour l’apprentissage. Un réseau de neurones à propagation directe ne forme pas de cycle ou de boucle pour permettre à un programme d’apprendre.
Applications : Les réseaux de neurones à propagation directe sont utilisés dans les applications de vision par ordinateur et de reconnaissance faciale.
2. Réseau à fonction de base radiale (RBFN)
Ce type de RNA ne comporte que trois couches : la couche d’entrée, la couche cachée et la couche de sortie. Il est limité à une seule couche cachée par rapport aux autres types de RNA. La couche cachée est en quelque sorte dissimulée entre les couches d’entrée et de sortie, et elle réduit les redondances dans les données. Par rapport aux autres types de RNA qui peuvent avoir plusieurs couches cachées, l’apprentissage est plus rapide dans un RBFN.
Pour mieux comprendre le rôle des différentes couches des RNA, imaginons que vous vouliez informer votre ordinateur qu’une image représente une voiture. Pour que l’ordinateur comprenne, il a besoin d’outils (ou de couches) séparés. Votre détecteur de voitures peut donc avoir un détecteur de roues pour dire s’il y a des roues. Il devrait avoir un détecteur de carrosserie de véhicule, ce qui pourrait lui permettre de différencier une voiture d’un camion, et un détecteur de taille pour faire de même. Ce ne sont là que quelques-uns des éléments qui composent les couches cachées dans les réseaux de neurones artificiels. Ils ne présentent pas l’image entière mais sont des parties de celle-ci.
Applications : Les RBFN peuvent être utilisés dans des systèmes complexes de rétablissement de l’alimentation électrique. En cas de panne de courant, ils peuvent être utilisés pour rétablir l’alimentation électrique à des conditions normales avec des pertes minimales et moins d’impact sociétal. Ils peuvent également être largement appliqués pour la prédiction de séries temporelles. Un exemple serait le trading de actions, où les ordinateurs prédisent quelles actions sont susceptibles d’augmenter ou de diminuer en valeur, permettant aux utilisateurs d’investir judicieusement.
3. Réseau de neurones récurrent (RNN)
Ce type de RNA est similaire à un réseau de neurones à propagation directe, mais il enregistre la sortie d’une couche spécifique et la réinjecte comme entrée. En conséquence, il peut aider à prédire plusieurs résultats possibles à partir de n’importe quelle couche particulière.
En entrant dans les détails : si la première couche reçoit la sortie et la renvoie comme entrée, les couches suivantes commenceront le processus de réseau de neurones récurrent. Chaque nœud conserve une mémoire de l’étape précédente. Et ainsi, le système se souvient des prédictions erronées et apprend d’elles pour améliorer les suivantes. En résumé, les RNN peuvent apprendre de chaque étape pour prédire le résultat à l’étape suivante.
Applications : Les RNN sont utilisés dans les applications de synthèse vocale qui prédisent ce que les utilisateurs peuvent vouloir dire ensuite, en fonction du contexte de leur entrée initiale.
4. Perceptron multicouche (MLP)
Ce type de RNA comporte trois couches ou plus qui classent les données qui ne peuvent pas être séparées linéairement (c’est-à-dire passer par un chemin droit). Ainsi, il est entièrement connecté, ce qui signifie que chaque nœud au sein d’une couche est connecté au nœud suivant dans la couche suivante.
Applications : Les MLP aident aux technologies de reconnaissance vocale et de traduction automatique.
5. Réseau neuronal convolutif (CNN)
Ce type de RNA applique une version différente de MLP en ayant plusieurs couches qui peuvent être entièrement interconnectées. Le but principal des CNN est de déchiffrer les caractéristiques spécifiques d’une image donnée, comme un visage. Ils identifient les caractéristiques en fonction de la proximité de chaque pixel (qui compose toutes les caractéristiques faciales) par rapport à un point de référence.
Applications : Les CNN sont largement utilisés pour la détection précise des visages même si l’image d’entrée est de basse résolution. Ils sont également particulièrement utiles pour améliorer l’estimation du champ de conduite d’une voiture autonome puisqu’ils sont très bons pour déterminer les distances. D’autres applications incluent le traitement du langage naturel (TAL), la détection de paraphrase et la classification d’images.
6. Mémoire à court et à long terme (LSTM)
Les réseaux LSTM sont un sous-ensemble de RNN qui peuvent apprendre des dépendances à long terme. Comme c’est un RNN, LSTM est également un réseau séquentiel, ce qui signifie qu’il peut mémoriser des informations du processus précédent et utiliser ces connaissances pour traiter l’entrée actuelle.
Cependant, les RNN ne peuvent pas mémoriser les dépendances à long terme, ni fournir des résultats pour les entrées qui dépendent d’informations remontant loin dans le temps. C’est là que LSTM intervient. Il peut choisir de conserver certaines informations pour une utilisation future et oublier les informations non pertinentes.
Application : Les réseaux LSTM amènent les applications RNN à un niveau supérieur. Par exemple, les RNN sont utiles pour l’apprentissage de la grammaire, la reconnaissance vocale et la synthèse vocale. LSTM peut faire tout cela, mais il est également capable d’analyser sémantique ou de traduire les énoncés humains en une forme lisible par machine.
7. Modèles séquence à séquence
Les modèles séquence à séquence s’appuient sur la traduction encodeur-décodeur pour traiter l’entrée en une sortie de longueur différente. Google a introduit le concept en 2014, bien que ses modèles séquence à séquence reposent sur des RNN. L’illustration de Towards Data Science ci-dessous résume le concept derrière les modèles séquence à séquence.
Application : Google utilise le modèle séquence à séquence dans Google Traduction. Il est également utilisé dans la reconnaissance vocale, les chatbots en ligne, le sous-titrage vidéo.
8. Réseau de neurones modulaire
Un réseau de neurones modulaire se compose de réseaux de neurones indépendants qui effectuent certaines sous-tâches dans le cadre de la tâche globale destinée au réseau. Le concept imite la façon dont le cerveau humain peut compartimenter les pensées et les processus.
Ces réseaux de neurones indépendants servent de modules ou de petites unités de l’ensemble du réseau. Un intermédiaire prend les sorties de chaque module et les traite pour obtenir la sortie globale du réseau.
Application : Les réseaux de neurones modulaires peuvent résoudre des problèmes d’intelligence artificielle (IA) complexes, notamment la prévision du marché boursier et la reconnaissance de caractères ou le processus de conversion de caractères écrits ou imprimés dans un format compréhensible par l’ordinateur.
Les types de réseaux de neurones artificiels ci-dessus utilisent différentes méthodes pour parvenir à un résultat souhaité. Cependant, ils fonctionnent tous d’une manière qui ressemble au fonctionnement des neurones dans nos cerveaux. Comme les neurones du cerveau humain, les RNA apprennent davantage et améliorent leurs fonctions chaque fois qu’ils reçoivent plus de données et sont utilisés plus souvent. Et tout comme notre cerveau, qu’il imite, ses applications peuvent également être illimitées.