• Aucun résultat trouvé

Apprentissage par réseaux de neurones artificiels

N/A
N/A
Protected

Academic year: 2022

Partager "Apprentissage par réseaux de neurones artificiels "

Copied!
59
0
0

Texte intégral

(1)

Apprentissage par réseaux de neurones artificiels

Artificial Neural Networks Learning

Younès BENNANI Professeur

EPAT'14 : École de Printemps sur l'Apprentissage arTificiel 2014 7-12 juin 2014 Carry-le-Rouet (France)

Plan du cours

•  Éléments de base (le neurone, architectures, paramètres)

•  Critères et algorithmes d'apprentissage

•  Réseaux de neurones artificiels supervisés

•  Réseaux de neurones artificiels non supervisés

•  Réseaux de neurones artificiels profonds

•  Propriétés et liens avec l’analyse factorielle

•  Conclusion

(2)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 3

L’idée d’origine (~ 1940)

•  Les organismes vivants, même assez primitifs (ex. insectes), réalisent des tâches complexes de traitement de l’information :

•  orientation

•  communication

•  comportement social

•  ...

•  La puissance de traitement de leur système nerveux vient de l’interconnexion(ex. 10

14

connexions chez l’homme)

•  d’un grand nombre (ex. 10

11

chez l’homme)

•  d’unités de traitement simples et similaires : les neurones

•  La motivation initiale était de faire du neuro-mimétisme

•  toutefois, la vision des années 1940 était assez simpliste;

•  la réalité biologique c’est avéré plus complexe depuis.

•  En revanche, cette idée c’est avérée très féconde en mathématiques et en ingénierie

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

x

0

, x

1

, K , x

n

w

i0

,w

i1

, K ,w

i n

F (x,w)

a = F(x,w) f (a)

s = f (a)

x0

wj0

aj

sj x1

xn M

F(xi,wji)

f(aj)

wj1

wj n

(3)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 5

Le Neurone Formel

x

0

w

j0

s

j

x

1

x

n

M

F(x

i

,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.

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 : w j i

x0

wj0

sj x1

xn M

F(xi,wj i)

f(aj)

wj1

wj n

aj

(4)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 7

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)

Le Neurone Produit Scalaire

x

0

x

1

x

n

M

w

j i

x

i

i=0 n

ƒ ( ) x = e xe x e x + e x

a

j

w

j0

w

j1

w

j n

F(x,w )= w.x = w

j i

x

i i∈Amont(j)

s

j

= ƒ w

j i

x

i i∈Amont(j)

⎛ ∑

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟

(5)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 9

Le Neurone Distance

x

0

x

1

x

n

M

w

j i

x

i

( )

2

i=0 n

a

j

w

j0

w

j1

w

j n

wx 2 = w 2 − 2 w, x + x 2

F( x,w) = wx

2

= ( w

j i

x

i

)

2

iAmont(j)

s

j

= ƒ ( w

j i

x

i

)

2

iAmont(j)

⎛ ∑

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟

Réseau Connexionniste / Réseau de neurones

x

0

x

1

x

n

€ 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

y

1

y

p

€ M

€ M

- Architecture massivement parallèles.

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

plusieurs unités simples (neurones formels).

(6)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 11

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é

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

E

N

= { ( x

1

,d

1

) , ( x

2

,d

2

) , K , ( x

N

,d

N

) } x

k

∈ ℜ

n

d

k

∈ ℜ

p

A w 0

w * d k = ψ ( x k ,w)

d = ψ ( x, w) x

entrée Sortie

désirée

ψ ( x , w)

Professeur

y

Sortie désirée

Sortie calculée

(7)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 13

Apprentissage Non Supervisé

On se donne :

- N exemples non étiquetés - une architecture de réseau - des poids initiaux

E

N

= { x

1

, x

2

, K ,x

N

}

A w 0

On cherche à trouver des poids tels que : - les exemples sont correctement regroupés - on obtient une bonne généralisation

w *

ψ ( x, w) x

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

(8)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 15

Utilisation des modèles connexionnistes

Grand nombre de mesures + Loi sous-jacente inconnue Classement

Taille Poids

Ballet Rugby

x

d

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

(9)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 17

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

Utilisation des modèles connexionnistes

Grand nombre de mesures + Loi sous-jacente inconnue Classification

Quantification

x x x

x

x

x x x

x x

x

x x

x

x x x x

x x

x x

x

x

x x x

x x

x

x x

x

x x x x

x

Clustering

x x x

x

x

x x x

x x

x

x x

x

x x x x

x

(10)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 19

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é de généralisation

•  Agir sur la complexité effective des modèles

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 la minimisation 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 * = arg min

w

R(w)

(11)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 21

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

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

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

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

Formalisme

Choix :

R ˜ (w) = 1

N L z (

k

,w )

k=1 N

Risque empirique

(Erreur d ’apprentissage)

R(w)

p(z)

p(z)

E N = { } z k k=1 N

w + = argmin

w

R ˜ (w)

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)

w

1

, K , ∂ R ˜

k

(w)

w

i

, K , ∂ R ˜

k

(w)

w

n

⎛

⎝ ⎜ ⎞

⎠ ⎟

(12)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 23

Systèmes d’Apprentissage Supervisé

Système d ’Apprentissage Supervisé

Exemples d’apprentissage

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

Fonction de coût

Entrée Sortie désirée

Entrée Sortie

calculée

+

-

erreur

Adaptation des poids

x

0

x

1

x

n

y = ψ(x,w)

d

x

€ M

y

1

y

p

M

(13)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 25

Stanford, 1960, Bernard Widrow*

x

0

= 1 w

0

a x

1

x

n

€ M

w

i

x

i

i=0 n

w

1

w

n

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

y = w i x i

i= 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) = w 0 + w i x i

i=1 n

y

f (x) =

1 si x > 0

−1 si x < 0

⎧

⎨

⎪

⎩ ⎪

y= wixi i=0

n

=w xcosφ

Adaline : Adaptive Linear Element

y = ψ ( x, w) = w 0 + w i x i

i=1 n

y = ψ ( x, w) = w 0 + w T x

w x 2

x 1 w 0 + w T x = 0

l = w

T

x w = − w

0

w

(14)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 27

Adaline : Adaptive Linear Element

Sans unité de biais

x x x

x x

x x x x

x

o o o

o o

o o o

o o o x x

x x x

x x x x

x

o o o

o o

o o o

o o o

Avec unité de biais

Adaline : Adaptive Linear Element

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

x x x

x x

x x x x

x

o o o

o o

o o o

o o o

x

i

C

2

C

1

ψ(x,w)=0 ψ (x,w)> 0) ψ (x,w)< 0

ψ ( x, w) = w

0

+ w

T

x

> 0 si x ∈C

1

< 0 si x ∈C

2

⎧

⎨

⎪

⎩ ⎪

(15)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 29

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 ˜

Adalinek

(w) = ( d

k

wx

k

)

2

z

k

= ( x

k

, d

k

)

Sortie désirée

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

x

k

, d

k

( )

Sortie calculée : y

R ˜

Adaline

(w) = 1 N

R ˜

Adalinek

(w)

k=1 N

Il existe plusieurs algorithmes d’apprentissage.

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 stochastique ou règle de Widrow-Hoff

ou règle du delta de Widrow-Hoff ou règle µ-LMS (Least Mean Square)

w

R ˜

Adalinek

(w) = ∂ R ˜

Adalinek

(w)

w = −2 ( d

k

wx

k

) x

k

w(t + 1) = w(t) − ε(t)∇

w

R ˜

Adaline

k

(w)

t

Le pas du gradient

Le gradient instantané

w t ( )

x

k

, d

k

( )

(16)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 31

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 !

w

0

w t ( ) ε ( ) t

e

k

( ) t = ( d

k

wx

k

)

w

R ˜

Adalinek

(w) = −2e

k

( ) t x

k

x

k

,d

k

( )

w(t + 1) = w(t) − ε(t)∇

w

R ˜

Adalinek

(w)

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

x

1

1 1

x

2

1 -1

d

1 1

-1 1 1

-1 -1 -1

Fonction : ψ (x,w)= (x

1

ou x

2

)

E =

1 1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ ,1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

; 1

−1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ ,1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

;

−1 1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ ,1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

;

−1

−1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ ,−1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

⎧

⎨ ⎪

⎩ ⎪

⎫

⎬ ⎪

⎭ ⎪

(17)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 33

Adaline : Exemples

x

1

1 1

x

2

1 -1

d

1 1

-1 1 1

-1 -1 -1 Fonction : ψ(x,w)= (x

1

ou x

2

)

x 2

x 1

Adaline : Exemples

E N = { ( x 1 ,d 1 ) , ( x 2 ,d 2 ) ,..., ( x N ,d N ) }

x

1

1 1

x

2

1 -1

d

1 1

x

0

1 1

-1 1 1

1

-1 -1 -1 1

x

0

= 1 w

0

a y

x

1

x

2

w

i

x

i

i=0 n

w

1

w

2

ψ ( x,w ) = x

1

x

2

(18)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 35

Adaline : Exemples

x

0

= 1 w

0

a y

x

1

x

n

w

i

x

i

i=0 n

w

1

w

2

ψ ( x,w ) = x

1

x

2

x 2

x 1 w 1 x 1 + w 2 x 2 + w 0 = 0

Adaline : Exemples

x

0

= 1 w

0

a y

x

1

x

2

w

i

x

i

i=0 n

w

1

w

2

ψ ( x,w ) = x

1

x

2

x 2

x 1

w

1

x

1

+ w

2

x

2

+ w

0

= 0

x

1

1 1

x

2

1 -1

d

1 -1

x

0

1 1

-1 1 -1

1

(19)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 37

Exercice à faire

x

0

0.3

a y

x

1

x

2

w

i

x

i 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

⎧

⎨

⎪

⎩ ⎪

Représentation graphique

E = 1 1 1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

,−1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

; 1 1

−1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

,1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

; 1

−1 1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

,1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

; 1

−1

−1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

,1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

⎧

⎨ ⎪

⎩ ⎪

⎫

⎬ ⎪

⎭ ⎪

x 2

x 1

x

0

0.3

a y

x

1

x

2

w

i

x

i i=0

n

0.8 ∑

0.4 ψ ( x,w )

(20)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 39

Adaptation des poids

w

0

(t +1) w

1

(t +1) w

2

(t +1)

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ = 0.3 0.8 0.4

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

−2 × 0.1× −1− ( 0.3 0.8 0.4 ) ×

1 1 1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

⎡

⎣

⎢

⎢

⎢

⎤

⎦

⎥

⎥

⎥

× 1 1 1

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

D = 1 1 1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ,−1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ; 1 1

−1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ,1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ; 1

−1 1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ,1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ; 1

−1

−1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟ ,1

⎛

⎝

⎜ ⎜

⎞

⎠

⎟ ⎟

⎧

⎨

⎪

⎩ ⎪

⎫

⎬

⎪

⎭ ⎪

w

0

(t +1) w

1

(t +1)

M w

n

(t +1)

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

= w

0

(t) w

1

(t) M w

n

(t)

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

−2 ε (t) d

k

− ( w

0

(t) w

1

(t) K w

n

(t) )

x

0k

x

1k

M x

nk

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

⎡

⎣

⎢

⎢

⎢

⎢

⎤

⎦

⎥

⎥

⎥

⎥

x

0k

x

1k

M x

nk

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

w

0

(t +1) w

1

(t +1) w

2

(t +1)

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ = 0.3 0.8 0.4

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ −

−0.5

−0.5

−0.5

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

w

0

(t +1) w

1

(t +1) w

2

(t +1)

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟ = 0.8 1.3 0.9

⎛

⎝

⎜

⎜ ⎜

⎞

⎠

⎟

⎟ ⎟

x

0

0.3

a y

x

1

x

2

w

i

x

i i=0

n

0.8 ∑

0.4 ψ ( x,w )

Évolution de l’apprentissage

x 2

x 1

t = 10 t = 15

w

1*

x

1

+ w

2*

x

2

+ w

0*

= 0

t = 20 t =5

t = 0

0.8 x

1

+ 0.4 x

2

+ 0.3 = 0

(21)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 41

Adaline : limites

ψ ( x,w ) = x

1

x

2

= XOR(x

1

, x

2

)

x 2

x 1

1 1

1 -1

-1 1 1

1

-1 1 1

1

-1 -1 -1 1

?

x

0

x

1

x

2

d

x

1

x

2

x

3

x

4

Séparabilité linéaire

A

B

A

B

Linéairement séparable Non-linéairement séparable

x2

x1

« Deux classes d’objets, décrits dans un espace de dimension n, sont dits « linéairement séparables » s’ils se trouvent de part et d’autre d’un hyperplan dans l’espace des descripteurs»

(22)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 43

Madaline : Multi-Adaptive Linear Element

ψ ( x,w ) = y = x

1

x

2

Madaline = un ensemble d’Adalines parallèles

Adaline 1

Adaline 2

x

0

w

0 1

x

1

x

2

w

1 1

w

2 1

w

0 2

w

1 2

w

2 2

Adaline 1 Adaline 2

1 1

1 -1

-1 1 1

1

-1 1 1

1

-1 -1 1 1

1 1 1 -1

-1 1 1 -1

Adaline 3

w

3 1

w

3 2

z1z2

z

1

z

2

Adaline 3

x

0

x

1

x

2

d

d

d

x

1

x

2

x

3

x

4

Madaline : Multi-Adaptive Linear Element

x 2

x 1

Adaline 1

Adaline 2 Adaline 1

Adaline 2

x

0

w

0 1

x

1

x

2

w

1 1

w

2 1

w

0 2

w

1 2

w

2 2

Adaline 3

w

3 1

w

3 2

z1z2

z

1

z

2

ψ ( x,w ) = y = x

1

x

2

(23)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 45

Madaline : Multi-Adaptive Linear Element

x 1x 2

x 0 x 1

x 2 z

1

z

2

z 1

z 2

Madaline : Multi-Adaptive Linear Element

ψ

(

x,w

)

=x1x2

x 2

x 1

Adaline avec pré-traitement polynomial

x

0

x

1

x

2

Adaline

x

2

x Id x

2

Id

w

0

w

1

w

2

w

3

w

4

w

5

w

1

x

1

+ w

2

x

12

+ w

3

x

1

x

2

+ w

4

x

2

+ w

5

x

22

+ w

0

= 0

Ellipse de séparation

(24)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 47

Perceptron

Perceptron

Rosenblatt F., 1957, 1962*

* Rosenblatt F. (1957) : « The perceptron: a perceiving and recognizing automaton », Reports 85-460-1, Cornell Aeronautical Lab., Ithaca, N.Y.

* Rosenblatt F. (1962) : « Principles of Neurodynamics: perceptrons and theory of brain mechanisms », Spartan Books, Washington.

1957, Frank Rosenblatt

Le perceptron ne désigne pas un seul modèle mais regroupe une importante famille d ’algorithmes.

Le perceptron = machine adaptative employée pour résoudre des problèmes de classement (discrimination).

X ψ ( x,w )

Perceptron

Rosenblatt F., 1957, 1962

X

i=0n

w

i

ϕ

i

(x) ψ ( x,w ) = f(w

T

ϕ)

w0

w1

wn

ϕ

1

ϕ

2

ϕ

n

f(x)= 1 si x≥0

−1 si x<0

⎧

⎨

⎪

⎩ ⎪

la rétine

qui reçoit les informations de l'extérieur

la cellule de décision les cellules d'association

chaque cellule possède une fonction

de transition définie sur la rétine : ψ ( x,w ) = f w

0

+ w

i

ϕ

i

(x)

i=1 n

⎛ ∑

⎝

⎜ ⎞

⎠

ϕ

i

( ) x : R → ℜ R

w

T

= ( w

0

, w

1

,K , w

n

)

ϕ = ( 1,ϕ

1

(x), ϕ

2

(x),K ,ϕ

n

(x) )

1

(25)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 49

Perceptron

Cas de deux classes

x x x

x x

x x x x

x

o o o

o o

o o o

o o o

x

i

C

2

C

1

ψ (x,w)=1 ψ(x,w)= -1

ψ ( x,w) = f w

0

+ w

i

ϕ

i

(x)

i=1 n

⎛ ∑

⎝

⎜ ⎞

⎠ =

1 si x ∈C

1

−1 si x ∈C

2

⎧

⎨

⎪

⎩ ⎪

Un perceptron peut être vu comme un classificateur à 2 classes : C

1

= { xR : ψ (x,w) =1 }

C

2

= { xR : ψ (x,w) = −1 }

Perceptron

Cas de deux classes

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 :

x

k

,d

k

( )

L’erreur quadratique globale ou (MSE) est :

x

k

, d

k

( )

R ˜

Perceptron

(w) = 1 N

R ˜

Perceptronk

(w)

k=1 N

= w

T

( ϕ

k

d

k

)

k:xkmal classé

{ ∑ }

Il existe plusieurs algorithmes d’apprentissage.

ϕ

k

= ( 1, ϕ

1

(x

k

), ϕ

2

(x

k

), K ,ϕ

n

(x

k

) )

d

k

= 1 si x

k

C

1

d

k

= −1 si x

k

C

2

⎧

⎨ ⎪

⎩ ⎪

w

T

ϕ

k

> 0 pour x

k

∈C

1

w

T

ϕ

k

< 0 pour x

k

∈C

2

⎧

⎨

⎪

⎩ ⎪

x

k

, w

T

( ϕ

k

d

k

) > 0

R ˜

Perceptronk

(w) = − w

T

( ϕ

k

d

k

)

(26)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 51

Perceptron

Cas de deux classes

Critère d'arrêt = taux de classement satisfaisant.

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

w

R ˜

Perceptronk

(w) = ∂ R ˜

Perceptronk

(w)

∂w = − ϕ

k

d

k

w(t + 1) = w(t) − ε(t)∇

w

R ˜

Perceptronk

(w) t

Le pas du gradient

Le gradient instantané

w t ( )

x

k

, d

k

( )

ϕ

k=

(

1,

ϕ

1(xk),

ϕ

2(xk),K,

ϕ

n(xk)

)

Perceptron

1- A t=0, tirer au hasard!

2- Présenter une forme!

3- Calculer la sortie du perceptron et la comparer à !

4- ! Si est bien classé :!

! Si est mal classé : !

Où est le pas du gradient.!

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

w(0) = ( w

0

(0), w

1

(0), K , w

n

(0) )

T

ε ( ) t

x

k

, d

k

( )

f w

0

+ w

i

ϕ

i

(x)

i=1 n

⎛ ∑

⎝ ⎜

⎞

⎠ ⎟ = f w (

T

ϕ

k

)

w(t + 1) = w(t) x

k

x

k

w(t + 1) = w(t) + ε (t) ϕ

k

d

k

Algorithme d ’apprentissage : cas de 2 classes

ϕ

k=

(

1,

ϕ

1(xk),

ϕ

2(xk),K,

ϕ

n(xk)

)

y

k

f w (

T

ϕ

k

) = d

k

f w (

T

ϕ

k

) d

k

w0(t+1) w1(t+1)

M wn(t+1)

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

= w0(t) w1(t) M wn(t)

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

+ε(t)dk 1 ϕ1(xk)

M ϕn(xk)

⎛

⎝

⎜

⎜

⎜

⎜

⎞

⎠

⎟

⎟

⎟

⎟

(27)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 53

Exemple de Perceptron

1 1

1 -1

1 1 1

1

-1 1 1

1

-1 -1 -1 1

x

0

x

1

x

2

d

x

1

x

2

x

3

x

4

E

N

= { ( x

1

,d

1

) , ( x

2

,d

2

) ,..., ( x

N

,d

N

) }

ψ ( x ,w ) = x

1

x

2

w

i

ϕ

i i=0

n

(x)

w

0

w

1

w

2

ϕ

1

( ) x

k

= x

1 k

x k

x2

x1

ϕ

2

( ) x

k

= x

2 k

1

Applet : http://lcn.epfl.ch/tutorial/french/perceptron/html/index.html

p i 2

Perceptron

Cas de p classes : C

1

, C

2

, …, C

p

X

j=0nwijϕj(x)

ψ ( x,w )

wi0

wi1

win

ϕ

1

ϕ

2

ϕ

n

1

Max

wpjϕj j=0 n

(x)

w2jϕj j=0

n

(x)

w1jϕj j=0

n

(x)

ψ ( x, w ) = C

i

sij≠ i, w

i T

ϕ > w

j

T

ϕ oùϕ = ( 1,ϕ

1

( ) x

2

( ) x ,K ,ϕ

n

( ) x )

ou ψ ( x, w ) = C

i

siji, w

i k

ϕ

k

> w

j k

ϕ

k

k=1 n k=1

n

⎧

⎨

⎪

⎩

⎪

1

(28)

EPAT’14, Carry-Le-Rouet 7-12 juin 2014 Apprentissage par réseaux de neurones artificiels / Younès Bennani (LIPN-Univ. Paris 13) 55

Perceptron

1- A t=0, tirer au hasard la matrice des poids!

2- Présenter une forme!

3- Calculer la sortie du perceptron et la comparer à !

4- ! Si est bien classé :!

! Si est mal classé : !

Où est le pas du gradient.!

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

valeur acceptable de l’erreur!

w(0)

ε ( ) t

x

k

C

i

ψ ( x

k

, w ) = C

j

j = Arg max

l

w

lT

ϕ

k

( )

w(t + 1) = w(t) x

k

x

k

w

i

(t + 1) = w

i

(t) + ε( t)ϕ

k

Algorithme d ’apprentissage : cas de p classes

C

i

w

j

(t + 1) = w

j

(t) − ε(t) ϕ

k

ψ ( x

k

,w )

C

j

= C

i

C

j

C

i

w

l

( t + 1) = w

l

(t) ∀ li et lj

Perceptron et Adaline

Cas de 2 classes

Classe A Classe B

Solution trouvée Par l ’Adaline Meilleure séparation robuste Solution trouvée Par le Perceptron Sépartion qui minimise Le nombre d ’erreur.

Pe rc ep tr o n Adaline

+

Professeur Sortie calculée

Erreur

+

Professeur Sortie calculée

Erreur

Références

Documents relatifs

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Très utilisés en hydrologie et appliqués également à la modélisation hydrodynamique des aquifères karstiques, les réseaux de neurones sont tout d'abord abordés dans cet article

D’autre formes de fonctions sont parfois utilisées, telles que des fonctions binaires à seuil (figure a et b) ou, linéaires à seuil (figure 4, c) ou encore des fonctions en

Dans ce travail, nous étudions l’utilisation des réseaux de neurones artificiels pour l’identification de systèmes dynamiques. Nous nous concentrons sur la représentation

Dans ce cas, l’erreur quadratique moyenne, la variance de l’erreur quadratique sur chaque classe, la marge et le taux de détection sont calculés sur la meilleure configuration des

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Parmi les différentes architectures des réseaux de neurones artificiels nous avons adoptée pour cette étude les Perceptrons Multi-couches (MLP, Multi Layer Perceptron) [4].. Les

En dépit des résultats trouvés, on remarque que les réseaux de neurones peuvent identifier d’une façon plus fiable et rapide les paramètres du matériau à partir d’une