20
Introduction à l’Apprentissage Connexionniste Younès BENNANI 1 Université Paris 13/Younès Bennani Apprentissage Connexionniste 2 - Éléments de base: le neurone, architecture, paramètres - Critères et algorithmes d'apprentissage - Adaline

lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Introduction à

l’Apprentissage Connexionniste

Younès BENNANI

1

Université Paris 13/Younès Bennani Apprentissage Connexionniste 2

- Éléments de base: le neurone, architecture, paramètres

- Critères et algorithmes d'apprentissage

- Adaline

Page 2: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 3

Plan du cours

- Éléments de base

- le neurone

- architectures

- paramètres

- Critères et algorithmes d'apprentissage

- Modèles connexionnistes supervisés

- Perceptron multicouches

- Réseaux à fonctions radiales

- Learning Vector quantization

- Modèles Connexionnistes non supervisés

- Les cartes topologiques de Kohonen

- ART

- Liens avec les statistiques

- Extraction et sélection de caractéristiques

- Fusion de données et de décisions

- Heuristiques pour la généralisation

- régularisation structurelle

- régularisation explicite et pénalisation

- Applications

Université Paris 13/Younès Bennani Apprentissage Connexionniste 4

Livres

Neural Networks for Pattern Recognition

Christopher M. Bishop

Clarendon Press - Oxford (1995)

Neural Smithing

Supervised Learning in Feedforward Artificial Neural Networks

Russell D. Reed & Robert J. Marks

Massachusetts Institute of Technology Press (1999)

Pattern Recognition and Neural Networks

B.D. Ripley

Cambridge University Press (1996)

Neural Networks

James A. Freeman & David M. Skapura

Addison-Wesley Publishing Compagny (1991)

Adaptive Pattern Recognition and Neural Networks

Yoh-Han Pao

Addison-Wesley Publishing Compagny (1989)

Neural Networks in Computer Intelligence

LiMin Fu

Massachusetts Institute of Technology Press (1994)

Page 3: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 5

Le Neurone Formel

1943, Mc Culloch & Pitts

Un modèle et non une copie du neurone biologique

= un processeur élémentaire caractérisé par :

• signaux d’entrée

• poids des connexions

• fonction d’activation

• état interne d’activation

• fonction de transition

• état de sortie

x0, x1,K, x

n

!

wi 0,w

i1,K,w

in

!

F(x,w)

!

a = F(x,w)

!

f (a)

!

s = f (a)

x0

!

w j 0

!

a j

!

s j

x1

xn

M!

F(xi,w ji)

!

f (a j )!

w j1

!

w j n

Université Paris 13/Younès Bennani Apprentissage Connexionniste 6

Le Neurone Formel

x0

!

w j 0

!

s j

x1

xn

M!

F(xi,w j i)

!

f (a j )!

w j1

!

w j n

!

a j

Définition : Un neurone formel (artificiel) est une unité de traitement qui reçoit

des données en entrée, sous la forme d’un vecteur, et produit une sortie réelle.

Cette sortie est une fonction des entrées et des poids des connexions.

Page 4: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 7

Poids et connexion

Définition : Une connexion entre deux unités i et j indique la

possibilité d'une relation physique entre ces deux unités.

Définition : La valeur numérique du poids associé à une

connexion entre deux unités reflète la force de la relation entre

ces deux unités. Si cette valeur est positive, la connexion est

dite excitatrice, sinon elle est dite inhibitrice. La convention

usuelle est de noter le poids de la connexion reliant le neurone

i au neurone j :

!

wj i

x0

!

w j 0

!

s j

x1

xn

M!

F(xi,w j i)

!

f (a j )!

w j1

!

w j n

!

a j

Université Paris 13/Younès Bennani Apprentissage Connexionniste 8

Le Neurone Formel

k

Définition : Si l’on considère l’unité k, et que l’on appelle Amont(k) l’ensemble

des neurones dont les sorties servent d’entrées au neurone k, Aval(k) l’ensemble

des neurones qui utilisent comme entrée la sortie du neurone k.

E l’ensemble des neurones d’entrée, et S l’ensemble des neurones de sortie.

Alors, par définition on a : ! i " E, Amont(i)=# et ! i " S, Aval(i)= #.

Amont(k) Aval(k)

Page 5: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 9

Le Neurone Produit Scalaire

x0

x1

xn

M

!

w j i xii= 0

n

"

ƒ x( ) =ex ! e! x

ex

+ e! x

!

a j

!

w j 0

!

w j1

!

w j n

!

F(x,w) = w.x = wj i xii " Amont (j )

#

!

sj = ƒ wj i xii " Amont ( j )

#$

% & &

'

( ) )

Université Paris 13/Younès Bennani Apprentissage Connexionniste 10

Le Neurone Distance

x0

x1

xn

M!

w j i " xi( )2

i= 0

n

#

!

a j

!

w j 0

!

w j1

!

w j n

!

w " x2

= w2

" 2 w.x + x2

!

F(x,w) = w " x2

= wj i " xi( )2

i # Amont ( j )

$

!

sj = ƒ wj i " xi( )2

i # Amont ( j )

$%

& ' '

(

) * *

Page 6: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 11

Réseau Connexionniste

x0

x1

xn

M

!

y ="(x,w)

Définition : Un réseau de neurones est un graphe valué orienté, constitué

d’un ensemble d’unités (ou automates), réalisant des calculs élémentaires,

structurées en couches successives capables d’échanger des informations

au moyen de connexions qui les relient.

- Un réseau se caractérise par :

- son architecture

- les fonctions de ses éléments !

y1

!

yp

M

M

- Architecture massivement parallèles.

- Système basé sur la coopération de

plusieurs unités simples (neurones formels).

Université Paris 13/Younès Bennani Apprentissage Connexionniste 12

Fonctions d’un réseau connexionniste

Le Mode Apprentissage :

Le réseau est modifié en fonction des exemples d ’apprentissage

On peut modifier :

- les poids de ses connexions

- son architecture

- les fonctions de transition des unités

Il existe essentiellement deux sortes d ’algorithmes d ’apprentissage :

- l’apprentissage supervisé

- l’apprentissage non supervisé

Page 7: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 13

Apprentissage Supervisé

On se donne :

- N exemples étiquetés

- une architecture de réseau

- des poids initiaux

On cherche, au moyen de l’algorithme

d’apprentissage à trouver des poids tels que :

- les exemples sont reconnus :

- on obtient une bonne généralisation :

est une réponse raisonnable pour l’entrée

x

!

d

!

EN = x1,d1( ), x 2,d2( ),K, x

N,d

N( ){ } xk " #n

dk " #p

A

w0

w*

!

dk

="(xk,w)

!

d ="(x,w)

x

entréeSortie

désirée

! (x,w)

Professeur

!

y

Sortiedésirée

Sortiecalculée

Université Paris 13/Younès Bennani Apprentissage Connexionniste 14

Apprentissage Non Supervisé

On se donne :

- N exemples non étiquetés

- une architecture de réseau

- des poids initiaux

!

EN

= x1, x

2,K,x

N{ }A

w0

On cherche à trouver des poids tels que :

- les exemples sont correctement regroupés- on obtient une bonne généralisation

w*

! (x,w)x

Page 8: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 15

Mode Reconnaissance

Le réseau est utilisé pour traiter des données

- les poids et l ’architecture du réseau sont fixés

- on lui présente un exemple en entrée et le réseau calcule

une sortie qui dépend de l’architecture et des

poids appris.

A

w*

!

y ="(x,w)

x

La sortie peut être :

- l’étiquette de la classe (identité) Classement/Discrimination

- le N° du cluster Classification/Quantification

- la valeur à prévoir Prévision

- un vecteur du même type que l’entrée Codage/Compaction

Université Paris 13/Younès Bennani Apprentissage Connexionniste 16

Utilisation des modèles connexionnistes

Grand nombre de mesures + Loi sous-jacente inconnue

Taille

Poids

Danceur de Ballet

Joueur de Rugby

Frontière de décision

Classement

TaillePoids

BalletRugby

x

!

d

Page 9: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 17

Utilisation des modèles connexionnistes

Grand nombre de mesures + Loi sous-jacente inconnue

Compression

décodage

codage

x 1 x 2 x 3

x 1 x 2 x 3

x

x

x 1 x 2 x 3

x 1 x 2 x 3

Université Paris 13/Younès Bennani Apprentissage Connexionniste 18

Utilisation des modèles connexionnistes

Grand nombre de mesures + Loi sous-jacente inconnue

x t-2 x t-1 x t

x t+1

Régression

Page 10: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 19

Utilisation des modèles connexionnistes

Grand nombre de mesures + Loi sous-jacente inconnue

ClassificationQuantification

x

x

x

x

x

x

x

x

x

x

x

x

x

x

xxx x

x x

x

x

x

x

x

x

x

x

x

x

x

x

x

xxx x

x

Clustering

Université Paris 13/Younès Bennani Apprentissage Connexionniste 20

Apprentissage à partir d’exemples

Connaissances :• données• domaine

But :

• Construire un système qui explique des données

ou une relation pertinente liant ces données

• Estimer un modèle statistique qui a généré les données

Démarche :• Choisir un système possédant une bonne capacité degénéralisation

• Agir sur la complexité effective des modèles

Page 11: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 21

Où , à valeur dans un espace (des conditions extérieures ou des exemples),représente les observations d’une v.a. de distribution de probabilité, fixe mais inconnue, et les paramètres du réseau.

Formalisme

La problématique de l’apprentissage se présente souvent comme laminimisation d’une fonction de risque :

!

R(w) = L z ,w( ) dp(z )Z

"

Risque théorique

L’erreur de généralisation

Fonction de perte

Loss function

!

z

!

Z

!

Z

!

p(z )

!

w

L’apprentissage revient à trouver les paramètres :

!

w*

= argminw

R(w)

Université Paris 13/Younès Bennani Apprentissage Connexionniste 22

Le risque théorique n’est pas calculable, est inconnue.

Mais un échantillon d’exemples indépendants, tirés deest connu.

En pratique, on ne peut pas minimiser , on utilise alors unprincipe d’induction.

Le plus courant = minimisation du risque empirique (MRE) :

Formalisme

Choix :!

˜ R (w) =1

NL z

k,w( )

k=1

N

"Risque empirique

(Erreur d ’apprentissage)

!

R(w)!

p(z)

!

p(z)

!

EN

= zk{ }

k=1

N

!

w+

= argminw

˜ R (w)

Page 12: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 23

Algorithmes d’Optimisation

À partir d'une configuration initiale des poids (les paramètres du modèle),une procédure de gradient modifie les valeurs de ces paramètres par desajustements successifs qui visent à minimiser le critère d'erreur .

La version la plus simple utilise pour cela les dérivées premières de ,c'est le cas de l'algorithme dit de la plus grande pente.

!

˜ R (w)

!

f (x)

!

" f (x0)

!

x

!

x0

!

x1

= x0"#. $ f (x

0)

Repeat this iteratively

until for some xi,

ƒ’(xi) is sufficiently close to 0.

Université Paris 13/Younès Bennani Apprentissage Connexionniste 24

Algorithmes d’Optimisation

La règle d'adaptation :

!

w(t +1) = w(t) "1

N#(t) $

w˜ R

k(w)

k=1

N

%

!

w(t +1) = w(t) "#(t)$w

˜ R k(w)

!

˜ R k(w) = L z

y,w( )

Gradient total

Gradient stochastique!

" ˜ R (w)

"w= lim

#w$0

˜ R (w + #w) % ˜ R (w)

#w

!

"w

˜ R k(w) =

# ˜ R k(w)

#w1

,K,# ˜ R

k(w)

#wi

,K,# ˜ R

k(w)

#wn

$

% &

'

( )

Page 13: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 25

Systèmes d’Apprentissage Supervisé

Université Paris 13/Younès Bennani Apprentissage Connexionniste 26

Système d ’Apprentissage Supervisé

Exemples d’apprentissage

Algorithme d ’apprentissage(Méthode d ’optimisation)

Fonctionde coût

Entrée Sortie désirée

EntréeSortie

calculée +-

erreur

Adaptationdes poids

x0

x1

xn

!

y ="(x,w)

!

d

!

x

M

!

y1

!

yp M

Page 14: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 27

Adaline : Adaptive Linear ElementStanford, 1960, Bernard Widrow*

x0= 1

w0

a

x1

xn

M

wixi

i= 0

n

!

w1

wn

C’est un élément linéaire adaptatif :

!

y = wixii= 0

n

"

L ’unité x0, dont

l ’activation fixée à 1, est

dite unité de biais.

Elle permet d'introduire

les termes de biais dans

le réseau.

* Widrow B., Hoff M.E. (1960) : « Adaptive switching circuits », IRE WESCON

Conv. Record, part 4, pp. 96-104.

!

y ="(x,w) = w0

+ wixii=1

n

#

!

y

f (x) =

1 si x > 0

!1 si x < 0

"

# $

% $

Université Paris 13/Younès Bennani Apprentissage Connexionniste 28

Adaline : Adaptive Linear Element

!

y = wixii= 0

n

" = w x cos#

w

x

Page 15: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 29

Adaline : Adaptive Linear Element

!

y ="(x,w) = w0

+ wixii=1

n

#

!

y ="(x,w) = w0

+ wTx

w

x2

x1

w0+ w

T

x = 0

l =w

Tx

w= !

w0

w

Université Paris 13/Younès Bennani Apprentissage Connexionniste 30

Adaline : Adaptive Linear Element

Sans unité de biais

xx

x

x

x

x

x

x

x

x

oo

o

o

o

o

o

o

o

o

o

xx

x

x

x

x

x

x

x

x

oo

o

o

o

o

o

o

o

o

o

Avec unité de biais

Page 16: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 31

Adaline : Adaptive Linear Element

On peut l’utiliser en discrimination (classement) entre 2 classes :

xx

x

x

x

x

x

x

x

x

oo

o

o

o

o

o

o

o

o

o

xi

C2

C1

$(x,w)=0

$(x,w)> 0)$(x,w)< 0

! (x,w) = w0

+ wT

x

> 0 si x "C1

< 0 si x "C2

#

$ %

& %

Université Paris 13/Younès Bennani Apprentissage Connexionniste 32

Adaline : Adaptive Linear Element

Si l ’on appelle la forme prise en compte à l’itération k,

On définit le carré de l’erreur instantanée associée à la forme par :

!

˜ R Adaline

k(w) = d

k" wx

k( )2

!

zk = x

k,d

k( )

Sortie désirée

L’erreur quadratique globale ou (MSE) est définie comme la moyenneobservée des carrés des erreurs instantanées sur l’ensemble de toutesles formes :

!

xk,d

k( )

Sortie calculée : y

!

˜ R Adaline

(w) =1

N

˜ R Adaline

k(w)

k=1

N

"

Il existe plusieurs algorithmes d’apprentissage.

Page 17: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 33

Adaline : Adaptive Linear Element

Techniques de descente de gradient (la plus grande pente) :supposons qu ’à l’instant , les poids de l ’Adaline soient et qu ’on présente la forme , alors les poids seront modifiés par :

Cette règle est appelée règle du gradient stochastiqueou règle de Widrow-Hoff ou règle du delta de Widrow-Hoffou règle !-LMS (Least Mean Square)

!

"w

˜ R Adaline

k(w) =

# ˜ R Adaline

k(w)

#w= $2 d

k$ wx

k( )xk

!

w(t +1) = w(t) "#(t)$w

˜ R Adaline

k(w)

t

Le pas du gradientLe gradient instantané

w t( )

!

xk,d

k( )

Université Paris 13/Younès Bennani Apprentissage Connexionniste 34

Adaline : Adaptive Linear Element

1- Tirer au hasard

2- Présenter une forme

3- Déterminer la valeur de l’écart

4- Calculer une approximation du gradient

5- Adapter les poids

Où est le pas du gradient.

6- Répéter de 2 à 4 jusqu’à l’obtention d’une

valeur acceptable de l’erreur

w0

w t( )

! t( )

!

ekt( ) = d

k" wx

k( )

!

"w

˜ R Adaline

k(w) = #2e

kt( )x

k

!

xk,d

k( )

!

w(t +1) = w(t) "#(t)$w

˜ R Adaline

k(w)

Page 18: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 35

Adaline : Exemples

Données : Table de vérité d ’une fonction booléenne de 2 variables

Problème :

Trouver un Adaline capable d ’apprendre la table de véritéd’une fonction booléenne de 2 variables

x1

1

1

x2

1

-1

d

1

1

-1 1 1

-1 -1 -1

Fonction : $(x,w)= (x1 ou x2)

Université Paris 13/Younès Bennani Apprentissage Connexionniste 36

Adaline : Exemples

x1

1

1

x2

1

-1

d

1

1

-1 1 1

-1 -1 -1

Fonction : $(x,w)= (x1 ou x2)x2

x1

Page 19: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 37

Adaline : Exemples

!

EN

= x1,d1( ), x 2,d2( ),..., xN ,dN( ){ }

x1

1

1

x2

1

-1

d

1

1

x0

1

1

-1 1 11

-1 -1 -11

x0= 1

w0

a

yx1

x2

wixi

i= 0

n

!w1

w2 ! x,w( ) = x

1" x

2

Université Paris 13/Younès Bennani Apprentissage Connexionniste 38

Adaline : Exemples

x0= 1

w0

a

yx1

xn

wixi

i= 0

n

!w1

w2 ! x,w( ) = x

1" x

2

x2

x1

w1x1+ w

2x2+ w

0= 0

Page 20: lÕApprentissage Connexionnistebennani/tmpc/APN/an1.pdfNeural Networks in Computer Intelligence LiMin Fu Massachusetts Institute of Technology Press (1994) Universit Paris 13/Youn

Université Paris 13/Younès Bennani Apprentissage Connexionniste 39

Adaline : Exemples

x0= 1

w0

a

yx1

x2

wixi

i= 0

n

!w1

w2 ! x,w( ) = x

1" x

2

x2

x1

w1x1+ w

2x2+ w

0= 0

x1

1

1

x2

1

-1

d

1

-1

x0

1

1

-1 1 -11

-1 -1 -11

Université Paris 13/Younès Bennani Apprentissage Connexionniste 40

Exercice à faire

x0

0.3

a

yx1

x2

wixi

i= 0

n

!0.8

0.4! x,w( )

!

E =

1

1

1

"

#

$ $ $

%

&

' ' ' ,1

"

#

$ $ $

%

&

' ' ' ;

1

1

(1

"

#

$ $ $

%

&

' ' ' ,(1

"

#

$ $ $

%

&

' ' ' ;

1

(1

1

"

#

$ $ $

%

&

' ' ' ,1

"

#

$ $ $

%

&

' ' ' ;

1

(1

(1

"

#

$ $ $

%

&

' ' ' ,1

"

#

$ $ $

%

&

' ' '

)

* +

, +

-

. +

/ +

Représenter dans un repère orthogonal l’ensemble des échantillons.

Utiliser l ’algorithme Adaline pour adapter les poids du modèle (%=0.1).

Donner l ’équation de l ’hyperplan séparant les deux classes.

Représenter l ’hyperplan dans le même repère orthogonal

f (x) =

1 si x > 0

!1 si x < 0

"

# $

% $

! x,w( ) = x1" x

2