Académique Documents
Professionnel Documents
Culture Documents
TR Ensta nnx9 PDF
TR Ensta nnx9 PDF
Cornuéjols 3
Introduction : Pourquoi les réseaux de neurones ? Introduction : Pourquoi les réseaux de neurones ?
Les réseaux de neurones A. Cornuéjols 4 Les réseaux de neurones A. Cornuéjols 5 Les réseaux de neurones A. Cornuéjols 6
2. Historique (très rapide) Les réseaux de neurones : Types de réseaux Modèles de base : le Perceptron Multi-Couches
! Prémisses
– Mc Culloch & Pitts (1943) : 1er modèle de neurone formel.
• Interconnecté à boucles (e.g. réseau de Hopfield) • Topologie typique
Rapport neurone et calcul logique : base de l’intelligence artificielle. ! Fonctionnement
– Règle de Hebb (1949) : apprentissage par renforcement du couplage synaptique en reconnaissance
! Premières réalisations ! Apprentissage ?
– ADALINE (Widrow-Hoff, 1960)
– PERCEPTRON (Rosenblatt, 1958-1962)
– Analyse de Minsky & Papert (1969)
! Nouveaux modèles
– Kohonen (apprentissage compétitif), ...
– Hopfield (1982) (réseau bouclé)
– Perceptron Multi-Couches (1985)
! Analyse et développements
– Théorie du contrôle, de la généralisation (Vapnik), ...
Les réseaux de neurones A. Cornuéjols 7 Les réseaux de neurones A. Cornuéjols 8 Les réseaux de neurones A. Cornuéjols 9
Le Perceptron Multi-Couches : propagation Le Perceptron Multi-Couches : exemple du XOR Exemple de réseau (simulateur JavaNNS)
• Pour chaque neurone :
# &
yl = g% " w jk ! j ( = g(ak )
$ j = 0, d '
! wjk : poids de la connexion de la cellule j à la cellule k
! ak : activation de la cellule k
! g : fonction d’
d’activation +1
Fonction à seuil
+1
1 Fonction à rampe
g(a) = !a
1+ e Sortie z i
+1 Fonction à base radiale
Activation ai
Les réseaux de neurones A. Cornuéjols 10 Les réseaux de neurones A. Cornuéjols 11 Les réseaux de neurones A. Cornuéjols 12
Les réseaux de neurones A. Cornuéjols 13 Les réseaux de neurones A. Cornuéjols 14 Les réseaux de neurones A. Cornuéjols 15
Objectif :
m
2 1. Présentation d’un exemple parmi l’ensemble d’apprentissage • Le problème :
w * = arg min
w
" [ y(x
l =1
l ; w) ! u(xl ) ] Séquentielle, aléatoire, en fonction d’un critère donné Détermination des responsabilités (“credit assignment problem”)
Quelle connexion est responsable, et de combien, de l’erreur E ?
! Algorithme (rétro-propagation de gradient) : descente de gradient 2. Calcul de l’état du réseau
Algorithme itératif : 3. Calcul de l’erreur = fct(sortie - sortie désirée) (e.g. = (yl - ul)2) • Principe :
w( t ) = w( t !1) ! " # Ew (t ) Calculer l’erreur sur une connexion en fonction de l’erreur sur la
4. Calcul des gradients
Cas hors-ligne m
couche suivante
1 #R (x ,w) Par l’algorithme de rétro-propagation de gradient
(gradient total) : wij (t) = wij (t ! 1)! " (t) $ E#wk
m k =1 ij 5. Modification des poids synaptiques • Deux étapes :
où : RE (x k ,w) = [t k ! f (xk ,w)]2 6. Critère d’arrêt 1. Evaluation des dérivées de l’erreur par rapport aux poids
Sur l’erreur. Nombre de présentation d’exemples, ... 2. Utilisation de ces dérivées pour calculer la modification de chaque poids
Cas en-ligne # RE (x k ,w)
wij (t) = wij (t ! 1)! " (t)
(gradient stochastique) : # wij 7. Retour en 1
Les réseaux de neurones A. Cornuéjols 16 Les réseaux de neurones A. Cornuéjols 17 Les réseaux de neurones A. Cornuéjols 18
Le PMC : passes avant et arrière (résumé) Le PMC : passes avant et arrière (résumé) PMC : La rétro-propagation de gradient
k
ys (x) = !w js yj !s = g' (as ) (us"ys ) • Efficacité en apprentissage
ys(x) j=1 ys(x)
! En O(w) pour chaque passe d’apprentissage, w = nb de poids
wis (t + 1) = wis (t) ! "(t)# sai
d
j ! Il faut typiquement plusieurs centaines de passes (voir plus loin)
wis
ai (x) = ! w x +w
j =1
j 0
wis ! j = g' (aj ) "w js !s
cellules s
y1 (x) yi(x) yi (x) = g(ai (x)) yi(x) ! Il faut typiquement recommencer plusieurs dizaines de fois un apprentissage en
. . . y1 (x) . . . couche
suivante
partant avec différentes initialisations des poids
k neurones sur la wei (t + 1) = wei (t) ! "(t )# iae
w0 w1 wd
couche cachée w0 w1 • Efficacité en reconnaissance
w2 w3 w2 w3 wd
Biais Biais
. . . . . .
x0 x1 x2 x3 xd x0 x1 x2 x3 xd ! Possibilité de temps réel
x x
Les réseaux de neurones A. Cornuéjols 22 Les réseaux de neurones A. Cornuéjols 23 Les réseaux de neurones A. Cornuéjols 24
Les réseaux de neurones A. Cornuéjols 25 Les réseaux de neurones A. Cornuéjols 26 Les réseaux de neurones A. Cornuéjols 27
PMC : Les applications Application aux codes postaux (Zip codes) La base de données
• Automatique : identification et contrôle de processus
• [Le Cun et al., 1989, ...] (ATT Bell Labs : très forte équipe)
(e.g. Commande de robot)
• ! 10000 exemples de chiffres manuscrits
• Traitement du signal (filtrage, compression de données, traitement de
la parole (Identification du locuteur, ...) • Segmentés et redimensionnés sur matrice 16 x 16
• Traitement d’images, reconnaissance des formes (reconnaissance de • Technique des poids partagés (“weight sharing”)
l’écriture manuscrite, Lecture automatique des codes postaux (Zip
codes, USA), ...) • Technique du optimal brain damage
• Prédiction (consommations d’eau, d’électricité, météorologie, bourse, • 99% de reconnaissance correcte (sur l’ensemble d’apprentissage)
...)
• 9% de rejet (pour reconnaissance humaine)
• Diagnostic (industrie, médecine, science, ...)
Les réseaux de neurones A. Cornuéjols 31 Les réseaux de neurones A. Cornuéjols 32 Les réseaux de neurones A. Cornuéjols 33
Application aux codes postaux (Zip codes) Les erreurs commises La régression
Les réseaux de neurones A. Cornuéjols 34 Les réseaux de neurones A. Cornuéjols 35 Les réseaux de neurones A. Cornuéjols 36
Prédire certaines
propriétés de molécules
(par exemple activité
biologique) à partir de
descriptions :
- chimiques
- géométriques
- éléctriques
Les réseaux de neurones A. Cornuéjols 37 Les réseaux de neurones A. Cornuéjols 38 Les réseaux de neurones A. Cornuéjols 39
Les réseaux de neurones A. Cornuéjols 40 Les réseaux de neurones A. Cornuéjols 41 Les réseaux de neurones A. Cornuéjols 42
PMC : La rétro-propagation de gradient (variantes) PMC : Problèmes de convergence PMC : Problèmes de convergence (gradients variables)
Les réseaux de neurones A. Cornuéjols 43 Les réseaux de neurones A. Cornuéjols 44 Les réseaux de neurones A. Cornuéjols 45
PMC : Mise en pratique (2) Généralisation : optimiser la structure d’un réseau Régularisation et PMC
! Vapnik (95) : The nature of statistical learning. Springer Verlag, 1995. Production d’une séquence en réponse à la reconnaissance d’une autre séquence.
• Propriétés • Méthodes
! Adaptation de la rétro-propagation (possible)
! Approximateur universel ([Hartman et al.,90], ...)
! Détermination de chaque type de paramètres par une méthode propre
! Mais non parcimonieux (explosion combinatoire avec la taille des entrées) (souvent plus efficace)
" Réservé aux problèmes de faible dimensionalité – Centres déterminés par méthodes de “clustering” (k-means, ...)
! Liens étroits avec les systèmes d’inférence floue et les réseaux neuro-flous – Diamètres déterminés par optimisation des taux de recouvrement (PPV, ...)
– Poids par technique d’optimisation linéaire (calcul de pseudo-inverse, ...)