Vous êtes sur la page 1sur 65

Plan

2- Domaines d’application
Classification
 Regroupement
Approximation Prédiction
Mémoire associative Optimisation
Commande robotique
3- Perceptron
 Historique
 Reconnaissance de formes
 Neurone formel de McCulloch & Pitts
 Perceptron de Rosenblatt
 Adaline et madaline de Widrow-Hoff
Cours #3 GPA-779
- 1 Application des réseaux de neurones et des systèmes experts
Découverte

 S. Haykin, Neural Networks: A


Comprehensive Foundation, Prentice
Hall, 2e édition, 1998 (1ère édition:
IEEE Press).
 Approche ingénierie
 Classique dans le domaine
 Meilleure introduction aux réseaux
de neurones artificiels, selon un
sondage.

Cours #3 GPA-779
- 2 Application des réseaux de neurones et des systèmes experts
Découverte
 Hervé ABDI, Les réseaux de neurones,
Presses Universitaires de Grenoble,
1994.
 Découvert à Paris, juillet 2002, 24€
 Approche pédagogique
 Nombreux exemples numériques
 Perceptron : Rosenblatt et multicouche,
MA, Hopfield
 Appendice: calcul matriciel
 Appendice: programmes MATLAB

Cours #3 GPA-779
- 3 Application des réseaux de neurones et des systèmes experts
Chapitre 2
Domaines d’application
Principaux domaines
d’application

 1. Classification
 2. Regroupement
 3. Approximation
 4. Prédiction
 5. Optimisation de
parcours
 6. Mémoire
associative
 7. Commande

Cours #3 GPA-779
- 5 Application des réseaux de neurones et des systèmes experts
2.1 Classification
Montrer par l’exemple à reconnaître les
catégories de formes présentées à
l’entrée du réseau
 Perceptron de Rosenblatt
 Réseau à rétro-propagation du gradient
d’erreur (perceptron multicouche)

Cours #3 GPA-779
- 6 Application des réseaux de neurones et des systèmes experts
 Reconnaissance de chiffres

Cours #3 GPA-779
- 7 Application des réseaux de neurones et des systèmes experts
 Sonar
 Travaux de Sejnowski
& Gorman, 1988
 Pré-traitement: TFD
 Apprentissage: formes
spectrales

Cours #3 GPA-779
- 8 Application des réseaux de neurones et des systèmes experts
2.2 Approximation
Transformer une forme d’entrée en une
forme de sortie selon une fonction de
transformation apprise par le réseau
 Réseau à rétro-propagation du gradient
d’erreurs (perceptron multicouche)
 Adaline-Madaline

Cours #3 GPA-779
- 9 Application des réseaux de neurones et des systèmes experts
 Approximation de
fonction
transcendentale
y = 0,8sinπx
 n=10; K=21
 31 param. à
entraîner :
– 20 poids
– 11 polar.

Cours #3 GPA-779
- 10 Application des réseaux de neurones et des systèmes experts
 Réseau Net Talk
 Sejnowski & Rosenberg
 1986
 But: Apprendre à
prononcer un texte écrit
avec l’aide d’un
dictionnaire phonétique

Cours #3 GPA-779
- 11 Application des réseaux de neurones et des systèmes experts
Cours #3 GPA-779
- 12 Application des réseaux de neurones et des systèmes experts
 Approximation complexe: conduite d’un véhicule motorisé
à à
gauche droite

route + claire 1217


ou + foncée unités

= 256

= 960 (dans le bleu)

Cours #3 GPA-779
- 13 Application des réseaux de neurones et des systèmes experts
 Approximation complexe: conduite de
véhicule motorisé
 Projet développé à Carnegie-Mellon
 Apprentissage: 1200 images présentées 40
fois chacune. Les images représentent une
grande diversité de courbes, d’intensité et de
distortion. L’apprentissage dure ~30 min.
 Résultats: Le meilleur à … ~5 km/hrs dans
une route boisée.

Cours #3 GPA-779
- 14 Application des réseaux de neurones et des systèmes experts
2.3 Prédiction
Prédire une valeur de sortie à partir d’une
forme d’entrée

Indice Dow-Jones

14 indicateurs, dont:
DJ précédent
Or Couche cachée: 20
Bons du trésor

Cours #3 GPA-779
- 15 Application des réseaux de neurones et des systèmes experts
2.4 Compression
 Encodeur 8-3-8
Extraction
de Classification
primitives

transmis
Cours #3 GPA-779
- 16 Application des réseaux de neurones et des systèmes experts
2.5 Mémorisation associative
Mémoriser plusieurs formes.
En rappeler 1 à partir d’une forme
partielle ou bruitée.

 Réseaude Hopfield
 BAM, ABAM

Cours #3 GPA-779
- 17 Application des réseaux de neurones et des systèmes experts
 Reconstruction d’images

Cours #3 GPA-779
- 18 Application des réseaux de neurones et des systèmes experts
2.6 Optimisation
Trouver une bonne solution (pas
nécessairement LA solution optimale)
qui minimise une fonction de coût.
 Réseaurécurrent de Hopfield
 Machine de Boltzmann

Cours #3 GPA-779
- 19 Application des réseaux de neurones et des systèmes experts
 Voyageur de commerce
Un vendeur doit établir un itinéraire de visite
de 5 villes. Il doit partir de Boston et revenir à
Boston à la fin de son itinéraire.
 Chaque ville est visitée une et une seule fois
 L’itinéraire doit être le plus court possible afin de
minimiser les frais d’essence
La principale difficulté rencontrée avec ce type
de problème est l’explosion combinatoire des
solutions à évaluer.

Cours #3 GPA-779
- 20 Application des réseaux de neurones et des systèmes experts
Cours #3 GPA-779
- 21 Application des réseaux de neurones et des systèmes experts
 Réseau de Hopfield
 Lignes  villes
 Colonnes  séquence de visite
 Poids  contraintes du
problème à résoudre
– 1 ville visitée 1 seule fois
– 1 étape  1 seule ville
– Distance entre les villes
 Activation du réseau 
minimisation du coût

Cours #3 GPA-779
- 22 Application des réseaux de neurones et des systèmes experts
2.7 Regroupement
Apprendre sans supervision à classer les
données soumises au réseau.
Les classes sont regroupées selon un critère de
proximité des formes.
2 formes «semblables» vont activer une seule et
même classe.
Les réseaux de compétition forment la base :
 Gagnant emporte tout
 ART
 Kohonen, LVQ
Cours #3 GPA-779
- 23 Application des réseaux de neurones et des systèmes experts
 Réseau ART pour la classification non-supervisée

Cours #3 GPA-779
- 24 Application des réseaux de neurones et des systèmes experts
 ART: reconnaissance de lettres manuscrites

 = 0,9

 = 3 et plus
 nouvelle
catégorie

Cours #3 GPA-779
- 25 Application des réseaux de neurones et des systèmes experts
Chapitre 3
Le Perceptron
Réseaux de Neurones
Application en Reconnaissance de Formes

d’après B. Solaiman
Dépt. Image & Traitement de l'Information
Ecole Nationale Supérieure des Télécommunications de
Bretagne
Plan

1 Problématique de reconnaissance de formes

2 Développement d’une solution neuronale

3 Neurone formel - Perceptron, Madaline


1 Problématique de
Reconnaissance de Formes

Extraction Système
X des Y de D
primitives décision

Espace Espace Espace


d'entrée des primitives des décisions
1 Problématique de reconnaissance de formes

Les primitives :

1 Les vecteurs propres


y

. . . z. . .
. ..
...z........ ... v
. . .
... ....... u...
y1
.. V2 ..
j j V1
x x
x1
i i
z = x1 i + y1 j z = u V1 + v V2
1 Problématique de reconnaissance de formes

2 Les primitives visuelles

….
1 Problématique de reconnaissance de formes

3 Les vecteurs prototypes


. . . ..
. .. ... ..
. . .
. ...
..

. . . . . . . .. P1
.
. . ...
P3 . . P1 . . ... d3
. P3 . . d1
.
y . . . .z . . .
d2
.z
P2. ... P2. ...
.. ..
x
z (x,y) z (d1,d2,d3)
2 Développement d’une
solution neuronale
Case Based
Problème formel Reasoning

Un ensemble de Une base


connaissances d’apprentissage
Problème formel : Reconnaissance de chiffres manuscrits
Connaissances : L’ensemble des chiffres (0, 1, … , 9),
La structures des chiffres,
Forme de représentation (images 16x16),
Les primitives à utiliser,
Les méthodes de pré-traitement utilisées,..

Une base d’apprentissage :

?
«5 »

5 i f f r e
, Ch
Problème formel : Reconnaissance de pannes dans les
cartes électroniques.
Connaissances : L’ensemble des pannes potentielles,
Les mesures réalisables,

Une base d’apprentissage :

Carte + panne + Mesures associées


2 Développement d’une solution neuronale

Démarche
1 Identifier les connaissances exploitables
2 Définir l’architecture neuronale adéquate :
a. objectifs,
b. nature de la base d’apprentissage
3 Définir la mémoire et
l’algorithme d’apprentissage
4 Définir la stratégie de décision
2 Développement d’une solution neuronale

Catégorisation des R.d.N en


Reconnaissance de Formes
1 Les réseaux de neurones classifieurs
Réseau de neurones
classifieur

Extraction des
primitives

Espace Espace des Espace des


d’objets primitives décisions
2 Développement d’une solution neuronale

Les réseaux de neurones


2
extracteurs de primitives

Réseau de neurones
d’extraction de primitives
Système de
décision

Espace Espace des Espace des


d’objets primitives décisions
2 Développement d’une solution neuronale

s réseaux de neurones
3
xtracteurs de primitives/Classifieu

Réseau d’extraction de primitives / classifieurs

Extraction Système
des de
primitives décision

Espace Espace des primitives Espace des


d’objets (d’observations) décisions
Neurone formel :
3 Réseaux perceptron et
madaline
Le neurone formel de McCulloch&Pitts

.AND.

?
.OR.
.XOR.
…....

Fonctions logiques
Version circuit à seuil

x1 
1
y yq
N xn   
wn
y = X × WT = ∑w n xn Circuit à seuil
n =1
xN 
wN
⎧ 1 si y > θ
yq = ⎨
Combinateur linéaire adaptatif
⎩- 1 sinon.

Modèle du neurone formel de


McCulloch&Pitts 1943
Version somme biaisée

x1 
w1
y
xn  
wn
N b
y = b+ ∑w n xn xN  1 Biais
wN
n =1
Combinateur linéaire adaptatif
b + x1w 1 + x 2 w 2 < 0
Exemple

x1  x1 
w1=+1   w1=+1  
x2  x2 
w2=+1 ET w2=+1 OU

x1 x2 Sortie ET Sortie OU

-1 -1 -1 -1
-1 1 -1 1
1 -1 -1 1
1 1 1 1
Surface de décision  2 Surface de décision  3

x2 x3
x2
D +

D+
x1 x1

D - D-

La fonction réalisée par un neurone formel :


La séparation linéaire
P Q PQ
1 1 +1
Exemple : 1 -1 -1
-1 1 -1
-1 -1 -1

Q
- +
1
b
P
w1

Y PQ
P
w2
Q

- -
Exemple (suite) :

La droite qui résoud le problème


Q est donnée par :
- +
w1 b
x 2 = − x1 −
w2 w2

P où
b = -1
w1 = 1
w2 = 1
- -
 le signe de b vérifie que :

b + x1w 1 + x 2 w 2 < 0
P Q PQ
1 1 +1
Exercice : 1 -1 +1
-1 1 +1
-1 -1 -1

Q
+ +
1
b
P
w1

Y PQ
P
w2
Q

- +
Exercice (solution) :
La droite qui résoud le problème
est donnée par :

Q w b
x 2 = − 1 x1 −
+ + w2 w2


b=1
P w1 = 1
w2 = 1

 le signe de b vérifie que :


- +
b + x1w 1 + x 2 w 2 > 0
Le neurone sépare deux classes mais ne
permet pas de les caractériser !

x2
Y D+

x1 C1
s X
x2 x1
C2

S(X) = S(Y)
D-
Apprentissage des poids synaptiques
1  deux classes C1 et C2
Apprentissage ? linéairement séparables

2 Surface de séparation :
N
b + ∑ wn x n = 0
3 Apprentissage n =1

Base d’exemples
(X , d(k)) €
k Estimer wn et b
d(k) = {0,1} ou {-1,+1}
L’algorithme d’apprentissage de Rosenblatt , 1958
x1(k) 
w1
y(k)
yq(k)
xn(k)  

wn

xN(k)  Algorithme d(k)


wN Nouveaux
de
Rosenblatt

[w1, w2,…, wN]
eq(k)

W(t+1) = W(t) +  eq(k) Xk


Interprétation géométrique
de l’algorithme de Rosenblatt
x3

Xk W(t+1) =  eq(k) Xk

W(t+1)

W(t)
x1
x2
La modification de poids est proportionnelle à l’erreur et au vecteur d’entrée et est
de même direction que ce dernier
Le déroulement de l’algorithme d'apprentissage
initialisation aléatoire des poids synaptiques;
tant que CONDITION D’ARRÊT non vérifiée faire
Pour k=1 jusqu'à k=K
faire
présenter la forme Xk à l'entrée;
calculer yq(k);
calculer eq(k);
Pour n = 0 jusqu'à n = N faire
ajustement des poids :
wn(t+1) = wn(t) +
 eq (k) xn(k)

Fin;
P Q PQ
1 1 1
Exemple : 1 0 -1 Seuil  à 0,2
0 1 -1
0 0 -1

1
b3
P
w1

Ne Out
t 
Q w2 
d
Exemple (suite):
Initialisation des poids à 0
(0 0 0)
P Q b Net Out d w1 w2 b w1 w2 b

1 1 1 0 0 1 1 1 1 1 1 1

Calcul de la droite de séparation w 1P + w 2 Q + b = ±θ

P Q b Net Out d w1 w2 b w1 w2 b

1 0 1 2 1 -1 -1 0 -1 0 1 0
… … …
Rosenblatt a démontré, 1960, la convergence de cet
algorithme pour la séparation de deux classes à condition
qu'elles soient linéairement séparables.

Si eq(k) = 0  yq(k)= d(k)

W(k+1) = W(k) (i.e. pas de modification


des poids synaptiques)

Exemple :  = 0, d(k)= 1
y (k) = 0.0001 eq(k) = 0
y (k) = 0.9999
L’algorithme de Widrow-Hoff, 1960
x1(k) 
w1
yq(k)
xn(k)  
y(k)

wn

xN(k)  Algorithme
d(k)
de
wN Widrow- 
Nouveaux
[w1, w2,…, wN] Hoff e(k)

Minimiser l'erreur analogique quadratique moyenne : [d(k) - y(k)]2


W(t+1) = W(t) +  e(k) Xk
C1 C1 C1

C2 C2 C2

Widrow-Hoff
A p p r e n t i s s a g e
Rosenblatt

C1 C1 C1

C2 C2 C2
Marvin Minsky, 1969
Perceptrons, an introduction to computational geometry
x2

C1

C2
x1

Le problème du XOR
réseaux Madaline
x2
1 b1 1
b3
X1 w11
Z1
v1
w12

Y
w21 v2
Z2
x1 X2
w22

b2
1

Solution « artificielle »

et si N > 3 ?
Naissance de l’architecture multicouches
Fausett, Prentice Hall, 1994
Exercice 2.7
1
b
P Q P•Q
P
1 1 1 w1

1 -1 -1 Y PQ
-1 1 -1 w2
Q
-1 -1 -1

P Q b Net Out d w1 w2 b w1 w2 b


1 1 1 0 0 1 1 1 1 1 1 1

1 -1 1 1 1 -1 -1 1 -1 0 2 0

-1 1 1 2 1 -1 1 -1 -1 1 1 -1

-1 -1 1 -3 -1 -1 0 0 0 1 1 -1
Exercice 2.7 (suite)

Étape 1 Étape 2 Étape 3


Q Q Q
- + - + - +

P P P

- - - - - -

P+ Q+ 1 = 0 Q= 0 P+ Q- 1 = 0
Fausett, Prentice Hall, 1994 1
Exercice 2.16 P
b

w1
P Q P¬Q
Ne
1 1 0 Out
t
1 0 1 Q w2 
0 1 0
0 0 0 d

La règle d’apprentissage de l’ADALINE cherche à minimiser


l’erreur quadratique totale :
4
E = ∑(P(p) w 1 + Q(p) w 2 + b −d (p)) 2
p =1

où P ( p ) w 1 + Q( p ) w 2 + b est la valeur « Net » et d est un élément


de la table de vérité de P¬Q
Exercice 2.16 (suite)
Le AND NOT sans valeur de biais consiste à minimiser :

E = (w1 + w2)2 + (w1 – 1)2 + (w2)2

Il n’y a pas d’erreur pour la dernière ligne du tableau logique, peu importe les
valeurs de poids synaptiques.

Les dérivées partielles en w1 et w2 permettent de trouver le minimum de E :

2(w1 + w2) + 2(w1 – 1) = 0 2(w1 + w2) + 2(w2) = 0


2 w1 + w2 – 1 = 0 w1 + 2 w2 = 0 ou w1 = -2 w2
-4 w2 + w2 – 1 = 0 ou w2 = -1/3 w1 = 2/3
Exercice 2.16 (suite)
Le AND NOT avec valeurs de biais consiste à minimiser :

E = (w1 + w2 + b)2 + (w1 – 1 + b)2 + (w2 + b)2 + b2

Les dérivées partielles en w1, w2 et b permettent de trouver le minimum de E :

{
2(w1 + w2 + b) + 2(w1 – 1 + b) = 0 2 w1 + w2 + 2b = 1
2(w1 + w2 + b) + 2(w2 + b) = 0  w1 + 2 w2 + 2b = 0
2(w1 + w2 + b) + 2(w1 – 1 + b) + 2(w2 + b) + 2b = 0 2 w1 + 2 w2 + 4b = 1

w1 = 0.5 w2 = -0.5 b = 0.25

Vous aimerez peut-être aussi