• Aucun résultat trouvé

5.2 Activation et Apprentissage de la pr´esence

5.2.1 Activation corticale dans Bijama

Dans le mod`ele Bijama, les unit´es d’une carte, comme pr´esent´e au chapitre 3, re¸coivent en entr´ee l’´etat d’activation de bandes d’unit´es appartenant `a d’autres cartes corticales. Une unit´e Bijama u appartenant `a une carte connect´ee `a la carte i per¸coit donc des configurations d’activation d’unit´es de i (cf. figure 5.1(b)). Elle fournit une activit´e corticale, not´ee Aci(u), qui correspond `a la «proximit´e» entre la configuration d’activation per¸cue et la configuration d’activation qu’elle favorise, appel´ee prototype cortical de l’unit´eu pour la connexion `a la carte

i. (a) faible faible forte Reponse A Entree (b) (c) Bande percue par l’unite u

Configuration preferee de l’unite u C i (u) u carte i

Fig.5.1 – Activation corticale d’une unit´eu.(a) Bande corticale per¸cue par l’unit´eu. (b) Proto-type cortical de l’unit´eu. (c) Activation corticale de l’unit´eusuivant les configurations d’activit´e pr´esentes en entr´ee.

Cette notion ne correspond pas `a une distance, au sens math´ematique du terme. Prenons le cas d’une unit´eusp´ecialis´ee dans la reconnaissance de l’activation d’une bulle d’unit´es sp´ecifiques dans la carte distantei. Quand une telle bulle est per¸cue, l’unit´eudoit fournir une activit´eAci(u) importante. En l’absence de bulle dans la bande per¸cue par u, u doit fournir une Ac

i(u) nulle (cf. figure 5.1(c)).

Plus pr´ecis´ement, il s’agit dans notre mod`ele, pour ce qui est de la reconnaissance des entr´ees corticales, de comparer une configuration d’activation, qui exprime la pr´esence d’une bulle `a une certaine position dans la bande (cf. figure 5.1(a)), `a la r´epartition des activit´es A? des unit´es qui composent la bande. Cette configuration de r´ef´erence est mat´erialis´ee par les poids des liens corticaux (cf. figure 5.1(b)) : ces poids sont forts l`a o`u la bulle doit se trouver, dans la bande, pour activer l’unit´e u. Ainsi, si tous ces poids sont nuls, l’unit´e u ne s’active jamais. Les poids nuls ne signifient pas «s’activer en l’absence d’activit´e dans la bande». Nous utilisons dans notre mod`ele la r`egle d’apprentissage suivante pour le poids cortical reliant une unit´e `a l’unit´e distantei:

∆wi=ν(A?+ω)(A?−Ac)A?(i) (5.1) Dans cette ´equation,ν est la vitesse d’apprentissage,ω est un terme de fuite,Ac est l’activit´e corticale de l’unit´e qui prend en compte la connexion de poids wi, et les A? repr´esentent les activit´es globales des unit´es, obtenus apr`es la comp´etition d´ecrite au chapitre 4.

Nous d´etaillons dans les sections suivantes les raisons qui nous ont amen´ees `a choisir cette r`egle d’apprentissage, mais nous insistons ici sur le fait que les activations distantes des unit´es per¸cues sont trait´ees comme des valeurs bool´eennes «pr´esence/absence», ce qui est diff´erent du traitement de reconnaissance thalamique du mod`ele, o`u un prototype ´egal au vecteur nul signifie que l’unit´e a une forte activit´e de reconnaissance quand l’entr´ee est nulle, comme c’est le cas pour les cartes de Kohonen, lorsque la distance euclidienne est utilis´ee pour comparer les prototypes `a l’entr´ee.

5.2.2 Pr´esence et valeur

L’activation corticale, dans le mod`ele Bijama, se fait donc suivant la pr´esence d’activit´e, dans les unit´es distantes. Cela correspond `a l’apprentissage d’un bool´een. Par opposition, les cartes auto-organisatrices de Kohonen apprennent des valeurs r´eelles, m´ecanisme, ce que nous r´eservons comme nous l’avons dit `a l’apprentissage des donn´ees ext´erieures au mod`ele Bijama, dit apprentissage de donn´ees thalamiques (cf. chapitre 6). ´Etudions maintenant des exemples simples afin de mieux diff´erencier ces deux apprentissages.

Un cas simple de valeur r´eelle `a apprendre est celui d’un code couleur, par exemple un code RGB. Prenons donc le cas d’une couleur d´efinie par trois valeurs R(rouge), V(vert) et B(bleu), situ´ees entre 0 et 255. La valeur 0 signifie que la composante est enti`erement absente, tandis que la valeur 255 signifie que la composante est satur´ee. Un r´eseau de neurones charg´e de reconnaˆıtre et de classifier les diff´erentes couleurs compte des neurones sp´ecialis´es dans la reconnaissance de chaque couleur pr´esent´ee au r´eseau.

Ainsi, si on pr´esente r´eguli`erement la couleur noire (R :0,G :0,B :0) au r´eseau, un neurone se sp´ecialise sur cette couleur, donc s’active en sa pr´esence. L’absence d’une composante est ainsi tout autant susceptible de provoquer l’activation d’un neurone du r´eseau que sa pr´esence : les neurones du r´eseau apprennent ici `a s’activer suivant la valeur des composantes, et non pas suivant leur pr´esence. Si le prototype d’un neurone I est form´e par le vecteur (wR, wG, wB), alors, en pond´erant la distance entre prototype et entr´ee par σ, l’activit´e de I en pr´esence de l’entr´ee (R, G, B) peut ˆetre calcul´ee par :

AI = exp −(wRR)

2+ (wG−G)2+ (wB−B)2

σ

!

(5.2)

A l’oppos´e, prenons le cas d’un pari. On place devant des joueurs trois gobelets retourn´es, not´es G1, G2 et G3, qui peuvent ou non recouvrir des jetons. Un gobelet peut recouvrir au maximum 10 jetons. Lorsqu’un gobeletGirecouvrenjetons, on lui affecte la valeurGi= 0,1×n. On consid`ere alors les joueurs, que l’on repr´esente par des unit´es. Chaque joueur peut parier plus ou moins fortement sur la pr´esence de jetons sous chacun des gobelets. Un joueur J voit ses paris r´esum´es dans trois valeursw1J,wJ2 etwJ3.wiJ repr´esente le pari que fait le joueurJ sur le gobelet Gi. Chacune de ces valeurs est comprise entre 0 (pari nul) et 1 (pari maximal). De plus, `a chaque fois qu’un pari est r´ealis´e, on affecte `a chaque joueur J une valeur AJ, appel´ee activit´e de J, repr´esentant le gain que J a r´ealis´e. Cette valeur est satur´ee `a 1. Elle peut ˆetre calcul´e par : AJ = 3 X i=1 wiJ×Gi (5.3)

Ainsi, un joueur J pariant `a moiti´e sur le premier gobelet (wJi = 0.5) aura au plus une activit´e AJ de 0.5 si seul le premier gobelet recouvre des pi`eces. L’activit´e d’un joueur est

5.2. Activation et Apprentissage de la pr´esence

d’autant plus forte qu’il joue lorsque les gobelets sur lesquels il a pari´e recouvrent beaucoup de jetons. Lorsqu’un joueur obtient une activit´e non nulle, on dit que l’unit´e correspondant est activ´ee.

Consid´erons maintenant un ensemble de joueurs, qui effectuent des paris diff´erents. Si ils jouent lorsque aucun gobelet ne recouvre de jetons (G1 = G2 = G3 = 0), l’activit´e de tous les joueurs est nulle : en l’absence de jetons, il est impossible d’obtenir un gain. En revanche, si tous les gobelets recouvrent un maximum de jetons (G1 = G2 = G3 = 1), tous les joueurs obtiennent un maximum de gains. Cela montre que les unit´es (repr´esent´ees ici par les joueurs) ne consid`erent pas la valeur 0 de la mˆeme mani`ere que la valeur 1. En effet, elles sont sensibles, non pas `a lavaleur des composantes d’entr´eeG1, G2 etG3, mais `a leurpr´esence.

Ainsi, l’activation des unit´es diff`ere suivant qu’elles sont sensibles `a la pr´esence ou `a la valeur des composantes ´etudi´ees. Il en va de mˆeme de leur apprentissage : des unit´es sensibles `a la valeur des composantes peuvent apprendre `a s’activer pour des valeurs nulles de ces composantes, alors que ce n’est pas la cas si les unit´es sont sensibles `a la pr´esence des composantes.

La diff´erence essentielle est que, lorsqu’on est sensible `a la pr´esence des composantes de l’entr´ee, aucune unit´e n’a tendance `a s’activer du fait de l’absence d’un ´el´ement. Pour en revenir `

a notre exemple de pari, un joueur qui parie sur le premier gobelet n’augmente pas son gain lorsque le second gobelet se r´ev`ele vide. En revanche, dans le cas d’unit´es sensibles `a la valeur des composantes de l’entr´ee, une unit´e peut avoir tendance `a s’activer du fait de l’absence de composantes. Ainsi, une unit´e sp´ecialis´ee dans la d´etection de la couleur rouge a tendance `a s’activer lorsque les composantes de couleur G et B sont nulles.

L’´etat d’activation des unit´es corticales distantes, dans le mod`ele Bijama, que nous ´etudions dans la section pr´ec´edente, est trait´e suivant la pr´esence, et non suivant la valeur : une unit´e ne peut ˆetre sensible qu’`a la pr´esence d’activit´e dans les bandes d’unit´es distantes qu’elle per¸coit, et non pas `a l’absence d’activit´e.

5.2.3 Utilisation de l’apprentissage Hebbien

R`egle de Hebb

Le psychologue Hebb a propos´e en 1949 un mod`ele permettant d’expliquer comment les poids synaptiques entre neurones ´evoluaient [Hebb, 1949]. Selon lui, le poids synaptique wi entre un neurone u et une de ses entr´ees i change proportionnellement `a la co-activation des neurones

iet u. En consid´erant que l’activation y(u) d’un neurone u recevant en entr´ee l’activation des neuronesj s’´ecrity(u) =P

jwjy(j), la formulation math´ematique de cette r`egle est :

∆wi=y(u)y(i) (5.4) Dans cette formulation, >0 est un param`etre r´eglant la vitesse d’apprentissage du poids synaptiquewi. Cette r`egle est, encore aujourd’hui fr´equemment utilis´ee pour mod´eliser l’appren-tissage des connexions inter-neuronales. Apr`es apprentissage, siu et i sont souvent co-activ´es, alors l’activation deipermet celle deu, et est donc pr´edictrice de celle-ci. En effet, la valeur de

wi est alors ´elev´ee. Par cons´equent, lorsque y(i) est ´elev´e,y(u) l’est aussi.

Emploi de l’apprentissage Hebbien pour d´etecter la pr´esence

L’apprentissage Hebbien est adapt´e pour d´etecter la pr´esence des composantes d’entr´ee. En effet, cet apprentissage am`ene `a augmenter le poidswilorsqueuetisont actifs. Par cons´equent,

le neurone u va, par la suite, avoir plus tendance `a s’activer en pr´esence de l’activation de i. Ainsi, il se sp´ecialise dans la d´etection de la pr´esence d’une activit´ey(i).

Par ailleurs, la r`egle d’activation employ´ee assure que u ne s’active pas plus du fait de l’absence d’un desy(j), pourvu que les poidswj soient positifs. De plus, la r`egle d’apprentissage ne permet que d’augmenter ces poids, donc pourvu que les poidswj soient initialis´es `a des valeurs positives, l’unit´euse comporte comme un d´etecteur de pr´esence des activit´esy(j). Ce d´etecteur devient plus sensible aux entr´eesjqui sont activ´ee fr´equemment en mˆeme temps que lui, du fait de l’apprentissage.

Limitation de la croissance des poids Hebbien

La r`egle de Hebb a l’inconv´enient de permettre une croissance illimit´ee des poids associ´es aux liens aboutissant `a un neurone. Une mani`ere de limiter cette croissance est de garder constante la somme de ces poids. On a alors une r`egle de Hebb normalis´ee. Cette r`egle, comme celles pr´esent´ees par la suite, fournit une m´ethode de calcul des poids `a un pas de tempst+ 1 `a partir de donn´ees valides au pas de temps pr´ec´edentt. Celle-ci s’´ecrit comme suit :

wi(t+ 1) = Pwi(t) +y(u)y(i)

j(wj(t) +y(u)y(j)) (5.5) Cette r`egle demeure adapt´ee pour la d´etection de pr´esence, puisque la r`egle d’apprentissage ne modifie pas le signe des poidswj. Ainsi, en gardant la mˆeme r`egle d’activationy(u) pour un neurone u, les unit´es ne peuvent s’activer du fait de l’absence d’une activit´ey(j).

Une autre variante de la r`egle de Hebb, qui permet de limiter la valeur des poids est celle dite de Hebb/anti-Hebb. Dans cette variante, l’apprentissage se fait par :

wi(t+ 1) =wi(t) +y(i)(y(i)−wi(t)) (5.6) Cette r`egle permet elle aussi l’apprentissage de pr´esence, pour autant que <1. En effet, le signe des poids w est alors constant, puisque un poidswi ne peut diminuer, en valeur absolue, que de wi au plus durant un pas de temps. Pour des poids initiaux positifs, l’activation d’une entr´eeine peut donc pas inhiber l’activation deu.

Exemple d’utilisation des r`egles de Hebb

Nous allons maintenant illustrer l’emploi des diff´erentes r`egles d’apprentissage hebbiennes. Pour cela, nous reprenons notre exemple de pari sur des gobelets. Nous supposons que, dans deux cas sur cinq, tous les jetons sont dans le premier gobelet, et dans les autres cas, tous les jetons sont dans le second gobelet. Nous initialisons les poids associ´es aux gobelets `a 13. Nous r´ealisons alors l’apprentissage avec la r`egle de Hebb (cf. figure 5.2(a)), avec la r`egle de Hebb normalis´ee (cf. figure 5.2(b)), et avec la r`egle de Hebb/anti-Hebb (cf. figure 5.2(c)), et nous observons l’´evolution des poidswi dans les trois cas.

On observe que la r`egle de Hebb fournit des poids immenses, qui ne se stabilisent pas, et continuent d’augmenter. Les valeurs ´etant limit´ees en informatique, cette r`egle n’est donc pas directement employable. Les r`egles de Hebb normalis´ee et de Hebb/anti-Hebb, en revanche, limitent les poids, et fournissent des r´esultats semblables. Le signe des poids reste toujours positif, ce qui assure que l’activation de l’unit´e ne peut ˆetres due `a l’absence d’une entr´ee, mais seulement du fait d’une pr´esence.

5.2. Activation et Apprentissage de la pr´esence

(b)

(a)

(c)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 20 40 60 80 100 weight value time(steps) w1 w2 w3 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0 20 40 60 80 100 weight value time(steps) w1 w2 w3 0 20 40 60 80 100 120 0 20 40 60 80 100 weight value time(steps) w1 w2 w3

Fig.5.2 – Valeur des poids w1,w2 etw3 en fonction du temps, exprim´e en pas de temps. (a)r`egle de Hebb (b)r`egle de Hebb normalis´ee (c)r`egle de Hebb/anti-Hebb