INTRODUCTION AUX RESEAUX DE NEURONES MASTER 2005-2006 1. Introduction _________

INTRODUCTION AUX RESEAUX DE NEURONES MASTER 2005-2006 1. Introduction ___________________________________________________________ 3 Historique ____________________________________________________________________ 4 Analogie neurone formel et neurone biologique _____________________________________ 5 Exemple de réseaux de neurones __________________________________________________ 6 Applications___________________________________________________________________ 7 2. Caractéristiques des réseaux de neurones artificiels ___________________________ 8 2.1. Poids (w) et biais (b) d’un neurone__________________________________________ 8 2.2. La fonction de sommation_________________________________________________ 8 2.3. La fonction de transfert__________________________________________________ 10 2.4. Réseaux statiques (Apprentissage par « paquet ») et Réseaux dynamiques (Apprentissage « séquentiel ») ___________________________________________________ 11 3. Les différents types de réseaux de neurones et leurs applications ________________ 12 3.1. Le perceptron __________________________________________________________ 12 3.1.1. Description _________________________________________________________________ 12 3.1.2. Loi d’apprentissage du perceptron _______________________________________________ 12 3.2. Les réseaux (filtres) linéaires _____________________________________________ 13 3.2.1. Description _________________________________________________________________ 13 3.2.2. Algorithme d’apprentissage (LMS ou Windrow-Hoff algorithme)_______________________ 13 3.3. Le perceptron multicouche _______________________________________________ 15 3.3.1. Description _________________________________________________________________ 15 3.3.2. La rétro propagation ou algorithme d’apprentissage de « Backpropagation » ______________ 15 3.3.3. Amélioration de la généralisation (ou le dilemme biais/variance) _______________________ 16 3.3.4. Applications ________________________________________________________________ 17 3.4. Les réseaux de neurones à fonctions radiales de base (Radial Basis Network) _____ 23 3.4.1. Description _________________________________________________________________ 23 3.4.2. Les réseaux de neurones à régression généralisée (Generalized Regression Networks)_______ 24 3.4.3. Les réseaux de neurones probabilistes (Probabilistic Neural Networks)___________________ 25 3.5. Les réseaux de neurones compétitifs ou cartes auto organisatrices ______________ 26 3.5.1. Réseaux de neurone compétitif ou réseaux de Kohonen (loi d’apprentissage de Kohonen)____ 26 3.5.2. Les cartes auto organisatrices ___________________________________________________ 27 3.5.3. Les LVQ réseaux de neurones___________________________________________________ 29 3.6. Les réseaux récurents ___________________________________________________ 30 3.6.1. Réseaux de Elman____________________________________________________________ 30 3.6.2. Réseaux de Hopfield __________________________________________________________ 31 1. Introduction Les réseaux de neurones sont composés d’éléments simples (ou neurones) fonctionnant en parallèle. Ces éléments ont été fortement inspirés par le système nerveux biologique. Comme dans la nature, le fonctionnement du réseau (de neurone) est fortement influencé par la connections des éléments entre eux. On peut entraîner un réseau de neurone pour une tâche spécifique (reconnaissance de caractères par exemple) en ajustant les valeurs des connections (ou poids) entre les éléments (neurone). En général, l’apprentissage des réseaux de neurones est effectué de sorte que pour une entrée particulière présentée au réseau corresponde une cible spécifique. L’ajustement des poids se fait par comparaison entre la réponse du réseau (ou sortie) et la cible, jusqu’à ce que la sortie corresponde (au mieux ?) à la cible. On utilise pour ce type d’apprentissage dit supervisé un nombre conséquent de pair entrée/sortie. L’apprentissage « par paquet » (batch training) du réseau consiste à ajuster les poids et biais en présentant les vecteurs d’entrée/sortie de tout le jeu de données. L’apprentissage « pas à pas ou séquentiel » (incremental training) consiste à ajuster les poids et biais en présentant les composantes du vecteur d’entrée/sortie les unes après les autres. Ce type d’apprentissage est souvent qualifié d’apprentissage « en ligne » (« on line » training) ou « adaptatif » (« adaptive » training). L’apprentissage permet aux réseaux de neurones de réaliser des taches complexes dans différents types d’application (classification, identification, reconnaissance de caractères, de la voix, vision, système de contrôle…). Ces réseaux de neurones peuvent souvent apporter une solution simple à des problèmes encore trop complexes ne pouvant être résolus rapidement par les ordinateurs actuels (puissance de calcul insuffisante) ou par notre manque de connaissances. La méthode d’apprentissage dite supervisé est souvent utilisée mais des techniques d’apprentissage non supervisé existent pour des réseaux de neurones spécifiques. Ces réseaux peuvent, par exemple, identifier des groupes de données (réseaux de Hopfield). Les réseaux de neurones ont une histoire relativement jeune (environ 50 ans) et les applications intéressantes des réseaux de neurones n’ont vu le jour qu’il à une vingtaine d’année (développement de l’informatique). L’objectif de ce cours (de 2 heures) est de présenter (sommairement) les grands types de réseaux de neurones, leurs applications et éventuellement les règles et algorithmes d’apprentissage. On s’attardera un petit peu plus sur le perceptron multicouche. Les figures de ce cours sont issus du livre Neural Network Toolbox fournit par le logiciel Matlab et des recherches effectuées au Laboratoire de Météorologie Physique. Historique Le champ des réseaux neuronaux va démarrer par la présentation en 1943 par W. McCulloch et W. Pitts du neurone formel qui est une abstraction du neurone physiologique. Le retentissement va être énorme. Par cette présentation, ils veulent démontrer que le cerveau est équivalent à une machine de Turing, la pensée devient alors purement des mécanismes matériels et logiques. Une machine de Turing se résume à une tête de lecture comportant un nombre fini d’états internes et à un ruban. La puissance de l’analyse de Turing (1912-1954) tient au fait que sa tête de lecture ne lit qu’un seul symbole à la fois, et que cette lecture, associée à la table d’états adéquate, suffit à effectuer toutes les opérations possibles. La Machine de Turing est toutefois une machine imaginaire, abstraite, et idéale. Elle n’a pu être construite. Son fonctionnement implique en effet d’avoir un ruban extensible à volonté donc infini! La combinaison de cette mémoire infinie et d’un nombre d’états fini a cependant apporté la preuve que, si un problème est calculable, alors il existe une machine pour le résoudre. Dès lors, une MACHINE, reprenant les règles de toutes les autres, est UNIVERSELLE ».) En 1949, D. Hebb présente dans son ouvrage « The Organization of Behavior » une règle d’apprentissage. De nombreux modèles de réseaux aujourd’hui s’inspirent encore de la règle de Hebb. En 1958, F. Rosenblatt développe le modèle du perceptron. C’est un réseau de neurones inspiré du système visuel. Il possède deux couches de neurones : une couche de perception et une couche liée à la prise de décision. C’est le premier système artificiel capable d’apprendre par expérience. Dans la même période, Le modèle de L’Adaline (ADAptive LINar Element) a été présenté par B. Widrow et Hoff. Ce modèle sera par la suite le modèle de base des réseaux multi- couches. En 1969, M. Minsky et S. Papert publient une critique des propriétés du Perceptron. Cela va avoir une grande incidence sur la recherche dans ce domaine. Elle va fortement diminuer jusqu’en 1972, où T. Kohonen présente ses travaux sur les mémoires associatives et propose des applications à la reconnaissance de formes. C’est en 1982 que J. Hopfield présente son étude d’un réseau complètement rebouclé, dont il analyse la dynamique. Analogie neurone formel et neurone biologique Exemple de réseaux de neurones Réseau entièrement bouclé (carte topologique) Réseaux avec connections arrière (réseaux récurrent ou feedback Réseau « ordonné » sans connexion arrière (réseau feed-forward) Applications • Aérospatial : pilotage automatique, simulation du vol… • Automobile : système de guidage automatique,… • Défense : guidage de missile, suivi de cible, reconnaissance du visage, radar, sonar, lidar, traitement du signal, compression de données, suppression du bruit… • Electronique : prédiction de la séquence d’un code, vision machine, synthétiseur vocal, modèle non linéaire,… • Finance : Prévision du coût de la vie • Secteur médical : Analyse EEC et ECG • Télécommunications : Compression de données … 2. Caractéristiques des réseaux de neurones artificiels 2.1. Poids (w) et biais (b) d’un neurone 2.2. La fonction de sommation L’entrée d’un neurone contient le biais et la somme des ses poids. La sortie d’un neurone dépend de l’entrée du neurone et de sa fonction de transfert f . 2.3. La fonction de transfert Fonction à seuil Tangente hyperbolique Fonction Gaussienne Pas unitaire Sigmoïde Linéaire Seuillée Gaussienne Identité f (x) = x 2.4. Réseaux statiques (Apprentissage par « paquet ») et Réseaux dynamiques (Apprentissage « séquentiel ») Le format des données d’entrée va affecter l’évolution des poids et biais des réseaux de neurones lors de leur apprentissage. Un réseau dit statique est un réseau qui ne contient pas de connexion arrières (feedback or delay). Par conséquent, on peut lui présenter les données en entrée dans n’importe quel ordre, cela n’influencera pas l’évolution de ses poids lors de la phase d’apprentissage. Il est alors préférable de lui donner tout le jeu de donnée en un seul coup lors de la phase d’apprentissage. On parle alors d’apprentissage par paquet (« batch training »). Les réseaux « feedforward » ne peuvent pas simuler des processus dépendant du temps. Par contre, si l’on veut simuler un processus qui dépend du temps, alors on pourra utiliser un réseau de neurones contenant des connections arrières. L’ordre de présentation du jeu de données au réseau de neurone sera alors primordial. On parle alors d’apprentissage séquentiel. 3. Les différents types de réseaux de neurones et leurs applications 3.1. Le perceptron 3.1.1. Description 3.1.2. Loi d’apprentissage du perceptron Soient p et t les vecteurs d’entrée et sortie cible utilisés pour l’apprentissage du perceptron et a est réponse du perceptron. L’évolution de la valeur des poids W et des biais b du perceptron vont varier, à chaque fois (nombre de epoch) que les vecteurs d’entrée sont présentés au perceptron, selon la règle ( ) T T ep p a t W = − = ∆ et ( ) e a t b = − = ∆ ) 1 ( , uploads/Ingenierie_Lourd/ introduction-aux-reseaux-de-neurones.pdf

  • 21
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager