Réseaux de neurones articiels et apprentissage
RÉSEAUX DE NEURONES ARTIFICIELS ET APPRENTISSAGE
Introduction
La mise au point des systèmes intelligents capables de modéliser et de copier le fonctionnement du cerveau humain suscite un engouement général dans le monde scientique depuis des années. Il n’est donc pas surprenant qu’une technologie basée sur des fondements biologiques tels que les réseaux de neurones retienne particulièrement l’attention. Cependant, avant d’appliquer les réseaux de neurones articiels (ou formels) pour résoudre un problème complexe, il est indispensable de se familiariser avec les principales notions de base et ce qui est le but de ce chapitre.
À la suite d’un rappel sur le système nerveux et les neurones biologiques, les diérents types de neurones formels et les modes d’apprentissage sont présentés et ce par ordre chronologique de parution dans la littérature scientique. Cette classication nous permet d’une part de mieux comprendre l’évolution considérable du domaine des réseaux de neurones formels ces dernières années, et d’autre part de présenter les exemples de réseaux de neurones les plus pertinents en présentant leurs structures, leurs algorithmes de fonctionnements, leurs qualités et de ce fait leurs domaines d’application.
De neurone biologique vers le neurone formel
Un bref rappel sur les neurones biologiques nous permettra de mieux comprendre l’origine des réseaux de neurones formels. Le système nerveux central est composé d’un ensemble de cellules nerveuses fortement inter-connectées, leur nombre est estimé à une centaine de milliards. Les neurones sont des cellules particulières capables de recevoir, de traiter et de transmettre des messages sous forme d’impulsions électriques. Chaque neurone est constitué d’un corps cellulaire, d’une multitude de petites ramications, appelées dendrites, et d’une ramication unique beaucoup plus longue appelée axone, ce qui est représenté à la gure 1.1(a). La connexion inter-neuronale se fait entre l’axone et les dendrites, par l’intermédiaire d’une synapse, c’est le nombre de neurones et les connexions inter-neuronales qui dénissent le réseau de neurones. Le mode de fonctionnement d’un neurone biologique est le suivant : il reçoit des impulsions électriques provenant des neurones auxquels il est connecté ; à partir de tous ces signaux, le neurone peut ou non émettre un message, dans l’armative, il le fait par l’intermédiaire de son axone et la synapse qui est le lieu de passage des impulsions. Une synapse peut donc être excitatrice ou inhibitrice. Le niveau d’excitation ou d’inhibition correspond à une pondération des inux nerveux arrivant des dendrites. On considère que le corps cellulaire du neurone réalise la somme pondérée de tous les inux nerveux, un signal sera émis si cette somme est supérieure à un seuil. En se basant sur les fondements biologiques du système nerveux, il est possible d’envisager un réseau articiel qui serait lui aussi composé de cellules de calcul, appelées neurones arti- ciels ou formels et de connexions entre ces cellules. Nous intéressons dans un premier temps aux cellules de traitement. Par analogie avec les neurones biologiques, ces cellules doivent être aptes à réaliser les trois opérations suivantes : collecter, traiter et transmettre des messages. Pour satisfaire ces exigences, le neurone formel doit posséder plusieurs entrées pour collecter les messages provenant des autres neurones formels, pour que ceux-ci soient pondérés le neurone formel doit posséder des poids de pondération au niveau de chacune de ses entrées ; une partie de traitement modélisée par une fonction mathématique appelée fonction de transition ; une sortie unique qui transmet le message résultant du traitement des signaux d’entrée aux autres neurones formels. Nous avons alors le parallèle suivant entre le neurones formel et le neurone biologique : les dendrites sont des entrées, les synapses des poids de connexion et l’axone la sortie unique. Ceci est montré dans la gure 3.1 où l’on retrouve un neurone biologique (gure.
(a)) et son homologue formel (gure 1.1(b)).
Mathématiquement on peut transcrire cette modélisation sous la forme de l’équation suivante, les connexions se font dans le sens des neurones d’indice j vers le neurone d’indice i : : Seuil du neurone i wij : Poids de connexion entre deux neurones i et j ; f (:) : Fonction de décision non linéaire ; Nj : le nombre de neurones j connectés au neurone i ; Dans un modèle plus général de neurone formel, on dénit la fonction de décision comme étant constituée par une fonction d’entrée totale et une fonction d’activation. Le premier modèle de neurone formel a été présenté en 1943 par Mc Culloch et Pitts, c’est un automate à seuil dont l’unité de sortie est binaire, la fonction de décision utilisée est une fonction à seuil. Ce neurone ne peut donc qu’être actif (sortie à 1) ou inactif (sortie à 0). D’autres modèles ont été obtenus en modiant la fonction de décision, en général ces fonctions sont plus complexes et elles permettent d’obtenir des neurones plus performants. Les modèles les plus courants sont au nombre de six ([8]) : Automates booléens : la sortie est une fonction booléenne des entrées elles-mêmes booléennes. Automates à seuil : la sortie est binaire, les entrées binaires ou réelles, la fonction d’entrée est ane, la fonction d’activation est la fonction signe ou de Heavyside. Automates linéaires : la sortie et les entrées sont réelles, la fonction d’entrée est linéaire, la fonction d’activation est l’identité. Automates à saturation : la sortie et les entrées sont comprises dans un intervalle [u,v], les fonctions d’entrée et d’activation sont linéaires. Automates continus : la sortie et les entrées sont réelles, la fonction d’entrée est linéaire ou ane, la fonction d’activation est sigmoïde. Automates probabilistes : la sortie est binaire, les entrées quelconques, la fonction d’entrée est linéaire ou ane, la fonction d’activation est stochastique Les diérents modèles sont donc caractérisés par leur fonction de décision (fonctions d’entrée et d’activation), les cinq fonctions d’activation les plus fréquemment employées par les réseaux de neurones sont les suivantes [34] :
fonction linéaire :1.2 Topologies des principaux types des réseaux de neurones Nous verrons dans cette section l’un des cruciaux principes des réseaux de neurones tels que la topologie. Ensuite, nous présentons les diérents types de ces réseaux qui existent dans la littérature.
Topologie des réseaux de neurones
La topologie des réseaux de neurones est dénie par les trois points suivants : les données traitées par le réseau [34],l’arrangement dans l’espace des cellules de traitement (neurones formels) et l’interconnexions entre ces neurones. Dans la section précédente nous avons déni les neurones, cellules élémentaires des réseaux de neurones, il convient donc d’étudier maintenant les modes d’arrangements et d’interconnexions possibles entre eux. Tout comme le neurone formel est une modélisation mathématiques du neurones biologique, le réseau formel d’interconnexions est basé sur le réseau de neurones biologique formant le système nerveux central. S’il existe un parallèle entre une arborisation de neurones biologiques et un schéma d’interconnexions entre neurones formels, il est à noter que la densité en neurones est inniment plus grande dans le cas biologique que dans le cas articiel. Nous avons donc introduit la notion de topologie des réseaux de neurones, dénissons maintenant la terminologie associée à cette dernière :
Couche :
Les réseaux de neurones sont organisés en couches de neurones formels qui correspondent à l’arrangement dans l’espace de ces derniers. D’un point de vue théorique des graphes, les réseaux à couches sont des graphes sans circuit.
Connexions :
On distingue deux types de connexions dans les réseaux de neurones : les connexions intra-couches relient les neurones d’une même couche, voire un neurone sur lui même ; les connexions inter-couches relient les neurones de couches diérentes. Les deux types sont compatibles et il est possible de voir des réseaux possédant les deux types de connexions.
Boucles :
Une boucle est formée par un neurone connecté sur lui-même directement ou par l’intermédiaire de plusieurs neurones. D’un point de vue théorique des graphes, les réseaux bouclés constituent des graphes ayant au moins un circuit.
Propagation et rétro-propagation :
On distingue deux types de réseaux de neurones selon leur aptitude à propager une information dans un sens unique entre les neurones ou leur aptitude à propager une information dans un sens et rétro propager une information complémentaire dans l’autre sens. Dans ce dernier cas les neurones sont appelés à fonctionner dans les deux sens. Les dénitions précédentes nous permettent de classier les réseaux de neurones selon leur topologie, cependant d’autres critères de classication sont intéressants pour parfaire la classication, tel que : Le nombre de couches, Le mode de connexion des réseaux de neurones à boucles : réseaux entièrement connectés et réseaux entièrement connectés par couches, Le type de couches simples ou non : les réseaux à couches simples possèdent plusieurs couches et les connexions se font uniquement d’une couche i vers la couche i + 1. S’ils sont non simples, les réseaux ont des connexions de n’importe quelle couche vers n’importe quelle autre. L’arbre de la gure 1.3 permet de faire une synthèse des classications envisagées sur les réseaux de neurones selon leur topologie. Le choix de classement a été fait d’une part sur l’existence ou non des boucles dans le réseau et d’autres part sur le nombre de couches, celles-ci pouvant-être cachées ou non et les connexions entre couches simples ou non. Certaines classes de réseaux sont complétées par des exemples connus de réseaux de neurones, ceux-ci seront étudiés dans la suite du chapitre.
Principaux types de réseaux de neurones
Dans cette section, nous donnons un survols sur les diérents réseaux de neurones tels que,les Adaline et Madaline, le Perceptron multi-couchesles, les réseaux de Hopeld et les réseaux de Kohonen
Adaline et Madaline
Proposés par B. Widrow en 1960, les modèles de réseaux de neurones adaline (ADAptive Llnear NEuron) et madaline (multi-adaline) sont des réseaux à deux couches, de structure ana17 Classication des types de réseaux de neurones selon leur topologie. logue au perceptron, ayant respectivement un ou plusieurs neurones sur la deuxième couche (couche de sortie), un réseau adaline est proposé à la gure 1.4. Contrairement au perceptron qui délivre un signal binaire en sortie et pour lequel la correction d’erreur se fait par comparaison entre sorties, obtenue et voulue, binaires, l’adaline et le madaline comparent des sorties analogues, ce qui ane beaucoup la correction des poids.
|
Table des matières
Table des gures
Liste des abréviations
Introduction générale
1 Réseaux de neurones articiels et apprentissage
Introduction
1.1 De neurone biologique vers le neurone formel
1.2 Topologies des principaux types des réseaux de neurones
1.2.1 Topologie des réseaux de neurones
1.2.2 Principaux types de réseaux de neurones
1.2.2.1 Adaline et Madaline
1.2.2.2 Perceptron multi-couches
1.2.2.3 Réseau de Hopeld
1.2.2.4 Réseau de Kohonen
1.3 Propriété fondamentale du Perceptron multi-couches
1.3.0.5 Approximation universelle
1.3.0.6 Parcimonie
1.3.0.7 De l’approximation de fonction à la modélisation statistique
1.4 Apprentissage de Perceptron multi-couches
1.4.1 Fonction de coût
1.4.2 Algorithme d’apprentissage
1.4.2.1 Rétro-propagation du gradient (back-propagation)
1.4.3 Surajustement
Conclusion
2 Apprentissage statistique
Introduction
2.1 Apprentissage supervisé et non supervisé
2.2 Régression et classication
2.3 Paradigme d’apprentissage supervisé
2.4 Performance de généralisation d’un modèle
2.5 Sur-ajustement et compromis Biais/Variance
2.6 Réduction des risques et choix du modèle
2.6.1 Sélection du modèle
2.6.1.1 sélection des variables
2.6.1.2 Validation croisée
2.6.1.3 Régularisation
2.6.1.3.1 arrêt prématuré (ou early-stopping)
2.6.1.3.2 modération des poids (ou weight decay)
2.6.2 Procédure standarde de conception d’un modèle
Conclusion
3 Sélection et Estimation des performances du modèle neuronale
Introduction
3.1 Détermination du nombre de neurones cachés d’un réseau de neurones par validation croisée .
3.2 Estimation des performances d’un modèle Méthode du test croisé
3.3 Implémentation de la méthode de test croisé pour le problème de classication
Iris Fisher
3.3.1 Description de la base des données
3.3.2 Conception du modèle
3.3.3 Normalisation et pré-traitement des données
3.3.4 Implémentations et résultats numériques
3.3.4.1 Apprentissage sans régularisation
3.3.4.2 Apprentissage avec régularisation
3.3.4.3 Résultats obtenus en testant le modèle sélectionné
Conclusion
4 Système de reconnaissance automatique du locuteur théorie et application
Introduction
4.1 La reconnaissance du locuteur théorie et principes
4.1.1 Introduction à la reconnaissance automatique du locuteur
4.1.1.1 Identication et vérication du locuteur
4.1.1.2 Mode dépendant et indépendant du texte
4.1.1.3 Sources d’erreurs
4.1.1.4 Système de reconnaissance automatique du locuteur
4.1.2 Analyse acoustique du signal de parole
4.1.2.1 Production et perception du signal vocal
4.1.2.2 Coecients cepstraux
4.1.3 Modélisation des locuteurs
4.1.3.1 Approche vectorielle
4.1.3.2 Approche statistique
4.1.3.3 Approche connexionniste
4.1.3.4 Approche relative
4.1.4 Décision et mesure des performances
4.2 Reconnaissance du locuteur par les réseaux de neurones, protocole expérimental et résultats
4.2.1 LPCC ou Linear Prediction Cepstral Coecients
4.2.2 Description de la base des données
4.2.3 Paramétrisation des données
4.2.4 Prédiction par PMC
4.2.5 Implémentations du test croisé et quelques résultats numériques
4.2.5.1 Apprentissage sans régularisation
4.2.5.2 Apprentissage avec régularisation
4.2.5.3 Commentaires
Conclusion
Conclusion et Perspectives
Bibliographie
Télécharger le rapport complet