• Aucun résultat trouvé

Les objectifs du connexionnisme•Imitation du cerveau

N/A
N/A
Protected

Academic year: 2022

Partager "Les objectifs du connexionnisme•Imitation du cerveau"

Copied!
27
0
0

Texte intégral

(1)

Réseaux de neurones connexionnisme

résumé de cours et exercices

Pierre De Loor CERV-ENIB deloor@enib.fr

Les objectifs du connexionnisme

• Imitation du cerveau

– Absence de localisation de l’information – Fonctionnement massivement parallèle – Créer artificiellement une signification – Auto organisation

– Émergence de configurations globales issues de connexions entre éléments simples

– Système non déterministe

Un premier réseau de neurone

couche de sortie

couche « cachée »

couche d’entrée

entrées sorties

0 1 -7 4.2

0 0 1

(2)

Un premier neurone formel

=

= n

k wk ik

I 1 *

e I

I

f

= + 1 ) 1 (

y i1

i2

i3

in

w1

w2

w3

wn

⎭⎬

⎩⎨

⎧ >

= on

T I f si I y f

sin 0

) ( ) (

Une première illustration avec JavaNNS

• Démarrez javaNNS

• Chargez le réseau font.net – 576 neurones d’entrées – 2 paquets de 24 neurones cachés

• 1 pour les lignes

• 1 pour les colonnes – 75 neurones de sorties

– 150 patterns de 75 caractères (2 par caractères) – Au chargement, le réseaux reconnaît ces caractères – Vérifiez le

– Réinitialisez-le

– Tester l’apprentissage tel qu’il est configuré en observant la progression des erreurs

Le perceptron

(3)

Le Perceptron

Warren Mc Culloh et Walter Pitts 1943

Vecteur d’entrées continues + ou –

Sortie +1 ou -1 (selon catégorie)

Apprentissage (Rossenblatt 1958) – Pour chaque nouvel exemple :

=

= nk wk ik

I 1 *

0 , 1 , 1

=

⎟⎟

⎜⎜

<

>=

= +

T ent classiquem

T siI

T y siI

⎟⎟⎠

⎜⎜ ⎞

= + +

=

fausse est elle si

correcte est réponse la si

x y w wnew old

1 1

*

* β

β

x2 x1

y

w1 w2

Le Perceptron

exercices

Catégorie A (+1) A1=(0.3,0.7) A2=(0.7,0.3)

Catégorie B (-1) B1=(-0.6, 0.3) B2=(-0.2, -0.8)

A1 B1 A2

B2

Départ : w0=(-0.6,0.8)

A1(0.3,0.7) →I=0.38 →y=1 exemple bon w1=(-0.6+1*1*0.3,0.8+1*1*0.7) w1=(-0.3,1.5)

A2(0.7,0.3) w2 = B1(-0.6,0.3) w3 = B2(-0.2,-0.8) w4 =

w0 w1

terminez l’apprentissage

le résultat final re-classe-t-il tous les patterns ?

Le Perceptron

exercices

Tester la classification de nouveaux points. Comment sont-ils classés ? Observer cette valeur relativement au vecteur des poids.

Implémenter un algorithme de calcul de sortie d’un perceptron (java).

Implémenter un algorithme d’apprentissage du perceptron.

Utiliser cet algorithme pour répondre aux questions suivantes :

Au fur et à mesure que l’on ajoute des points, que se passe-t-il pour le vecteur des poids ?

Quand le vecteur des poids est à peu près bon, est-ce que quelque chose peut l’amener à diminuer ? Si oui quoi ?

Quelle conséquence cela a sur l’écriture d’un programme informatique?

Quelles sont vos remarques concernant l’utilisation du perceptron comme modèle biologique du système neuronal ?

Que se passe-t-il si un point noté +1 doit désormais être noté -1 ?

Décrire un problème que le perceptron ne peut pas résoudre.

(4)

Apprentissage par minimisation d’erreur

Minimisation d’erreur : Adaptive linear element.

Bernard Widrow et Ted Hoff 1960

=

= nk wk ik

I 1 *

0 , 1 , 1

=

⎟⎟

⎜⎜

<

>=

= + T

T siI

T y siI

x2

x1

y w1

w2

Valeur désirée

comparaison Erreur : E

correction ' (0 1)

*

* 2

<

<

= +

=

β β

β age apprentiss d taux

x x w E wnew old

delta-rule

• La mise à jour des poids n’implique pas une sortie conforme

• Cette mise à jour est ‘itérée’ autant de fois que nécessaire

• Elle peut modifier la valeur des exemples précédents

• Donc il faut revoir ces exemples

Minimisation d’erreur :

Adaptive linear

element. Bernard Widrow et Ted Hoff 1960

(5)

Algorithme d’apprentissage de Adaline

Pour chaque exemple { calculer I, Y et E si E\=0 {

pour l’exemple en cours à tous les exemples précédents {

calculer E si E\=0 {

calculer L=x12+x22+…

pour chaque poids wi{

deltai= +(B*E*xi)/L;

wi=wi+deltai } calculer E } } } }

Mécanisme non trivial

Exemple (avec B=0.5 et w initial = (-0.6;0.8) :

A1=(0.3,0.7)

I=-0.18+0.56=0.38

Y=+1

Tout va bien

B1=(-0.6,0.3)

I=0.36+0.24=0.6

Y=+1 -> E=-2

L(B1)=0.36+0.0=0.45

delta1=(0.5*-2*-0.6)/0.45=1.3

delta2=(0.5*-2*0.3)/0.45=-0.7

W=(0.7,0.1)

Il n’y a plus d’erreur pour B1 Car I=-0.39 -> Y=-1

Il n’y a pas non plus d’erreur pour A1, donc c’est terminé

Adaline exercices

• Tracer l’évolution du vecteur des poids lors d’un apprentissage d’Adaline sur les exemples suivants :

A = +1 A1=(0.3,0.7) A2=(0.4,0.9) A3=(0.5,0.5) A4=(0.7,0.3)

Taux d’apprentissage B=0.5 B = -1 B1=(-0.6,0.3) B2=(-0.4,-0.2) B3=(0.3,-0.4) B4=(-0.2,-0.8)

Adaline exercices

• Combien de fois avez-vous du ajuster les poids pour B1 et au total ?

• Quel est le rôle de la règle delta par rapport aux ‘pattern’ à apprendre

• Supposons que w=(0.8,1.0) et qu’un nouveau pattern B5=(0.6,-0.2) soit à apprendre. Que fait l’algorithme ?

• Combien de fois a-t-il fallu modifier le vecteu

• L’apprentissage est-il terminé ?

• Pourquoi ?

• Tenter de faire apprendre un XOR à Adaline

(6)

Un peu d’histoire

Minsky et Papert (1969) : Perceptron

– Montrent que les problèmes non linéairement

séparables ne peuvent être appris

– Donc les RDN ne peuvent pas être utilisés pour ce type de problème (on voulait leur faire faire de la logique = raisonnement)

– N’imaginent pas qu’il soit possible de mettre en œuvre des procédures d’apprentissage sur plusieurs couches de neurones formels

Rumelhart et Le Cun (1985) : Retro-Propagation

Du perceptron aux couches cachées

Rétro-propagation

sorties

couche de sortie

couche « cachée »

couche d’entrée

entrées

0 1 -7 4.2

0 0 1

=

= n

k wk ik

I 1 *

=

=

=

<

<

=

=

= +

=

n

j sortie j ij middle middle i

i

actuel j desiré j sortie j

ij

E dI w

I f E d

cachée couche erreur

y y E

sortie en erreur

I f E w

I f I f I f

simple dérivée

I I Exp f

sigmoide souvent I f y

1

) ) (

( (

: :

) 1 0 ( ) (

*

*

)) ( 1 ( ) ( ) ( '

: ) ( 1 ) 1 (

) (

β β

(7)

Retro-propagation

Pourquoi ça marche ?

Erreur1 Erreur2 Erreur3 w1w2

w3

• Une erreur positive correspond à une sortie trop faible

(Réciproquement une erreur négative correspond à une sortie trop forte)

Plus il y a d’erreur de sortie, plus i doit être augmenté Pour corriger cette erreur

Plus i à d’influence sur une erreur (wj) plus i est facteur d’erreur

Plus f(I) à une pente raide, plus il faut la corriger

i ==n

j sortie j ij middle i middle

i wE

dI I f E d

1

) ) ( ( (

Retro-propagation

Faire {

Pour chaque pattern {

Propager l’entrée vers les sorties Calculer les erreurs de la couche de sortie Calculer les erreurs de la couche cachée Ajuster les poids entre c.cachée et c.sortie Ajuster les poids entre c.entrée et c.cachée

}

} Tant que (la somme des erreurs de sortie n’est pas acceptable)

Test du XOR

• Chargez le XOR dans SNNS

• Tester l’apprentissage avec rétro- propagation et avec souvenirs

• Varier les paramètres des algorithmes et

évaluer leur impact sur les temps

d’apprentissage

(8)

Les neurones ‘unit’ de SNSS

Attributs importants :

– Type : input/output/dual/hidden/special – activation(a)/bias(θ)/output(o):

– Exemple : Act_logistic : )) ( ( ) (

) ), ( ), (

* ( ) 1 (

t a f t o

t a t o w f t a

j out j

i

j j i ij act j

=

=

+

θ

) ) ( _(

1 ) 1 1

( ∑

+

=

+

i j j ijo t j w

e t

a θ

SNNS : Fonctions d’activations

Fonction Nom Usuel Expression

Act_Identity Linéaire a(t) = net(t)

Act_IdentityPlusBias Linéaire avec Seuil a(t) = net(t)+θ

Act_Logistic Sigmoïde a(t) = 1/(1+exp(-(net(t)-θ))

Act_Perceptron Perceptron a(t) = 0 si net(t) < θ

1 si net(t) > θ

Act_Signum Binaire a(t) = -1 si net(t) < 0

0 si net(t) = 0

1 si net(t) > 0

Act_Signum0 Binaire incluant zéro a(t) = 0 si net(t) = 0

-1 si net(t) < 0

1 si net(t) > 0

Act_StepFunc Échelon a(t) = 1 si net(t) >0

0 si net(t)<=0

Act_Tanh Tangente Hyperbolique a(t) = tanh(net(t)+ θ)

A propos des biais sur NNS

• Le seuil est remplacé par une entrée supplémentaire appelée biais

• Pour le perceptron biais = seuil

• Une représentation analogue est faite pour les autres types de neurones.

• Pour la sigmoide (logistic_function) il y a un paramètre – Les unités d’entrées et de sorties n’ont pas de paramètres

particuliers, elles transfèrent juste l’information

• Faites des réseaux très simples pour bien comprendre les valeurs des paramètres ‘activation, initial activation et bias’ de ces unités

(9)

SNNS : fonctions de sorties

Fonction Nom Usuel Expression

out(t) = 1 si a(t) > 1

Out_Clip_0_1 Linéaire bornée {0,1} out(t) = a(t) si 0 < a(t) < 1

out(t) = 0 si a(t) < 0

out(t) = 1 si a(t) > 1

Out_Clip_1_1 Linéaire bornée {-1,1} out(t) = a(t) -1 < a(t) < 1

out(t) = -1 si a(t) < -1

Out_Identity Linéaire out(t) = a(t)

out(t) = 1 si a(t) > 0.5

Out_Threshold_0.5 Binaire Décalée out(t) = 0 si a(t) < 0.5

Retro-propagation avec souvenir (momentum back-propagation)

) 1 0 ( ) (

*

* < <

=

wij β E f I β ) 1 0 (

*

* + ∆ < <

=

wij β E xi α wijprécédent α

Introduction du souvenir

Ajoute une inertie aux variations des poids Évite l’accrochage de minimums locaux précédent : accumulation des variations sur l’ENSEMBLEdes patterns d’apprentissage !!

Se calcul à partir du passage de tous les patterns

Apprentissage de concepts

Siemens Frigidaire

Baleine Vache

Peugeot Mobylette

Persil Carotte

Autruche Moineau

non

oui

(10)

Apprentissage de concepts

Énumerez ce à quoi vous font penser ces exemples

Proposez une dizaine d’attributs pertinents

– Exemple : naturel/artificiel …

Testez les avec ces 2 exemples de vérification :

Faite le apprendre à un réseau de neurones

Tester l’impact des attributs, du taux d’apprentissage, du type de neurone utilisé, du nombre d’exemples d’apprentissage

Lien avec les théories de l’apprentissage ?

Sarbacane Fusil

Dirigeable Avion

Torball Football

non oui

Format des fichiers de pattern SNNS

Préserver les lignes d’entête comme ceci :

SNNS pattern definition file V3.2 generated at 17 Janvier 2006 by Pierre De Loor

# mettre ensuite les commentaires commencent par des #

# ceci est un exemple de pattern pour l’exercice

# les entrées sont ‘sait chanter’ et ‘est petit’

No. of patterns : 3 No. of input units : 2 No. of output units : 1

# Input pattern 1 le moineau : 1 1

# Output pattern 1:

1

# Input pattern 2 l’autruche : 0 0

# Output pattern 2:

0

# Input pattern 2 la carotte : 0 0.25

# Output pattern 2:

1

Hebbian Learning

(11)

Apprentissage « Hebbien » (Hebb 1949)

• Plus proche des neuro-sciences

Quand un axone de la cellule A est suffisamment proche pour exciter la cellule B de façon répétitive ou persistante, il se produit un processus de croissance ou un changement métabolique tel que l’efficacité de

A, en tant que cellule excitant B s’en trouve augmentée.

Des groupes de neurones qui tendent à s’exciter simultanément forment un ensemble de cellules dont l’activité peut persister à la suite du

déclenchement d’un événement et peut servir à le représenter La pensée est l’activation séquentielle de plusieurs groupes d’ensemble

de cellules

Apprentissage « Hebbien » (Hebb 1949)

• Stimulus/réponse inconditionnels et conditionnels (Pavlov)

• Aspect dynamique

• Oui mais …

– Dans quelle proportion (vitesse, borne)?

– Comment diminuer les liens non significatifs ? – Neo-hebbian learning

Neo-hebbian learning

] ) ( )[

( ) ( ) ( ) ( ) 1

(t w t w t Fw t Gy t y t T

wij + − ij =∆ ij =− ij + j i −τ − Vitesse de descente

lorsqu’il ne se passe rien Stimulus externe seuil

temps de parcourt

=

− +

+

=

=

+ n

i i ij j j j j

jt y t y t Ay t I t w t y t T

y

1

] ) ( )[

( ) ( ) ( ) ( ) ( ) 1

( τ

Expression nulle si y(t-τ)<T

J instar

i outstar

(oubli)

Loi de Hebb : renforcement si activation simultanée

(12)

Exemple

• Apprendre le T

i

outstar j

instar Stimulus

externe

Stimulus inconditionné Réponse inconditionnée Stimulus conditionné Réponse conditionnée

Apprentissage Hebbien différentiel

• Pallier aux difficultés suivantes : – Se rapprocher du modèle biologique – Limiter la valeur des poids

– Apprentissage négatif (diminution explicite des poids quand deux neurones sont en opposition)

yj yi

w

ij

= ∆ ∆

∆ β * *

Drive-Reinforcement Theory

• Se rapprocher de l’apprentissage naturel – Apprentissage non linéaire

• Lent au début et rapide ensuite par accumulation d’expérience

– Mémorisation des stimulus

• Le stimulus conditionnel avant l’inconditionnel favorise l’apprentissage

=

=

τ β

1

) ( ) ( ) ( ) (

k

i ij j

ijt y t w t k y t k

w

mémorisation

(13)

Apprentissage compétitif

Apprentissage compétitif

• Pas de feed-back : systèmes auto-organisés

• Exemple : Kohonen (inhibition latérale)

carte

Auto-organisatrice

Liens d’organisation Renforce les voisins Inhibe les neurones éloignés

excitation

Distance du neurone gagant

Kohonen

Vision et ouïe du chat

Topologie : les neurones activés par les hautes fréquences sont localisés à l'opposé des neurones sensibles au basses fréquences

Un neurone va représenter une classe

– Identification de relief

– Identification de couleurs

– Deux neurones proches représentent des informations similaires

(14)

Carte topologique ?

Carte topologique

Election d’un gagnant

entrée Couche de Kohonen

Pour une entrée I = [I1…IM] Un neurone est plus Adapté que les autres Les poids Entreé-Kohonen sont modifiés pour accroitre Cette adaptation

Effet compétitif implicite (pas de poids à calculer)

(15)

Quel est le neurone le mieux adapté

• Les poids entre couches entrée-Kohonen reflètent une distance entre le neurone et l’entrée

2

1

(

,

)

=

=

M

j

j i

j

w

I di

Entrée : I couche de kohonen 1

Neurone i 2

M

wi1

wi2

wiM Si les poids valent les entrées la distance est nulle

Apprentissage

• Selection du neurone gagnant par calcul des distances

• Modification des poids fonction de la distance du gagnant

• La carte s’organise pour

• Si k est le neurone gagnant

)) ( ) ( (

* ) ( ) ( ) 1

(t w t t I t w t

wkj + = kj +

η

Jkj

Coefficient d’apprentissage décroissant avec le temps

Apprentissage

Pour les autres neurones

Se rétrécie avec le temps

)) ( ) ( (

* ) tan (

* ) ( ) ( ) 1

(t w t t f dis cedek I t w t

wij + = ij +

η

Jij

(16)

Kohonen autre exemple

Réseaux attracteurs

Réseaux récurrents

• Il existe des boucles d’influence entre neurones

• Plus proche de la définition des systèmes complexes

• Il est donc plus compliqué de mettre en

œuvre un apprentissage

(17)

Réseaux de Hopfield

ou réseau à attracteur mono couche

Hopfield

Activation d’un neurone

• Modèle simplifié :

2 2

-4

=

= nk wk ik

I 1 *

max max

min min

max

) min

(

I I si I y

I I si I y

I I I si I I f y

>

=

<

=

<

<

=

=

0 1

0 0

>

=

= I si y

I si y

Réseaux de Hopfield propagation d’entrées

Mettre toutes les sorties à 1 (arbitraire)

Appliquer un pattern d’entrée

Pour chaque neurone i Activité de i = 0 Pour chaque neurone j≠i

• difference = activité de j – entrée i

• Resultat = difference * w(i,j)

• Activité de i = activité de i + resultat

Si activité de i > 0 alors la sortie de i vaut +1 Si activité de i = 0 alors la sortie ne change pas Sinon la sortie vaut -1

Exemple

entrées

sorties

0 0

0 0

0 0 -1

-1 3 -1 -1

-1 -1 3 -1 -1

-1 -1 3 -1

-1 -1 -1 3

-1 -1 -1 -1

3 -1 -1 -1

-1 3 -1 -1

Ce réseau connaît : 1 -1 -1 1 -1 -1 -1 1 -1 -1 1 -1 -1 -1 1 -1 -1 1

(18)

Exemple : propagation

-1 -1 1 -1 -1

sorties 1

-2

activité 0 -2 0 1

6 0 1

-2 0 1

-2 0 1

0 0 1

-2 0 1

-1 -1 1 -1 -1 1

Entrées

Itération 1

Sorties précédentes

Exemple propagation : stabilisation

-1 -1 1 -1 -1 1

sorties

-4 8

activité

0 2 -1

0 2 -1

-2 0 1

0 2 -1

0 2 -1

-2 0 1

-1 -1 1 -1 -1 1

Entrées

Itération 2

Sorties précédente

Exercice

• Tester une valeur proche d’une des valeurs apprises

• Conclusion

(19)

Mémoire auto-associative

Apprentissage

Loi de Hebb

– Sur p exemples

– Sur un modèle simplifié, wijest le nombre de fois où les bits sont égaux – le nombre de fois où ils sont différents

– Sur modèle simplifié à n neurones on peut apprendre 0.15*n prototypes

=

= p

k k j k i

ij x x

w 1 *

Apprentissage des poids en C

void CalculateWeights(NET* Net)

{

INT i,j,n;

INT Weight;

for (i=0; i<Net->Units; i++) {

for (j=0; j<Net->Units; j++) {

Weight = 0;

if (i!=j) {

for (n=0; n<NUM_DATA; n++) {

Weight += Input[n][i] * Input[n][j];

}

}

Net->Weight[i][j] = Weight;

}

}

}

Grille de i x j neurones

•NUM_DATA exemples

stockés dans le tableau

Input

•Net->Units

: nb

neurones

(20)

Auto-association par propagation aléatoire en C

Les sorties des neurones sont initialisées par les valeurs du pattern à reconnaitre

Tant qu’il n’y a pas de stabilisation

Recalculer une sortie choisie aléatoirement

void PropagateNet(NET* Net)

{

INT Iteration, IterationOfLastChange;

Iteration = 0;

IterationOfLastChange = 0;

do {

Iteration++;

if (PropagateUnit(Net, RandomEqualINT(0, Net->Units-1)))

IterationOfLastChange = Iteration;

} while (Iteration-IterationOfLastChange

< 10*Net->Units);

}

La sortie de iest la somme des sorties des autres neurones j liés àiet pondérés par le poids Net->Weight[i][j]

Il y a ensuite un seuillage

BOOL PropagateUnit(NET* Net, INT i)

{

INT j;

INT Sum, Out;

BOOL Changed;

Changed = FALSE;

Sum = 0;

for (j=0; j<Net->Units; j++) {

Sum += Net->Weight[i][j] * Net->Output[j];

}

if (Sum != Net->Threshold[i]) {

if (Sum < Net->Threshold[i]) Out = LO;

if (Sum > Net->Threshold[i]) Out = HI;

if (Out != Net->Output[i]) {

Changed = TRUE;

Net->Output[i] = Out;

}

}

return Changed;

}

Exercice sur machine

Utilisez

– soit l’applet fournie (fermée), – soit le code C (ouvert)

Expérimentez l’apprentissage de différents patterns et éprouvez l’auto-association

Testez pour différentes tailles de réseaux le nombre de patterns qui sont appris

L’ordre d’apprentissage correspond-il à l’ordre d’oubli ?

Les travaux de Belson et Daucé

(21)

Réseaux attracteurs à deux couches

BAM : Bidirectional Associative Memory

• Bart Kosko

• Mémoire hétéro associative

Entrées A Entrées B

Tous les liens ne sont pas représentés Associe A1 ↔B1; A2 ↔B2; , …etc dans les deux sens

ART : Adaptive Resonance Theorie

• Théorie développé par Grosberg et Carpenter en 1986

(ART1, ART2, ARTMAP)

Voie par laquelle nous pourrions vraiment autonomiser des machines … Objectif de l’ART : gérer le dilemme Stabilité/Plasticité Stabilité : les patterns reconnus sont insensibles au bruit

Plasticité : Le système doit être capable d’apprendre de nouveaux patterns

Les réseaux ART

• Combinent apprentissage supervisé et non- supervisé (compétition, clustering)

• Créés dynamiquement de nouvelles catégories

• Motivation biologique

• Modélisent les mémoires à court et à long

termes

(22)

Principe de la résonance adaptative

Couche mémoire

Couche d’entrée

Trial/selection Expectation/prévision

Pattern d’entrée

Court terme Long terme

Principe de la résonance adaptative

Résonance : renforcement mutuel Adaptative : les poids sont ajustés

en cas de résonance catégorisation

catégorisation

présentation hypothèse

confirmation

Le principe de résonance

• La résonance est liée au fait que les connexions se renforcent perpétuellement si une entrée est reconnue. Les patterns « bottom-up » résonnent avec les patterns « top- down »

• Quand le réseau reconnaît une entrée, aucune recherche n’est nécessaire. La résonance est immédiate

• Mais s’il ne la reconnaît pas, il doit rechercher une autre catégorie, comment faire ?

– La couche mémoire est compétitive (à la kohonen)

• Un seul neurone gagnant (dans les premières versions) – En fait cette couche est composée de « bascules » temporisées

(ART toogle)

(23)

ART toogle : un dipôle

Signal De la couche d’entrée

Signal De mise à 0

globale

+ +

+ +

- -

Sortie OFF Sortie ON

Lorsque qu’un signal de mise à 0 arrive :

- si la bascule est active alors elle se désactive et le reste un certain temps même après l’absence du signal de mise à 0

- si la bascule est inactive, elle reste inactive mais peut être réactivé immédiatement après la disparition du signal de mise à 0

couche compétitive

Caractéristique des bascules sur ART 1

Si le signal de mise à 0 est faible les entrées peuvent activer les sorties ON d’un toogle

Si une entrée « disparaît », il se produit un rebond : la sortie ON est désactivée, la sortie OFF est activée, puis les deux sont désactivées.

Si le signal de mise à 0 devient important les deux sorties auront tendance à devenir inactives avec une dynamique dépendant de leur état courant

Si le signal de mise à 0 disparaît, la réactivation des sorties dépendra de leur état au moment de l’arrivée du signal

Le mécanisme est compétitif, un seul toogle est vainqueur (voir plus loin)

ART 1 en action

Couche mémoire

Couche d’entrée

Trial/selection Expectation/prévision

Pattern d’entrée

Reset global

+ -

-

(24)

ART 1 en action

• Si la couche d’entrée entre en résonance avec la mémoire alors elle propose le pattern d’entrée au « reset global ».

– L’activation du reset (par le pattern d’entrée) est compensée par sa désactivation (par la couche d’entrée) – Le reset n’est pas activé

– La résonance ne s’arrête pas

ART 1 en action

• Si il n’y a pas résonance : test d’hypothèses

– L’activité des neurones de la couche d’entrée diminue (voir plus loin)

– Le reset l’emporte

– La dynamique des toogles empêche le pattern (ou les ou toogle) précédemment actifs de la couche mémoire d’être activés : la prédiction était fausse et est inhibée – Un autre pattern est naturellement sélectionné – La dynamique de l’inhibition doit être subtile pour que l’on

test tous les patterns de mémoire possibles (il faut inhiber le temps de faire tous les tests)

ART 1 en action

• A chaque nouveau test une faible modification des poids des liens entre les couches est effectuée.

• Cette modification permet d’explorer différentes hypothèses.

• Plus on met de temps à trouver un pattern

correct, plus on modifie les poids.

(25)

ART 1 en action

• Vigilance :

– Le seuil d’activation du nœud « reset » caractérise la vigilance du réseau.

– Un seuil faible correspond à une grande vigilance (la moindre modification de l’entrée est détectée et relance une recherche)

– Un seuil fort correspond à une vigilance faible (le réseau a une vision plus globale ou approximative des patterns).

ART 1 en action : contrôle de gain et règle des 2/3

Couche mémoire

Couche d’entrée

Trial/selection Expectation/prévision

Pattern d’entrée

Reset global

+ -

-

+ + -

gain biais

+ 1

2 3

ART 1 en action : contrôle de gain et règle des 2/3

Le signal d’entrée arrive

– Le contrôle de gain active la couche d’entrée – La couche mémoire est également activée – Le gain diminue

– Les neurones de la couche d’entrée activés à la fois par les entrées et la mémoire restent actifs si ils sont soumis à 2 activations sur 3

– Les autres se désactivent (moins de 2 activations sur 3) – Si il n’y a pas résonance, le nombre de neurones actifs

va décroitre, le reset intervenir.

(26)

ART 1 un algorithme

ART 1

Avantage

– Apprentissage autonome

• pas de supervision,

• ajout d’exemples à la volée,

• ajout de neurones dans la mémoire à la volée

• Permet d’ajuter le « niveau de détail que l’on cherche à apprendre

• Mémoire associative autonome

Inconvénient

– Entrées binaires -> ART 2

– Capacité 2^n (n neurones en couche mémoire), inconvénient ??

– Dilemme plasticité/stabilité

Usage :

– Reconnaissance de la parole, de musiques … – Reconnaissance de formes

– Détection d’image radar

– Classification (100 000 données à classer chez boing)

ART MAP

(27)

Ne serons pas vus

• Réseaux attracteurs statistiques

• Réseaux à avalanche

• Réseaux récurrents à backpropagation

• Réseaux de Kohonen avancés

• …

• …

Bibliographie

Maureen Caudill et Charles Butler :

Understanding Neural Networks, Computer explorations,

volume 1 et 2, 1992.

Claude Touzet

: Les réseaux de neurones artificiels,

introduction au connexionnisme,

1992.

Antoine Cornuéjols et Laurent Miclet

:

Apprentissage artificiel, concepts et algorithmes,

eyrolles, 2002.

Références

Documents relatifs

L'analyseur AX460, outre sa fonction de contrôle unique de point de consigne pour ajout acide et base, peut être configuré avec des contrôleurs indépendants. Pour éviter

 Pour préparer la rentrée, vous pouvez, dans votre livre, reprendre les exercices de synthèse de chaque chapitre (réussir à les faire parfaitement), et quelques

par trimestre payable d’avance □ Chèque par trimestre payable d’avance Tout règlement par chèque devra comporter au dos de celui-ci les références de votre

À l’observer en classe et dans le bureau lors de l’en- tretien familial, hypothèse peut être faite que Samy a les caractéristiques de ces « enfants bolides » comme l’écrit

Le stage comprend une période d’immersion à plein temps au début du semestre (stage bloc) suivi d’une période d’alternance entre le lieu de stage et la HEP (stage filé).. Dans

a) Les voitures peuvent être présentées aux vérifications techniques par un représentant de l’équipe. b) Un seul véhicule &lt; 3.5 t contenant les pièces de rechange

• Vitrage milieu: verre sablé avec bandes transparentes et bords décorés. • Vitrage arrière: thermofloat avec intercalaire

Prenez soin de votre peau avec un modelage ou soin visage de 25 minutes, et prolongez votre moment de relaxation pendant une heure dans notre espace détente : hammam,