Modèle hybride algorithme génétique / réseaux de neurones artificiels 

Télécharger le fichier pdf d’un mémoire de fin d’études

OPTIMISATION DE LA GEOMETRIE MOLECULAIRE ET GENERATION DES DESCRIPTEURS MOLECULAIRES

Les structures des molécules ont été obtenues à l’aide du logiciel de modélisation moléculaire Hyperchem 7.5 [7], et les géométries finales à l’aide de la méthode semi empirique AM1 du même logiciel. Tous les calculs ont été menés dans le cadre du formalisme RHF sans interaction de configuration. Les structures moléculaires ont été optimisées à l’aide de l’algorithme Polak-Ribiere avec pour critère une racine du carré moyen du gradient égale à 0,001 kcal.mol-1. Les géométries obtenues ont été transférées dans les logiciels informatiques [7-8] utilisés pour le calcul de plus de 1700 descripteurs appartenant à 20 classes différentes.
Le logiciel Ecalc [9] est muni d’une interface graphique qui permet à l’utilisateur d’introduire les molécules, puis de calculer les indices électrotopologiques.

SELECTION D’UN SOUS-ENSEMBLE DE DESCRIPTEURS SIGNIFICATIFS

Des logiciels informatiques spécialisés permettent le calcul de plus de 3000 descripteurs moléculaires appartenant à différentes classes. Plutôt que de rechercher à expliquer la variable dépendante (propriété physique considérée) par tous les régresseurs (descripteurs moléculaires), on peut chercher seulement un ensemble réduit de régresseurs qui donne une reconstitution aussi satisfaisante de la variable à expliquer. Parmi les stratégies mises en œuvre pour la sélection d’un ensemble réduit de variables explicatives, on peut citer : les méthodes de pas à pas (méthode descendante; méthode ascendante, et méthode dite stepwise), ainsi que les algorithmes évolutifs et génétiques.
En général, la comparaison se fait à l’avantage des algorithmes génétiques (GA) que nous avons appliqué dans le présent travail, et que nous rappelons succintement

Principe

Dans la terminologie des algorithmes génétiques, le vecteur binaire I , appelé ∼ « chromosome », est un vecteur de dimension p où chaque position (un « gène ») correspond à une valeur (1 si elle figure dans le modèle, 0 sinon). Chaque chromosome représente un modèle basé sur un ensemble de variables explicatives.
On commence par définir le paramètre statistique à optimiser (par exemple maximiser Q2 en utilisant la validation croisée par « leave-one-out » ; cf. infra), avec la taille P de la population du modèle (par exemple, P = 100), et le nombre maximum de variables L permises pour le modèle (par exemple, L = 10) ; le minimum de variables permises est généralement supposé égal à 1. De plus, une probabilité de croisement pc (habituellement élevée, pc > 0,9), et une probabilité de mutation pM (habituellement faible, pM < 0,1) doivent être également définies.
Après définition des principaux paramètres, la mise en œuvre de l’algorithme génétique est démarrée, son évolution comprend trois étapes principales.

Initialisation aléatoire du modèle

La population est constituée au départ de modèles aléatoires avec des variables comprises entre 1 et L, puis les modèles sont ordonnés eu égard au paramètre statistique sélectionné – la qualité du modèle – (le meilleur modèle est en première position, le plus mauvais en position P) ;

Etape de croisement

A partir de la population, on sélectionne des paires de modèles (aléatoirement, ou avec une probabilité proportionnelle à leur qualité). Puis, pour chaque paire de modèles on conserve les caractéristiques communes, c’est-à-dire les variables exclues dans les 2 modèles restent exclues, et les variables intégrées dans les 2 modèles sont conservées. Pour les variables sélectionnées dans un modèle et éliminées dans l’autre, on en essaye un certain nombre au hasard que l’on compare à la probabilité de croisement pc : si le nombre aléatoire est inférieur à la probabilité de croisement, la variable exclue est intégrée au modèle et vice versa. Finalement, le paramètre statistique du nouveau modèle est calculé : si la valeur de ce paramètre est meilleure que la plus mauvaise pour la population, le modèle est intégré à la population, à la place correspondant à son rang ; dans la cas contraire, il n’est pas pris en compte. Cette procédure est répétée pour de nombreuses paires (100 fois par exemple).

Etape de mutation

Pour chaque modèle de la population (c’est-à-dire pour chaque chromosome) p nombres aléatoires sont éprouvés, et, un à la fois, chacun est comparé à la probabilité de mutation, pM, définie : chaque gène demeure inchangé si le nombre aléatoire correspondant excède la probabilité de mutation, dans le cas contraire, on le change de 0 à 1 ou vice versa. Les faibles valeurs de pM permettent uniquement peu de mutations, conduisant à de nouveaux chromosomes peu différents des chromosomes générateurs.
Après obtention du modèle transformé, on en calcule le paramètre statistique : si cette valeur est meilleure que la plus mauvaise de la population, le modèle est intégré à la population, à la place correspondant à son rang ; dans le cas contraire il n’est pas pris en compte.
Cette procédure est répétée pour tous les chromosomes, c’est-à-dire P fois.

Conditions d’arrêt

Les étapes 2 et 3 sont répétées jusqu’à la rencontre d’une condition d’arrêt (par exemple un nombre maximum d’itérations défini par l’utilisateur), ou qu’il est mis fin arbitrairement au processus.
Une caractéristique importante de la sélection d’un ensemble réduit de variables par algorithme génétique est qu’on n’obtient pas nécessairement un modèle unique, mais le résultat consiste habituellement en une population de modèles acceptables ; cette caractéristique, parfois considérée comme un désavantage, fournit une opportunité pour procéder à une évaluation des relations avec la réponse à différents points de vue.
Notons que le taille du modèle est fixée par la valeur optimale de la fonction FIT de KUBINYI [10], calculée selon : FIT  R 2 n – p-1 (1) (n p )2 1-R2;

Les différents types de réseaux de neurones

Plusieurs types de réseaux de neurones ont été développés qui ont des domaines d’application souvent très variés. Notamment quatre types de réseaux sont bien connus :
• Le réseau de Hopfield (et sa version incluant l’apprentissage, la machine de Boltzmann).
• Les cartes auto-organisatrices de Kohonen .
• Les réseaux à fonction radiale que l’on nomme aussi RBF (pour  » Radial Basic Functions « ).
• Les réseaux multicouches ou perceptron multicouches PMC
Le réseau de Hopfield [15] est un réseau avec des sorties binaires où tous les neurones sont interconnectés avec des poids symétriques. C’est-à-dire que le poids du neurone Ni au neurone Nj est égal au poids du neurone Nj au neurone Ni. Les poids sont donnés par l’utilisateur. Les poids et les états des neurones permettent de définir l’«énergie» du réseau.
C’est cette énergie que le réseau tente de minimiser pour trouver une solution. La machine de Boltzmann est en principe un réseau de Hopfield, mais qui permet l’apprentissage grâce à la minimisation de cette énergie.
Les cartes auto-organisatrices de Kohonen [16] sont utilisées pour faire des classifications automatiques des vecteurs d’entrées.
Les réseaux à fonction radiale sont des réseaux multicouches, à une couche cachée. Cependant, contrairement aux perceptrons multicouches, les fonctions de transfert de la couche cachée dépendent de la distance entre le vecteur d’entrée et le vecteur centre.
Les réseaux multicouches (PMC) sont les réseaux les plus puissants des réseaux de neurones qui utilisent l’apprentissage supervisé.

Les réseaux multicouches ou perceptron multicouches (PMC)

Les réseaux multicouches (PMC) (figure 3) se composent des entrées, une couche de sortie et zéro ou plusieurs couche cachées [14]. Les connexions sont permises seulement d’une couche inférieure (plus proche des entrées) vers une couche supérieure (plus proche de la couche de sortie). Il est aussi interdit d’avoir des connexions entre des neurones de la même couche.
Les entrées servent à distribuer les valeurs d’entrée aux neurones des couches supérieures, éventuellement multipliées ou modifiées d’une façon ou d’une autre.
La couche de sortie se compose normalement des neurones linéaires qui calculent seulement une somme pondérée de toutes ses entrées.
Les couches cachées contiennent des neurones avec des fonctions d’activation non linéaires, normalement la fonction sigmoïde.

L’apprentissage par rétro-propagation du gradient (Levenberg-Marquardt backpropagation)

L’algorithme d’apprentissage par rétro-propagation du gradient (figure 4) est un algorithme itératif qui a pour objectif de trouver le poids des connexions minimisant l’écart commis par le réseau sur l’ensemble d’apprentissage. Cette minimisation par une méthode du gradient conduit à l’algorithme d’apprentissage par rétro-propagation.
La procédure d’apprentissage se décompose en deux étapes. Pour commencer, les valeurs d’entrées sont présentées au réseau, qui propage ensuite ces valeurs jusqu’à la couche de sortie et donne ainsi la réponse au réseau. A la deuxième étape les bonnes sorties correspondantes sont présentées aux neurones de la couche de sortie qui calculent l’écart, modifient leurs poids et rétro-propagent l’erreur jusqu’aux entrées pour permettre aux neurones cachés de modifier leurs poids de la même façon. Le principe de modification des poids est normalement l’apprentissage de Widrow-Hoff.

Construction de la base de données
Le processus d’élaboration d’un réseau de neurones commence par la construction d’une base de données.
Afin de développer une application à base de réseaux de neurones, il est nécessaire de disposer de deux bases de données, une pour effectuer l’apprentissage et l’autre pour tester le réseau obtenu et déterminer ses performances. Pour cette raison nous avons partagé notre base des données (tableau I) aléatoirement en trois sous-ensembles comme suit :
– Un ensemble de 44 composés pour l’apprentissage du réseau de neurones.
– Un deuxième de 12composés pour la validation.
– Et un troisième de 12 composés choisis aléatoirement de l’ensemble d’apprentissage pour le test.
Généralement, les bases de données subissent un prétraitement qui consiste à effectuer une normalisation appropriée tenant compte de l’amplitude des valeurs acceptées par le réseau.
Les valeurs d’entrées et de sortie sont normalisées dans un intervalle spécifique afin de donner à chaque paramètre la même influence statistique. Les valeurs d’apprentissage et de test ont été normalisées dans la marge [- 1, 1], au moyen de l’équation xnorm = 2 × x j − xmin  -1 (5)
 xmax − xmin où xnorm est la valeur normalisée ; x j est la jième valeur ; xmax est la valeur maximale ;
x min est la valeur minimale
Définition de la structure du réseau
Nous avons retenu le Perceptron Multicouches comme base du modèle. Nous structurons ce réseau en précisant le nombre de couches et de neurones cachés pour que le réseau soit en mesure de reproduire ce qui est déterministe dans les données.
Nombre de couches et de neurones cachés
Mis à part les entrées et la couche de sortie, il faut décider du nombre de couches cachées. Sans couche cachée, le réseau n’offre que de faibles possibilités d’adaptation. Néanmoins, il a été démontré qu’un Perceptron Multicouches avec une seule couche cachée pourvue d’un nombre suffisant de neurones, peut approximer n’importe quelle fonction avec la précision souhaitée [19]. Chaque neurone peut prendre en compte des profils spécifiques de neurones d’entrée. Un nombre plus important permet donc de mieux « coller » aux données présentées mais diminue la capacité de généralisation du réseau. Il faut alors trouver le nombre adéquat de neurones cachés nécessaire pour obtenir une approximation satisfaisante.
Présentation de l’environnement utilisé
Dans cette optique, le logiciel MATLAB [20], qui contient un module consacré au développement de réseaux de neurones, a été retenu ; un PC Dell P4 avec une Ram de 512 et une vitesse de 3.4 GHZ a été utilisé.
Le réseau de neurones stocke l’information dans une chaîne d’interconnexions neuronales, en faisant appel à la notion de poids (poids entrée – couche cachée = IW -initial weights, poids couche cachée – sortie = LW-last weights).
Une capacité d’apprentissage est nécessaire pour ajuster les poids des réseaux de neurones pendant la phase d’apprentissage au cours de laquelle toutes les données sont présentées au RNA à plusieurs reprises.
Les fonctions sigmoïde de transfert, tangente hyperbolique et linéaire, ont été adoptées comme fonctions d’activation pour les couches cachée et de sortie.
modèle hybride algorithme génétique / réseaux de neurones artificiels
choix des paramètres statistiques
Les descripteurs choisi par algorithme génétique sont utilisés pour la configuration du réseau de neurones, qui est perfectionnée en phase d’apprentissage ; les paramètres de fonctionnement sont déterminés de façon à obtenir une bonne adéquation entre les valeurs simulées et les données d’apprentissage, combinée à une généralisation correcte de ces simulations.
Choix du nombre de couches cachées
Quelle que soit la problématique étudiée, l’utilisation d’une seule couche cachée permet d’obtenir de meilleures configurations des réseaux de neurones.
Choix du nombre d’itérations et de neurones dans la couche cachée
Le choix de ce nombre est très important. Au départ, on fixe un nombre de neurones (2 à 8) et on fait varier le nombre d’itérations pour calculer à chaque fois l’erreur quadratique moyenne EQM. Le nombre de neurones de la couche cachée ainsi que le nombre d’itérations et fixé par la valeur minimale de l’erreur quadratique moyenne EQM.
Le graphe EQM = f (nombre d’itérations) à balayage de nombres de neurones de la figure suivante permet de visualiser EQM min qui correspond à 250 comme nombre d’itérations et à 06 comme nombre de neurones de la couche cachée pour une meilleure configuration du réseau.
CONCLUSION GENERALE
Nous avons appliqué la méthodologie QSRR pour relier les indices de rétentions de composés de phénols etudiés , à des descripteurs moléculaires théoriques reflétant certaines particularités des molécules considérées.
Le mélange pris en compte comprend 56 composés substitué par des groupement alkyles.
Les modèles QSRR ont été établis en utilisant l’analyse de régression multilinéaire et /ou les réseaux de neurones standards à 3 couches (les entrées, une couche cachée et une couche de sortie), avec algorithme d’apprentissage par rétro- propagation du gradient (Levenberg- Marquard)).
Les 56 composés de base ont été éclatées aléatoirement en deux ensembles disjoints.
-un ensemble principal de 44 composés utilisés pour le calcul et, éventuellement, les essais du modèle ;
– un ensemble de 12 composés pour la prédiction externe.
La taille du modèle est fixée par la valeur optimale de la fonction FIT de KUBINYI. La sélection des variables explicatives a été réalisée par algorithme génétique, dans la version MOBYDIGS de TODESCHINI[27], en maximisant Q2L00.

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 rapport-gratuit.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 GENERALE 
PARTIE THEORIQUE
I – COLLECTE DES DONNEES 
II-OPTIMISATION DE LA GEOMETRIE MOLECULAIRE ET GENERATION DES DESCRIPTEURS MOLECULAIRES 
III- SELECTION D’UN SOUS-ENSEMBLE DE DESCRIPTEURS SIGNIFICATIFS 
III-1 Principe
III – 2 Initialisation aléatoire du modèle 
III – 3 Etape de croisement 
III – 4 Etape de mutation 
III – 5 Conditions d’arrêt 
IV – DEVELOPPEMENT DES MODELES 
IV – 1 La régression linéaire multiple (MLR) 
IV – 2 Les réseaux de neurones 
IV – 2 -1 Le neurone artificiel 
IV – 2 – 2. Propriétés des réseaux de neurones
IV – 2 -.3.Les différents types de réseaux de neurones 
IV – 2 -.3-1 Les réseaux multicouches ou perceptrons multicouches (PMC) 
IV – 2 -.4. Apprentissage 
IV – 2 -.4.- 1 L’apprentissage de Widrow-Hof 
IV – 2 -.4.- 2 L’apprentissage par rétro propagation du gradient (Levenberg-Marquardt backpropagation)
IV – 2 –5 Critères d’arrêt 
IV – 2 –6 Construction d’un modèle
I IV – 2 –6- 1 Construction de la base de données
IV – 2 –6- 2 Définition de la structure du réseau 
IV – 2 – 6 – 3 Nombre de couches et de neurones cachés 
IV – 2 – 6 – 4 Présentation de l’environnement utilisé 
V – PARAMETRES D’EVALUATION DE LA QUALITE DE L’AJUSTEMENT 
V – 1 Robustesse du modèle 
V – 2 Détection des observations aberrantes 
V – 3 Test de randomisation 
V – 4 Validation externe 
PARTIE EXPERIMENTALE INDICE DE RETENTION 
I – 1 Calcul du modèle 
I – 2 Analyse de régression 
I – 3 Autres diagnostics d’influence 
I – 4 Vérification de la qualité de l’ajustement 
I – 5 Validation externe 
II-1- Modèle hybride algorithme génétique / réseaux de neurones artificiels 
II – 1- 1 choix des paramètres statistiques 
II – 1- 2 Choix du nombre de couches cachées 
II – 1- 3 Choix du nombre d’itération et de neurones dans la couche cachée 
II – 1- 4 Choix de la fonction de transfert 
II – 1- 5 Choix des paramètres d’apprentissage 
II – 1- 6 Résultats et discussion 
II – 1- 6 – 1 Evaluation de la qualité de l’ajustement
II – 1- 6 – 2 Vitrification de la qualité de l’ajustement 
II-2 Validation externe 
IV – CONCLUSION GENERALE
ANNEXE

REFERENCES BIBLIOGRAPHIQUES 

Té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 *