Réseaux de neurones artificielle

Dificultés d’optimisation paramétrique d’un classifieur neuronal

introduction

Il y’a un grand nombre d’articles dans la littérature consacrée à l’analyse et /ou l’utilisation de réseaux de neurones artificiels (RNA). Les RNAs ont connus un grand succès dans le domaine de la reconnaissance des formes et de traitement du signal. Cependant, un problème majeur concernant l’utilisation des réseaux de neurones dans la pratique reste comme un défi. Ce problème est lié à la construction correcte des réseaux de neurones adaptés à un problème spécifique. Ceci est considéré comme une tâche extrêmement importante pour atteindre le succès dans une application qui utilise les RNAs.

Dans ce chapitre, nous présentons quelques notions de bases sur les réseaux de neurones artificiel en particulier le Perceptron Multi-couches Puis, nous présentons la phase d’apprentissage d’un réseau de neurones. Nous nous intéresserons par la suite au problème d’ajustement paramétrique (PAP) des RNAs. Ce chapitre sera terminé par une présentation des quelque travaux qui utilisent les métaheuristiques pour ajuster les paramètres d’un RNA.

Historique

En 1943, Mac Culloch et Pitts ont proposé le premier modèle de neurone biologique (Dav1993) [26]. Ce dernier, appelé aussi neurone à seuil, a été inspiré des récentes découvertes en biologie. Ce sont des neurones logiques (0 ou 1). Ces deux physiciens ont montré que les neurones formels peuvent réaliser des fonctions logiques.
En 1949, le psychologue Donald Hebb a introduit le terme connexionnisme pour parler des modèles massivement parallèles et connectés . Il a proposé de nombreuses règles de mise à jour des poids dont la plus connue à cette époque est la « règle de Hebb » [26].
En 1958, le psychologue Frank Rosenblatt a développé le modèle du perceptron [27].Il s’agit d’un réseau de neurones, capable d’apprendre à diérencier des formes simples et à calculer certaines fonctions logiques. Il est inspiré du système visuel. Il a réussi à l’appliquer pour la reconnaissance des formes.
Au début des années 60, les travaux de Rosenblatt ont vécu un grand intérêt dans le milieu scientifique. Mais en 1969, deux scientifiques américains appelés Minsky et Papert [26] ont publié un livre dans lequel ont démontré les limites du perceptron proposé par Rosenblatt. En particulier, son incapacité réside à la résolution des problèmes non linéaires.

Les travaux se sont ralentis considérablement jusqu’aux années 80. En 1982, Hopfield a fini par démontrer l’intérêt des réseaux entièrement connectés.
Parallèlement, Werbos a conçu un mécanisme d’apprentissage pour les réseaux multicouches de type perceptron : la rétropropagation (Back-Propagation). Cet algorithme qui permet de propager l’erreur vers les couches cachées sera popularisé en 1986 dans un livre « Parallel Distributed Processing » par Rumelhart et al. [28].

Réseaux de neurones artificielle

Définition

Les réseaux de neurones artificiels (RNA) sont des processeurs élémentaires fortement connectés fonctionnant en parallèle. Chaque processeur élémentaire calcule une sortie unique sur la base des informations qu’il reçoit [Dre2002].

D’un point de vue modélisation mathématique, on peut définir un réseau de neurone artificiel par les quatre éléments suivants :
– La nature des entrées et des sorties : Elles peuvent être :« Binaire : (-1 ;+1) (0,1) ou
Réelles »
– La fonction d’entrée totale qui définit le prétraitement eectué sur les entrées : Elle peut être : « Booléenne ,Linaire ,Ane, Polynomiale de degré supérieur à deux »
– La fonction d’activation du neurone qui définit son état en fonction de son entrée totale . Il existe plusieurs types des fonctions d’activations tel qu’il est montrer dans les figures 2.1, 2.2, 2.3, 2.4.
– La fonction de sortie qui calcule la sortie du réseau en fonction de son état d’activation.
On distingue principalement deux types de réseaux de neurones : Les réseaux non
bouclés et les réseaux bouclés.

Réseaux de neurones bouclé (ou récurrent)

Un réseau de neurones bouclé est schématisé par un graphe des connexions qui est cyclique. Lorsqu’on se déplace dans le réseau en suivant le sens des connexions, il est possible de trouver au moins un chemin qui revient à son point de départ (un tel chemin est désigné sous le terme de « cycle »).
Ainsi, un retard entier multiple de l’unité de temps choisie est attaché à chaque connexion d’un réseau de neurones bouclé (ou à chaque arrête de son graphe). Une grandeur à un instant donné ne peut pas être fonction de sa propre valeur au même instant.
Tout cycle du graphe du réseau doit avoir un retard non nul. La figure 3.1 représente un exemple de réseau de neurones bouclé. Les chires dans les carrés indiquent le retard attaché à chaque connexion, exprimé en multiple de l’unité de temps.
Ce réseau contient un cycle, qui part du neurone 3 et revient à celui-ci en passant par le neurone 4. La connexion de 4 vers 3 ayant un retard d’une unité de temps.

Réseaux de neurones non bouclé

Un réseau de neurones non bouclé est représenté graphiquement par un ensemble de neurones connectés entre eux, l’information circulant des entrées vers les sorties sans « retour en arrière » [29]. On constate que le graphe d’un réseau non bouclé est acyclique comme le montre la figure 2.6.
En eet, si on se déplace dans ce type de réseau à partir d’un neurone quelconque en suivant les connexions, on ne peut pas revenir au neurone de départ.

RÉSEAUX DE NEURONES ARTIFICIELLE 

Les réseaux de neurones non bouclés à couches dont les neurones cachés ont une fonction d’activation sigmoïde, sont souvent appelés des perceptrons multicouche (ou MLP pour Multi-Layer Perceptron) [30].

Perceptron Multicouches (PMC)

Architecture

Le perceptron multicouche (PMC) est un réseau composé de couches successives. Une couche d’entrée lit les signaux entrant, un neurone par entrée xj , une couche en sortie fournit la réponse du système. Selon les auteurs, la couche d’entrée qui n’introduit aucune modification n’est pas comptabilisée. Une ou plusieurs couches cachées participent au transfert. Un neurone d’une couche cachée est connecté en entrée à chacun des neurones de la couche précédente et en sortie à chaque neurone de la couche suivante. cachée et une couche de sortie. .

PERCEPTRON MULTICOUCHES (PMC)

Fonction de transfert

– Les neurones d’entrées n’ont pas de fonctions de transferts, leurs états étant imposés par l’extérieurs.
– Les neurones cachées ont des fonctions de transferts sigmoïdes.
– Les neurones de sorties, suivant les applications , ont des fonctions de transfert : sigmoïdes, linéaires, exponentielles ou autres

Apprentissage

On distingue deux types d’apprentissage : Un apprentissage « supervisé » et un apprentissage « non supervisé ».
L’apprentissage supervisé
L’apprentissage « supervisé » pour les réseaux de neurones, consiste à calculer les coe cients synaptiques de telle manière que les sorties du réseau soient, pour les exemples utilisés lors de l’apprentissage, aussi proches que possibles des sorties « désirées ». Ils peuvent être la classe d’appartenance de :
– La forme que l’on veut classer,
– La valeur de la fonction que l’on veut approcher,
– La sortie du processus que l’on veut modéliser,
– La sortie souhaitée du processus à commander.

On connaît donc, en tout point ou seulement en quelques points les valeurs que doit avoir la sortie du réseau en fonction des entrées correspondantes : C’est en ce sens que l’apprentissage est « supervisé ». Cela signifie qu’un « professeur » peut fournir au réseau des « exemples » de ce que celui-ci doit faire. Ce type d’apprentissage sera adopté par la suite dans notre algorithme d’optimisation.

La plupart des algorithmes d’apprentissage des réseaux de neurones formels sont des algorithmes d’optimisation : Ils cherchent à minimiser par des méthodes d’optimisation non linéaire une fonction coût qui constitue une mesure de l’écart entre les réponses réelles du réseau et ses réponses désirées.

Cette optimisation se fait de manière itérative, en modifiant les poids en fonction du gradient de la fonction coût : Le gradient est estimé par une méthode spécifique aux réseaux de neurones, dite méthode de rétropropagation, puis il est utilisé par l’algorithme d’optimisation proprement dit, les poids sont initialisés aléatoirement avant l’apprentissage, puis modifiés itérativement jusqu’à obtention d’un compromis satisfaisant entre la précision de l’approximation sur l’ensemble d’apprentissage et la précision de l’approximation sur un ensemble de validation disjoint du précédent.

L’apprentissage non supervisé

Un réseau de neurones non bouclé peut être également utilisé dans un but de visualiser ou d’analyser des données : On dispose d’un ensemble de données, représentées par des vecteurs de grande dimension et l’on cherche à les regrouper selon des critères de ressemblance qui sont inconnus à priori. Ce type de tâches est connu en statistique sous le nom de méthodes « d’agrégation ».

PERCEPTRON MULTICOUCHES (PMC)

On peut utiliser les réseaux de neurones non bouclés pour réaliser une tâche assez voisine : A partir des données décrites par des vecteurs de grande dimension, on cherche à trouver une représentation de ces données dans un espace de dimension beaucoup plus faible (typiquement de dimension 2) tout en conservant les « proximités » ou « ressemblances » entre ces derniers. Il n’y a pas là, donc de « professeur », puisque c’est au réseau de découvrir les ressemblances entre les éléments de la base de données, et de les traduire par une proximité dans la « carte » de dimension 2 qu’il doit produire.

Calcul de l’erreur

Notation et définitions

Si l’on considère un réseau de neurones numérotés de 0 à n ? 1 (soit v = n ? 1) , on définit le vecteur colonne des états, le vecteur potentiels V et la matrice synaptique W. L’état du réseau est défini par le vecteur d’états. Le coecient wijest la valeur du poids synaptique associé à la connexion qui lie la sortie du neurone j à une entrée du neurone i.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction générale
1 Généralités sur les métaheuristiques
1 Introduction
2 Optimisation
2.1 Les diérents problèmes d’optimisation
2.2 Classification des méthodes d’optimisation
3 Principes du métaheuristique
4 Propriétés des métaheuristiques
5 Principales métaheuristiques
5.1 Métaheuristiques de trajectoir
5.2 Métaheuristiques de population
6 Conclusion
2 Dicultés d’optimisation paramétrique d’un classifieur neuronal
1 introduction
2 Historique
3 Réseaux de neurones artificielle 
3.1 Définition
3.2 Réseaux de neurones bouclé (ou récurrent)
3.3 Réseaux de neurones non bouclé
4 Perceptron Multicouches (PMC)
4.1 Architecture
4.2 Fonction de transfert
4.3 Apprentissage
4.4 Calcul de l’erreur
4.5 Algorithmes d’optimisation
5 Problème d’ajustement paramétrique (PAP) des RNAs 
5.1 Définition de problème
5.2 Choix des paramètres
5.3 Méthodes utilisées pour la résolution du PAP
5.4 Travaux connexes
5.5 conclusion
3 Implémentation de l’algorithme OP-RNA 
1 Introduction
2 Description du jeu de données
2.1 Description de la base de données de diabète
2.2 Description de la base de données du Troubles hépatiques
2.3 Description de la base de données d’Appendicite
3 Environnement de développement
4 Critères d’évaluation 
5 Le modèle OP-RNA
5.1 Expérimentation1 (construction de notre classifieur neuronal)
5.2 Expérimentation2 (Amélioration par métaheuristique
6 Aperçue sur l’application
7 Etude comparative
7.1 Comparaison des résultats
7.2 Comparaison avec les résultats de la littérature
8 Conclusion 
Conclusion générale 
Bibliographie

Réseaux de neurones artificielleTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *