Réseaux neuronaux Apprentissage non supervisé + _ _

publicité
Introduction
• Objectif commun : génération d’une taxonomie
des données sans connaissances préalable
• Utilisation :
Réseaux neuronaux
Apprentissage non supervisé
–
–
–
–
–
Jerzy Korczak, LSIIT, ULP
email : [email protected]
J.Korczak, ULP
1
Clustering : groupement, classification des données
Quantisation de vecteurs : discrétisation de l’espace
Réduction de dimension : projection de caractéristiques
Prétraitement des données
Extraction de traits caractéristiques
J.Korczak, ULP
2
Méthodes neuronales non supervisées
Méthodes neuronales non supervisées
• Apprentissage compétitif
Règle : «winner-take-all»
• Cartes auto-organisatrices de Kohonen
– réseau de connexions de dimensionnalité fixé (grille 2D)
• projection de l’espace des données vers la grille 2D
• Gaz neuronal croissant
– croissance du réseau
• neurones ajoutés là où l’erreur du réseau est localement élevée
J.Korczak, ULP
3
Cartes auto-organisatrices de Kohonen
J.Korczak, ULP
4
Cartes de Kohonen : «chapeau mexicain»
Inspiration : … les neurones d’une zone du cerveau se
projettent dans une autre zone, en conservant les
relations de voisinage.
Principe d’apprentissage :
Si le neurone reçoit un potentiel d’action par sa
connexion et qu’il s’active, il y a renforcement de cette
connexion ; sinon le poids de cette connexion est
diminué.
Les poids sont déterminés en fonction de la distance entre les neurones
concernés selon une fonction «chapeau mexicain».
Interaction
Dans une zone latérale proche du
neurone, les neurones qui lui sont
connectés ont une action excitatrice
+
action inhibitrice
_
_
Chaque neurone de la carte de Kohonen est relié à tous les
neurones de la carte.
Mécanisme d’interaction latérale : «chapeau mexicain»
J.Korczak, ULP
Il vaut mieux choisir ce voisinage assez large au début de l’apprentissage
pour le rétrécir par la suite (k(t) : fonction décroissante linéaire).
5
J.Korczak, ULP
6
1
Exemple : Kohonen.exe
Cartes auto-organisatrices de Kohonen : Algorithme
1.
2.
3.
4.
Initialisation aléatoire des poids des connexions de N entrées
vers les M sorties.
Initialisation de R (le rayon de voisinage).
Présenter au réseau une nouvelle entrée.
Calculer la distance entre le neurone j de sortie et le neurone i
d’entrée pour tout j :
dj = Σ (xi(t) – wij(t))2
avec xi(t) l’entrée du neurone, et wij(t) le poids de la connexion
5.
6.
7.
Sélection le neurone j* de sortie de distance minimale.
Mettre à jour les poids des connexions du neurone j* avec ses
voisins situés dans un rayon R : wij(t+1)=wij(t)) +η(t)(xi(t)– wij(t))
limt->oo η(t) =0
Si η(t)>0, alors diminuer le rayon R et retourner en 3.
Sinon l’apprentissage est terminé.
J.Korczak, ULP
7
J.Korczak, ULP
8
Cartes auto-organisatrices de Kohonen
Carte de 10*10 neurones
J.Korczak, ULP
GND :
9
J.Korczak, ULP
10
Apprentissage compétitif doux
Cartes auto organisatrices
Apprentissage sans dimensionnalité de réseau imposé
(ang. Soft Competitive Learning)
Quelques méthodes :
• Neural Gas
• Competitive Hebbian Learning
• Neural Gas plus Competitive Hebbian Learning
• Growing Neural Gas
J.Korczak, ULP
11
J.Korczak, ULP
12
2
Neural Gas
Neural Gas : Algorithme
[Martinetz, Schulten, 1991]
• NG ordonne les neurones du réseau en fonction de la
distance de leur vecteur de référence avec l’exemple
présenté.
1.
2.
3.
• Les neurones les plus proches de l’exemple sont modifiés
pour se rapprocher de l’exemple.
4.
• Le nombre de neurones modifiés ainsi que l’importance de
cette modification diminuent avec le temps.
5.
6.
• Les neurones ne sont pas interconnectés entre eux.
J.Korczak, ULP
Competitive Hebbian Learning
Initialisation des N neurones dont les vecteurs de référence sont
choisis aléatoirement parmi les données; A ={c1, c2,…, cN}, t=0
Choix d’un exemple ξ aléatoirement
Ordonner les neurones en fonction de leur distance par rapport à
ξ : (i0, i1,…, iN-1), ki(ξ,A).
Modifier les vecteurs de référence de neurones selon :
∆wi =ε(t)*hλ *ki(ξ,A)) * (ξ -wi) avec hλ(k) =exp (-k/λ(t))
et λ(t) et ε(t) qui diminuent dans le temps
Incrémenter le compteur de temps t=t+1
Si t<tmax reprendre à l’étape 2.
Exemples
13
[Martinetz 1993]
J.Korczak, ULP
Growing Neural Gas
14
[Fritzke, 1994]
• Cette méthode est généralement utilisée avec d’autres,
par ex. Neural Gas plus Competitive Hebbian Learning
• Dans cette variante, le nombre de neurones est augmenté
durant l’apprentissage.
• Elle ne modifie pas les vecteurs de référence des
neurones mais génère les connexions entre les
neurones.
• Les neurones sont connectés.
• A chaque présentation d’un exemple, une connexion
entre les deux neurones les plus proches de celui-ci est
éventuellement ajoutée.
J.Korczak, ULP
15
J.Korczak, ULP
16
17
J.Korczak, ULP
18
Growing Neural Gas : Algorithme
1. Initialisation de 2 neurones dont les vecteurs de référence sont
choisis aléatoirement parmi les données; A ={c1, c2}, t=0. Initialisation
de l’ensemble des connexions C.
2. Choix d’un exemple ξ aléatoirement.
3. Déterminer les deux neurones s1 et s2 les plus proches de ξ.
4. Rajouter une connexions entre s1 et s2 . Mettre son âge à 0.
C = C U {(s1,s2 )}.age(s1,s2) = 0
5. Augmenter l’erreur cumulée du neurone : ∆Es1 = II ξ − wsiII2.
6. Modifier les vecteurs de référence de neurones du neurone vainqueur
et de ses voisins topologiques directs :
∆wsi = εb*(ξ
ξ -wsi) , ∆wi = εn*(ξ
ξ -w n)
7. Incrémenter l’âge des connections de si
8. Supprimer les connexions d’âge supérieur à amax et supprimer les
neurones qui n’ont plus de connexions.
9. Si le nombre d’exemples présentés est un multiple de l, ajouter un
neurone entre celui dont l’erreur cumulée est la plus grande et son
voisin d’erreur cumulée la plus importante. Diminuer l’erreur cumulée.
10.Si le critère d’arrêt n’est pas satisfait, reprendre à l’étape 2.
J.Korczak, ULP
3
Couverture de la distribution des données
Gaz neuronal croissant : exemple
Carte de Kohonen
Gaz de 100 neurones max.
J.Korczak, ULP
GND :
19
Growing Neural Gas
J.Korczak, ULP
21
Applications : Découverte de concepts à partir d’images [LSIIT-AFD]
J.Korczak, ULP
20
Images de télédétection
•
J.Korczak, ULP
Gaz Neuronal Croissant
23
Satellite SPOT
– résolution de 20m * 20m en mode MultiSpectral
• B1 : 0.50 à 0.59 ηm
• B2 : 0.61 à 0.68 ηm
• B3 : 0,79 à 0.89 ηm
– triplet de valeurs
entre 0 et 255
– dimensions :
3000x3000 pixels
- résolution de 1,3m*1,3m
J.Korczak, ULP
22
Réflectance en fonction de la longueur d’onde
J.Korczak, ULP
24
4
Agrégation
Segmentation d’images de télédétection
– Résolution de l’image déterminée par les capteurs des
satellites
• insuffisante pour certaines applications
• pixels mixtes
– Utilisation des informations spatiales des images
• nécessaire pour décrire certains objets
• permet d’associer une sémantique à des groupes de
pixels mixtes
– Données multi-sources
J.Korczak, ULP
25
Résultats : Robertsau 1996
J.Korczak, ULP
26
Fouille d’images IRMf
Rayon d’agrégation 2, rayon d’étude de voisinage 1, 20 classes
Images 3D prisent dans le temps
[http://alsace.u-strasbg.fr/ipb/
Exemple : Une série d’IRMf
permettant de voir les zones
réagissant à un stimulant avec leur
niveau d’intensité par rapport à
leurs emplacements au sein du
cerveau.
Classification étape 9
J.Korczak, ULP
Segmentation étape 9
27
J.Korczak, ULP
28
Adaptations de GNC aux données
IRMf
Réduction de l’ensemble des donné
données : Sélection de zones d’intérêt
Cure de Jouvence : Empêcher la destruction d'un neurone pertinant
Inertie d'un neurone : Limiter les mouvements d'un neurone pertinant
J.Korczak, ULP
29
J.Korczak, ULP
30
5
Classifications
Exemple de classe relevant d’une activation de type bloc
J.Korczak, ULP
31
J.Korczak, ULP
Comparaison avec SPM
32
Quelques références
Equipe Apprentissage et Fouille de Données
http://lsiit.u-strasbg.fr/afd
All seven parts of the FAQ can be downloaded from either of the following
URLS:
ftp://ftp.sas.com/pub/neural/FAQ.html.zip
ftp://ftp.sas.com/pub/neural/FAQ.txt.zip
Usenet newsgroup comp.ai.neural-nets.
Part 1: Introduction
Part
Part
Part
Part
Part
Part
J.Korczak, ULP
33
2:
3:
4:
5:
6:
7:
J.Korczak, ULP
Learning
Generalization
Books, data, etc.
Free software
Commercial software
Hardware and miscellaneous
34
6
Téléchargement