• Aucun résultat trouvé

CHAPITRE III Apprentissage machine et réseaux de neurones artificiels

3.5 Historique et évolution

L’histoire des RNA a été assez mouvementée, influencée par le contexte de la naissance de l’IA, des débats épistémologiques sur le connexionniste vs le symbolisme et l’évolution de la puissance de calcul des ordinateurs. Nous présentons ci-dessous quelques jalons historiques depuis le premier neurone formel jusqu’à aujourd’hui.

▪ 1943: Dans l’article « A logical calculus of the ideas immanent in nervous activity», Warren S. Mcculloch et Walter Pitts présenteraient le premier neurone formel qui porte leurs noms : neurone de McCulloch-Pitts. Ce neurone n'avait pas de mécanisme formel d'apprentissage, mais représentait toutefois un premier jalon dans le paradigme connexionniste de l’IA. Ce paradigme connexionniste est froidement accueilli et même critiqué comme l’illustre cette citation de A. Turing, « Nous pourrions produire des modèles électriques assez précis imitant le comportement du système nerveux, mais il ne semble pas y avoir grand intérêt à le faire. Ce serait comme consacrer beaucoup d’efforts à fabriquer des voitures avançant sur des jambes au lieu de continuer à se servir de roues. »

▪ 1949 : Hebb Donald (Hebb, 1949) : propose une formulation du mécanisme d'apprentissage sous forme de règles de modification des connexions synaptiques appelées règle de Hebb. Ces règles modélisent le principe de la plasticité synaptique notamment le fait que si des neurones, de part et d'autre d'une synapse, sont activés de façon synchrone et répétée, la connexion synaptique est renforcée. Ceci établit les bases du principe de l’apprentissage connexionniste qui consiste à modifier le poids des connexions entre les neurones. D’autres variantes de la règle de Hebb ont été proposées plus tard par d’autres chercheurs notamment la règle de Widrow-Hoff et la règle de Grossberg. De nos jours de nombreuses règles sont disponibles dépendamment du type de réseau ainsi que des objectifs.

▪ 1957-1958 : Frank Rosenblatt propose le Perceptron, le premier modèle opérationnel de neurone artificiel avec la capacité d'apprendre par l'expérience pour la reconnaissance d’une configuration et la tolérance aux bruits. Le Perceptron est inspiré du système visuel pour la perception d’où le nom Perceptron. Il dispose d’une couche d'entrées pour la perception ainsi de sorties pour la décision. Étant qu’à cette époque les langages de programmation spécialisés n’étaient pas couramment utilisés, Rosenblatt a implémenté l'idée du Perceptron dans du matériel adapté; et a montré qu'il pouvait être utilisé pour apprendre à classer correctement les formes simples avec des entrées de 20x20 pixels.

▪ 1969 : Minsky & Papert montrent dans un livre (« Perceptrons ») toutes les limites du perceptron principalement l’impossibilité de classer des configurations non linéairement séparables tels que le célèbre problème du XOR (OU exclusif). Ceci affecte l'enthousiasme des recherches sur les RNA ainsi que l’abandon graduel des financements des recherches sur les RNA. ▪ 1969 - 1982 : Mise en sommeil des recherches sur les RNA. Elles continuent

Kohonen, Anderson, Hopfield, etc. Également en 1974, Paul Werbos et d’autres chercheurs proposent un algorithme de rétropropagation de l'erreur, ce qui offre un mécanisme d'apprentissage pour les réseaux multicouches de type Perceptron (MLP : Multi-layer Perceptron). Les MLP pouvaient apprendre des configurations non linéairement séparables et constituent une première réponse à Minsky et Papert.

▪ 1983 – 1986 : marqué par de nombreux progrès qui redonnent de l’intérêt au RNA. David Rumelhart popularise l’algorithme de rétropropagation du gradient pour l’apprentissage des MLP.

▪ 1990 : émergence des travaux sur les réseaux à convolution (CNNs). Yann LeCun et ses collaborateurs proposent en 1998 l’architecture LeNet pour la reconnaissance des chiffres manuscrits

▪ 1997: Proposition de l’architecture LSTM (Long short-term memory) par Sepp Hochreiter and Jürgen Schmidhuber.

▪ 2014 : Émergence des réseaux GANs (Generative adversarial networks) introduite par Ian Goodfellow. C’est une approche innovante pour l’élaboration de modèles génératifs, c’est-à-dire capables de produire eux-mêmes des données. Les GAN reposent sur l'entraînement non supervisé de deux réseaux de neurones artificiels appelés Générateur et Discriminateur. Ces deux réseaux s'entraînent l’un et l’autre dans le cadre d’une relation contradictoire. Le

Générateur a la charge de créer des exemples (ex : des images). Le Discriminateur reçoit des exemples provenant du générateur et d’une source de

données constituée d’exemples réels. Le Discriminateur identifie la source de chaque exemple et tente ainsi de deviner si ces exemples sont réels ou s’ils ont été générés par le Générateur. Les deux algorithmes entretiennent donc une relation d’amélioration continue : le Générateur apprend à créer des exemples de plus en plus réalistes et le Discriminateur apprend à identifier de mieux en mieux les exemples réels de ceux provenant du Générateur

▪ 2017 : Geoffrey Hinton et d'autres chercheurs présentent officiellement le Capsule Networks (CapsNet) permettant une meilleure modélisation des relations hiérarchiques grâce à l’ajout de structures appelées « capsules » à un CNN. Une capsule est un groupe de neurones dont le vecteur d'activité correspond aux paramètres d'instanciation d'un objet ou d'une partie d'objet. Elle indique les caractéristiques de l'objet et sa probabilité. Ces caractéristiques peuvent inclure des paramètres tels que la "pose" (taille, position, orientation), la vitesse, la déformation, l'albédo (réflexion lumineuse), la texture et la teinte. La longueur d'un vecteur capsule indique la probabilité qu'un élément soit présent dans l'image, et la direction du vecteur correspond à ses informations de pose. Le CapsNet utilise les sorties de plusieurs capsules pour former des représentations plus stables par rapport à diverses perturbations apportant une solution à certaines limites connues des CNN. Il s’agit par exemple de l’invariance par rapport à la translation (changement de position ou rotation de l’image) et la représentation interne des données par le CNN qui ne prend pas en compte les hiérarchies spatiales importantes entre les objets simples et complexes. Également, avec des changements au niveau de l’optimisation des poids synaptiques les CapsNet nécessitent une fraction des données que nécessitent un CNN pour l’entraînement et la généralisation.