View
219
Download
0
Category
Preview:
Citation preview
Introduction aux Réseaux de Neurones
>
Philippe JAUFFRETLaboratoire des Systèmes d ’Information ChimiqueUMR 5076 du CNRS - Montpellier<pj@chimie.u-strasbg.fr>
28/12/2002 41 2
sommaire
QUITTER><
• Neurones biologiques et artificiels• évolution du domaine• perceptrons - application au test de polluants• les réseaux multi-niveaux• la rétropropagation• les cartes de Kohonen - application à la classification automatique des réactions• avantages et limites des RN
28/12/2002 41 3
définitions
QUITTER><
•Les réseaux de neurones (artificiels) sont des programmesinformatiques fondés sur un modèle simplifié du cerveau.
•Ils tentent de reproduire son comportement logique en mettant enœuvre un ensemble d’entités inspirées des neurones biologiques.
•Un réseau de neurones est un exemple de « modèle connexionniste »
•Un réseau de neurones peut être « entraîné » et apprendre à résoudreun problème donné
28/12/2002 41 4
Le neurone biologique
QUITTER><
noyau
dendrites
synapses
axone
Cerveau humain :~1010 neurones~104 connexions/neurone
Σ des signaux d ’entrée
Signalde sortie
28/12/2002 41 5
apprentissage biologique
QUITTER><
Chimiquement très complexepas encore entièrement compris
Logiquement assez simple :• renforcement des poids synaptiques encas de stimuli similaires répétés• affaiblissement progressif en cas de non-stimulation (oubli ?)
28/12/2002 41 6
Le neurone artificiel
QUITTER><
ΣWiSi ≥ σ ?
W1
W2
W3
I1
I2
I3
Signalde sortie
Sortie ==0 (-1) si ΣWiSi < σ
≠0 si ΣWiSi ≥ σ{
28/12/2002 41 7
Fonctions d ’un neurone
QUITTER><
•Un neurone possède une ou plusieursconnexions entrantes, à chacuned ’elles est associé un poid
•Si la somme pondérée des entrées est inférieure à un seuil, le neuronereste inactif
•Si cette somme dépasse le seuil, leneurone devient actif et émet un signalavant de retourner au repos
28/12/2002 41 8
Apprentissage dans un réseau de neurones
QUITTER><
Il consiste à ajuster progressivementles poids synaptiques jusqu ’à ce que:
• soit les réponses soient conformes à ce que l ’on attend sur l ’échantillond ’entraînement (apprentissagesupervisé)
• soit le réseau soit stabilisé(apprentissage non supervisé)
28/12/2002 41 9
Un peu d ’histoire
QUITTER><
Années 40 : fondements théoriquesW.S. McCullogh & W. Pitts « A logical calculus of the ideas imminent in nervous activity », Bull. Math. Biophys., 1943, (5), 115.W. Pitts & W.S. McCullogh « How we know universals: the perception of auditory and visual forms », Bull. Math. Biophys., 1947, (9), 127.D.O. Hebb « The organization of behaviour », Wiley, New-York, 1949.
Années 60 : premiers pas - le perceptronF. Rosenblatt « Principles of neurodynamics » Spartan books, New-York, 1960.M. Minski & S. Papert « Perceptrons », MIT Press, Cambridge 1969.
Années 70-80 : retombée de l’intérêt pour le domaineT. Kohonen « Correlation matrix memories », IEEE Trans. On Comput., 1972, (C21), 353.J.J. Hopfield « Neural networks and physical systems with emergent collective computational abilities », Proc. Nat. Acad. Sci., 1982,(79), 2554.
Fin 80 : ré-émergence puis explosion du domaineD. Rumelhart & J. McClelland « Parallel and Distributed Processing » MIT Press, Cambridge, 1988
28/12/2002 41 10
Liste (non exhaustive) d ’applications en chimie
QUITTER><
• élucidation de spectres (corrélations spectres -> structures)
• détermination de la structure secondaire des protéines• diagnostics de dysfonctionement en contrôle de processus• études QSAR (entrées de types « tables de connectivités » ou propriétés physico-chimiques calculées)• classification de réactions
28/12/2002 41 11
Le plus simple des réseau de neurones: le perceptron
QUITTER><
Procédure d ’apprentissage:on soumet 1 à 1 des exemplespour lesquels on connaît la réponse souhaitéeSi la réponse est correcte, on continueSi la réponse est 1 (au lieu de 0), ondécrémente le poids des entrées activesSi la réponse est 0 (au lieu de 1), onaugmente le poids des entrées actives
ΣWiSi ≥ σ ?1 (oui)0 (non)
Fonction de seuil deHeaviside :
sortie
entréesσ
28/12/2002 41 12
Exemple: test de présencede polluants dans un gaz (I)
QUITTER><
Supposons que l ’on veuille tester la présence d ’éthylamine ou d ’oxydenitreux dans des échantillons contenant surtout de l ’air. On va se servir desspectres d ’absorption IR pour caractériser les gaz présentés
0
100
3500 6000
100
3500 600Spectre IR de C2H5NH2 Spectre IR de NO
D ’après H.M. Cartwright « Applications of Artificial Intelligence in Chemistry » Oxford University Press, 1993.
% absorbance
λ (cm-1)
28/12/2002 41 13
Exemple: test de présencede polluants dans un gaz (II)
QUITTER><
Pour utiliser le perceptron, on digitalise les spectres pour n ’en retenir qu ’unnb fini de mesures correspondant à des valeurs fixées de la longueur d ’onde
ΣWiSi ≥ σ ?
Absorbance (λ=600cm-1)Absorbance (λ=700cm-1)Absorbance λ(=800cm-1)Absorbance (λ=900cm-1)
Absorbance (λ=1000cm-1)Absorbance (λ=1100cm-1)Absorbance (λ=1200cm-1)Absorbance (λ=1300cm-1)Absorbance (λ=1400cm-1)Absorbance (λ=1500cm-1)
Si oui, alors présence deC2H5NH2 ou de NO
Après une période d ’apprentissage consistant à présenter au perceptrondes échantillons contenant parfois de l ’ethylamine ou du NO, le systèmeest mis en production et fonctionne, jusqu ’à ce que ...
28/12/2002 41 14
Exemple: test de présencede polluants dans un gaz (III)
QUITTER><
On introduit un échantillon contenant du Fréon. Le spectre IR du fréon est différent de ceux de l ’éthylamine et du NO, mais présente comme le premierune forte absorbance à 800 cm-1, et comme le second une forte absorbanceà 1300 cm-1
…Et le système conclue à tort à la présenced ’un des polluants recherchés !
Absorbance (%)
Longueurd ’onde (cm-1)
Spectre IR du Fréon
1300 800
28/12/2002 41 15
Pourquoi un perceptron ne peut résoudre ce type de problème?
QUITTER><
Le perceptron doit décider selon la valeur de w1s1 + w2s2
Un perceptron ne peut résoudre que des problèmes linéairement séparables
w1s1 + w2s2
(-,-) (-,1300)
(800,1300)(800,-)Pic 1
Pic 2
⇒ missionimpossible !
28/12/2002 41 16
La solution : les réseaux multi-niveaux
QUITTER><
1,5
0,51
1
1
1
1
-1
0,5
Pic à 800 ?
Pic à 1300 ?
0,5 Valeur du seuil pour une cellule 1 Valeur de sortie d ’une cellule
28/12/2002 41 17
les réseaux multi-niveauxterminologie
QUITTER><
28/12/2002 41 18
Plusieurs typesde fonctions de seuil
QUITTER><
sortie
entréesσ
sortie
entrées
sortie
entrées
Heaviside :• très simple• bien adaptée aux RN à 1 niveau(perceptron)• ne permettent pas l ’apprentissagepar rétro-propagation des erreurs
linéaire :• simple• bien adaptée aux RN à 1 niveau• permettent l ’apprentissage dansles réseaux multi-niveau• non dérivable en 2 points
sigmoïdale :• uniformément dérivable• la plus utilisée des fonctions de seuil• bien que calculs plus coûteux
f(x) = (1 + e-x-σ)-1
f(x) = max(0, min(1,x- σ))
f(x) =0 si x < σf(x) =1 si x ≥ σ
σ
σ
28/12/2002 41 19
Apprentissage parrétropropagation des erreurs(I)
QUITTER><
entréesSorties
observéesSorties
attendues
erreur
28/12/2002 41 20
Apprentissage parrétropropagation des erreurs(II)
QUITTER><
Contexte : réseaux multi-niveaux à propagation directe des signaux
Objectif : réduire la fonction d ’erreur
En = ½ Σ (ciblen,i - actueln,i)2
en modifiant prioritairement les poids des signaux d ’entréescontribuant le plus à l ’erreur.
Méthode : gradient (procédure itérative de moindres carrés) d ’abord sur le niveau de sortie, puis récursivement sur lesniveaux cachés.
Rmq 1: aucun rapport avec un processus biologiqueRmq 2: il existe de très nombreux modèles d ’apprentissagemais la rétropropagation est largement la plus répandue.
i
28/12/2002 41 21
Apprentissage parrétropropagation des erreurs(III)
QUITTER><
L ’apprentissage par rétropropagation peut être très coûteuxpour de gros réseaux
exemple de très gros réseau :H. Bohr & al. « A novel approach to prediction of the 3-dimensionalstructures of protein backbone by neural network », FEBS Lett., 1990, (261), 43.
Dimension du vecteur d ’entrée : 12202 niveaux cachés500.000 poids à ajuster
28/12/2002 41 22
Fiabilité ?Vérification par validation croisée
QUITTER><
Pb: comment savoir si la phase d ’apprentissage a produitun réseau fiable ?
• 1) Décomposer l ’échantillon d ’apprentissage en 2 tas :9/10 et 1/10. • 2) Entraîner le réseau avec le premier tas (9/10).• 3) Vérifier avec le 1/10 restant que le réseau donne les résultats attendus• 4) renouveller les étapes 1-3 avec d ’autres décompositions
28/12/2002 41 23
Autre type de réseau de neuronesLes cartes de Kohonen (SOM)
QUITTER><
Ces RN permettent de projeter sur un plan des données multi-dimensionnelles en préservant les relations topologiquesexistant entre ces données.
Applications : apprentissage non supervisée, clustering, réduction du nombre d ’attributs, etc.
28/12/2002 41 24
Architecture des SOM
QUITTER><
Vecteur d ’entrée (n)
Carte de Kohonen (mXm neurones)
Neurone (n-vecteur)
Poids de la composante i
28/12/2002 41 25
Principe de la phase d ’apprentissage dans les SOM (I)
QUITTER><
• Tous les vecteurs de poids sont initialisés aléatoirement.
• Quand un nouveau vecteur de données est introduit, il estcomparé à tous les vecteurs de la carte distance euclidienne : d(X,Ni) = Σ(Xi-Ni,j)2
• Les poids du neurone Ni le plus proche de X sont stimulés,de même que ceux des neurones au voisinage de Ni.
28/12/2002 41 26
Principe de la phase d ’apprentissage dans les SOM (II)
QUITTER><
L ’ajustement des poids d ’un neuroneest inversement proportionnel à la« distance » de ce neurone auneurone « choisi »
28/12/2002 41 27
Principe de la phase d ’apprentissage dans les SOM (III)
QUITTER><
Finalement, dans les réseaux « entraînés »,chaque vecteur est projeté dans le neurone« le plus ressemblant », et deux vecteurs« similaires » seront projetés dans desneurones proches.
28/12/2002 41 28
Exemple d ’application des SOM :classification des réactions organiques
QUITTER><
D ’après H. Satoh et al. « classification of organic reactions: Similarity of reactions based onchanges of the electronic features of oxygen atoms in the reaction sites » J.Chem.Inf.Comput.Sci.,1998 (38), 210.
Objectif : établir des corrélations entrela variation des propriétés électroniquesdes atomes d ’oxygène lors d ’une réactionet le « type » de cette réaction.Prouver ainsi qu ’une classificationautomatique des réactions est envisageable.
28/12/2002 41 29
Choix des attributsvecteur d ’entrée
QUITTER><
Les auteurs ont pris 131 réactions au hasard dans une BD.Pour chaque atome d ’oxygène présent dans un cœur de réaction,ils ont calculés par méthode empirique, la valeur de 6 paramètresphysico-chimiques :
- charge σ- charge π- électronégativité σ-résiduelle- électronégativité π-résiduelle- polarisabilité- pKa
Les vecteurs d ’entrée sont construit par la différence (produit -réactant) de ces 6 attributs.
Nb d ’étapes (« époques ») d ’apprentissage : 10.000carte 18x18 neurones
28/12/2002 41 30
Exemple de vecteur données
QUITTER><
charge σ -365 -391 -26charge π 0,00 0,00 0,00électronégativité σ-résiduelle 9,64 9,33 -0,31électronégativité π-résiduelle 3,91 3,18 -0,73polarisabilité 6,89 4,32 -2,57pKa 31,0 30,0 -1,0
O
O
H
O OH
δ
28/12/2002 41 31
Résultats
QUITTER><
Réduction et alkylationCassure d’époxides, d’éthers, de lactones et d’esters
Oxydation des alcools
Formation d’époxides, d’éthers, de lactones et d’esters
Rmq : les clusters apparaîssent continus si l’on forme un toreen repliant la carte pour fusionner ses bords horizontaux et sesbords verticaux
28/12/2002 41 32
Principaux avantages desréseaux de neurones (I)
QUITTER><
Réutilisabilité:Un réseau de neurones n ’est pasprogrammé pour une application maispour une classe de problèmes : aprèsune phase d ’apprentissage adéquate,il peut traiter de nombreuses tâches.
28/12/2002 41 33
Principaux avantages desréseaux de neurones (II)
QUITTER><
Tolérance de pannes :le dysfonctionnement d ’une faibleproportion des neurones n ’affecte pasprofondément le fonctionnement général (on parle de « dégradationdouce »)
28/12/2002 41 34
Principaux avantages desréseaux de neurones (III)
QUITTER><
robustesseLes couches cachées du réseau forment une représentation abstraitedes données (concepts), qui permettentde savoir catégoriser des données nontraitées lors de l ’apprentissage (nonprévues).
28/12/2002 41 35
Principaux avantages desréseaux de neurones (IV)
QUITTER><
parallélismeLes RN sont par essence des« machines parallèles » et peuvent doncbénéficier directement des architecturesmulti-processeurs (tous les neuronesd ’un même niveau sont indépendants)
28/12/2002 41 36
Principaux avantages desréseaux de neurones (V)
QUITTER><
« machine à découvrir les règles »Le fonctionnement des RN impliquequ ’ils identifient les relations entre lesdonnées soumises. On peut envisagerqu ’ils (re)découvrent empiriquementdes lois gouvernant les domainestraités.
28/12/2002 41 37
Principaux avantages desréseaux de neurones (VI)
QUITTER><
Logique floueLe traitement modal des données estcouvert implicitement par les RN
28/12/2002 41 38
Limites des réseaux de neurones (I)
QUITTER><
Choix des attributsCe problème n ’est évidemment passpécifique aux RN, mais il est clair qu ’ilfaut choisir soigneusement lareprésentation des données.Les attributs ne peuvent de plus qu ’êtrenumériques
28/12/2002 41 39
Limites des réseaux de neurones (II)
QUITTER><
Processus d ’apprentissage• Il peut être extrêmement long.• L ’apprentissage par rétro-propagation des erreurs peutconverger vers une solution sous-optimale.• Paralysie du réseau : les poids synaptiques deviennent si grandsque leur modification est inopérante sur le comportement desneurones (dépassement de la zone de variation de la sigmoïde)• Surspécification : lorsque l ’apprentissage est trop prolongé, le RNperd son pouvoir de généralisation. Il reconnaît les données del ’échantillon d ’apprentissage, mais plus de nouvelles données« similaires ».
28/12/2002 41 40
Limites des réseaux de neurones (III)
QUITTER><
Architecture du réseauLe nombre de nœuds dans les couches d ’entrée et
de sortie sont généralement fixés par l ’application,mais comment optimiser le nombre de niveaux cachéset le nombre de nœuds dans ces niveaux ?
28/12/2002 41 41
Limites des réseaux de neurones (IV)
QUITTER><
explicabilitéIl est quasi-impossible d ’expliquer de manière
compréhensible les résultats fournis par un RN.Un RN peut découvrir empiriquement des loiset les exploiter dans la résolution de problèmes,mais il ne peut formuler ces lois.
28/12/2002 41 42
Pour en savoir plus surles réseaux de neurones
• Une introduction (site commercial mais assez complet) : http://www.statsoftinc.com/textbook/stneunet.html
• une « bible » : S. Haykin « Neural Networks » , 2nd Edition, Prentice Hall, 1998.
• Un tutorial : http://www.gc.ssr.upm.es/inves/neural/ann1/anntutorial.html
• Source bibliographique (très exhaustive) : http://liinwww.ira.uka.de/bibliography/Neural/
Recommended