• Aucun résultat trouvé

Le réseau est en tout point similaire à celui utilisé pour la reconnaissance des chiffres.

Cependant, dans la rétine/LGN, les filtres ont été modifiés pour que la somme totale des valeurs soit nulle8. Ce type de filtre est plus couramment utilisé en biologie et permet d'obtenir une invariance à la luminance moyenne de l'image. Si la luminance moyenne augmente par exemple de 10 niveaux de gris, l'augmentation de l'inhibition au pourtour sera entièrement compensée par l'augmentation de l'excitation au centre.

Au niveau supérieur, j'ai utilisé des fonctions Gabor9 pour calculer la distribution des poids synaptiques. Comme dans le cas du premier niveau rétine/LGN, ce type de fonction est plus couramment utilisé pour simuler la sélectivité à l'orientation des neurones dans V1 que ceux du modèle précédent10. Comme dans le réseau précédent, les seuils des neurones dans V1 sont fixés afin que la probabilité de décharge des neurones sur une image soit d'environ 10 à 20 %. La dernière couche est également similaire à celle du modèle précédent, les neurones étant entraînés sur des visages et non plus sur des chiffres (figure 3.4). Le nombre d'objets à

8 Dans le premier niveau rétine/LGN, à la différence du modèle précédent, le filtre 3x3 est une différence de gaussienne (centre = -1*pourtour). L'unité est le pixel.

9 Les patterns de connectivité pour les orientations sont codés par des fonctions Gabor qui sont en fait le produit d'une fonction sinus unidimensionnelle sur un axe par une gaussienne bidimensionnelle. Pour la fonction sinus la phase est de 0.5 radian/unité de distance et pour la fonction gaussienne σ=1. Les valeurs inférieures à 5 % du maximum sont supprimées). L'unité est le pixel et la taille des fltres est réduite à 7x7 pixels.

10 Il apparaît cependant que la différence de gaussienne utilisée dans le chapitre précédent est plus efficace du point de vue computationnel car les filtres sont plus indépendants les uns des autres (Wallis, 1994).

0 8 9 6

Image

Figure 3.3 : résistance à la variation de tailles pour 4 cartes sélectives aux chiffres 0, 8, 9 et 6. Ces chiffres ont été choisis du fait de leur ressemblance (ils présentent tous une boucle). À gauche, l'image initiale est présentée et à droite le résultat de la propagation de cette image. On constate que la sélectivité des neurones est dans une certaine mesure invariante à la taille des chiffres.

187 III.3 - M O D E L E S D E R E C O N N A I S S A N C E D E S O B J E T S

reconnaître est cependant bien plus important : le réseau devant être capable d'identifier 40 individus, 40 cartes neuronales, représentant chacune un individu, sont nécessaires. Dans ce réseau, j'ai également ajouté un mécanisme de shunting inhibition rapide qui module les poids synaptiques en fonction de leur ordre d'arrivée, les derniers poids synaptiques activés étant plus fortement modulés que les premiers11.

La procédure d'apprentissage est identique à celle utilisée pour les chiffres. Les poids synaptiques cependant ne convergent plus vers la latence des décharges des neurones mais plutôt vers le niveau de modulation associé à cette décharge. Des analyses mathématiques ont en effet montré que l'activité du neurone est maximale uniquement dans le cas où l'ordre d'activation des neurones afférents est le même que celui des poids les associant au neurone

11 La modulation est une fonction puissance du nombre d'afférents ayant touché un neurone modulation = xnb_afférent (chaque neurone est considéré individuellement). Le chiffre x est déterminé comme suit : pour les neurones de V1, il correspond à la modulation nécessaire afin que 22 % des décharges afférentes à un neurone induisent une diminution de 50 % de l'efficacité des poids synaptiques. Pour les neurones sélectifs aux visages, ce facteur tombe à 10 % des poids afférents.

Face 1 Face 2 Face 3 Face 40

Image

Centre ON

Centre OFF

0 ° 45 ° 90 ° 135 ° 180 ° 225 ° 270 ° 315 °

Niveau 1

Niveau 2

Niveau 3

Figure 3.4 : architecture du réseau pour la reconnaissance des visages. Le réseau est similaire à celui utilisé pour la reconnaissance des chiffres, à l'exception près que les cartes du dernier niveau sont sélectives à des visages.

Comme dans le cas des chiffres, les cartes neuronales de ce dernier niveau s'inhibent mutuellement afin qu'à une position donnée, 1 seul visage soit reconnu.

188 III.3 - M O D E L E S D E R E C O N N A I S S A N C E D E S O B J E T S

cible (Vennau, 1996). La modulation étant une fonction monotone de l'ordre et de la latence, faire converger les poids synaptiques vers la modulation plutôt que vers l'ordre est de peu d'importance. Dans le cas où l'on fait converger les poids synaptiques vers la modulation, on est cependant certain que la répartition des poids synaptiques d'un neurone sera optimale du point de vue de sa sélectivité à l'ordre. Nous verrons plus loin comment ce mécanisme peut s'accommoder des données électrophysiologiques.

La base d'images choisie est de 400 visages (10 vues de 40 personnes)12. Les individus sont de sexe et d'origine différente et sont très variés, certains ayant des lunettes, d'autres une barbe ou une moustache. Les 10 vues de chaque personne sont également assez variées, généralement de face ou de trois quarts (figure 3.5). Pour chaque personne, 2 vues sont sélectionnées aléatoirement et seront utilisées dans la base finale de test (vues inconnues des individus). Pour toutes les images restantes (8*40), 3 versions additionnelles sont réalisées, l'une où le contraste est diminué de moitié, les deux dernières où le contraste est diminué de moitié et où la luminance moyenne de l'image est soit augmentée, soit diminuée13. Parmi ces 4 versions, 2 sont sélectionnées aléatoirement et l'ensemble de ces images constitue la base d'apprentissage (soit 2*8*40= 640 images). Les deux versions restantes constituent une première base de test contenant des images avec des contrastes et des luminances modifiées.

Enfin, la base finale de test est constituée des 2 images de chaque individu sélectionnées au départ (soit 2*40= 80 images) pour lesquelles on réalise également les 3 versions additionnelles. Il existe donc trois bases d'images, la base d'apprentissage, la base de test avec des vues connues d'individus présentées à des luminances et des contrastes différents, et la base de test finale contenant des vues inconnues des individus, présentées dans toutes les conditions de contraste et de luminance.

Avant de présenter les résultats que j'ai obtenus, il reste cependant à régler le problème de l'optimisation des seuils des neurones dans les cartes sélectives aux visages. Contrairement aux cartes sélectives aux chiffres dans le modèle précédent, du fait du grand nombre de cartes neuronales au dernier niveau (40 cartes chacune sélective à un individu), il n'est plus possible de les optimiser de façon manuelle. En effet, la sélectivité d'un neurone affecte celle des

12 Base de visages ORL, AT&T Laboratories Cambridge. Je tiens à souligner qu'aucune image n'a été supprimée de la base d'image originale téléchargée sur Internet à l'adresse http://www.cam-orl.co.uk/facedatabase.html. Les images sont réduite à la taille de 23x28 pixels avant d'être propagées dans le réseau.

13 Pour diminuer le contraste, on soustrait 128, le niveau de gris intermédiaire, à la valeur des pixels (entre 0 et 255), on divise par deux cette valeur et on ajoute 128. Augmenter (ou diminuer) le contraste signifie ajouter (ou retrancher) 64 à la valeur de tous les pixels.

189 III.3 - M O D E L E S D E R E C O N N A I S S A N C E D E S O B J E T S

autres. Baisser le seuil d'un neurone va le conduire à décharger sur un plus grand nombre d'images et donc à inhiber les neurones sélectifs aux visages présentés. Des effets trompeurs apparaissent alors : les neurones d'une carte neuronale peuvent ne pas sembler sélectifs alors qu'en fait les neurones d'une autre carte neuronale, eux trop peu sélectifs, les empêchent de décharger. Pour résoudre ce problème complexe, j'ai donc imaginé un processus très simple.

Pour 16 images de 40 individus (soit 640 images), les 40 cartes neuronales doivent en fait décharger dans 1/40=2,5 % des cas. Le taux de décharge des cartes est fixe mais elles ne sont pas assujetties à décharger sur les visages pour lesquels elles devraient être sélectives. Cela signifie que si une carte neuronale décharge sur 2,5 % des images de visage, l'algorithme de convergence est satisfait, que ces images contiennent ou non le visage auquel la carte neuronale est sélective. Ce processus se base sur l'hypothèse que les cartes neuronales sont effectivement sélectives et que si on les contraint à décharger sur 2,5 % des images, elles vont, selon toute vraisemblance, décharger sur les visages qu'on leur a appris. L'avantage de cette règle d'apprentissage est qu'une carte peu sélective ne peut pas décharger sur plus de 2,5 % des images présentées et ne pourra donc pas inhiber de façon incontrôlée les autres cartes neuronales. Existe-t-il une meilleure façon pour optimiser les seuils des neurones, notamment une règle prenant en compte le fait que la carte neuronale ait déchargé sur les visages qu'on lui a présentés pendant l'apprentissage ? C'est tout à fait possible, mais je discuterai pourquoi la règle que j'ai choisie est plus acceptable du point de vue de la biologie qu'une règle plus évoluée.

Les performances du réseau sont assez impressionnantes (figure 3.5) car le modèle est capable d'effectuer une reconnaissance avec 100 % de réponses correctes sur la base d'apprentissage et sur la première base de test avec des contrastes et des luminances

performance

Base d'apprentissage (BA) 100 %

Base de test (BT) 100 %

Base finale de test (BFT) 97,5%

B A

Figure 3.5 : A, exemple de visages d'une même personne à différents niveaux de contraste et de luminance (cf.

texte). B, performance du réseau pour la base de visages utilisée pour l'apprentissage (BA), pour le premier test effectué avec la même base mais avec des contrastes et des luminances différentes (BT) et pour le test final effectué avec des visages des mêmes personnes qui ne faisaient pas partie de la base d'apprentissage (BFT).

BA

BT

BTF

190 III.3 - M O D E L E S D E R E C O N N A I S S A N C E D E S O B J E T S

différentes. La luminance et le contraste des images ne semblent donc pas interférer fortement avec la reconnaissance. Les performances sur la base finale de test sont également très impressionnantes avec un taux de réponses correctes de 97,5 %. Le réseau est donc capable de reconnaître des nouvelles vues des individus présentés pendant la phase d'apprentissage.

Pour tester plus avant la résistance du modèle aux variations de contraste et au bruit, je réduis progressivement le contraste14 et j'augmente le bruit15 sur les images de la base d'apprentissage. On constate que la reconnaissance des visages est très résistante à la variation de ces deux paramètres (figure 3.6). Même avec 1,5 % de contraste résiduel dans les images, le taux de reconnaissance est supérieur à 90 %. De même, avec 50 % de bruit, le nombre de

14 Pour diminuer le contraste, on soustrait 128, le niveau de gris intermédiaire, à la valeur des pixels (entre 0 et 255), on pondère cette valeur par le pourcentage de contraste désiré et on ajoute 128.

15 L'addition de bruit se fait à l'aide d'une image contenant du bruit blanc (les valeurs des pixels sont situées aléatoirement entre 0 et 255). Pour obtenir l'image bruitée, on effectue une moyenne pondérée pour chaque pixel entre l'image initiale et l'image de bruit blanc. Pour 10 % de bruit par exemple, pixel_bruité = 90%* pixel_initial+10%* pixel_bruit_blanc.

Figure 3.6 : résistance au bruit et à la diminution de contraste de la sélectivité aux visages. La résistance au bruit (en haut) est remarquable puisque la performance du réseau est de plus de 80 % d'images correctement catégorisées avec 50 % de bruit (cf. texte). Le visage représenté sous l'axe des abscisses illustre le niveau de bruit. Le visage présenté sous la courbe est le visage le mieux catégorisé par le réseau (le réseau reconnaît toujours ce visage avec plus de 90 % de bruit).

En bas, représentation de la résistance aux variations de contraste. A 1,5% de contraste (ce qui représente de 1 à 4 niveaux de gris), la performance du réseau est toujours au-dessus de 90 % de réponses correctes. L'image sous l'axe des abscisses illustre les différents niveaux de contraste. Cette image est normalisée afin de se rendre compte de ce qui peut rester en terme d'information. Le visage représenté est le visage le mieux catégorisé (jusqu'à 1 % de contraste). Il est important de noter que le réseau a été entraîné avec des images non bruitées et de très faibles réductions de contraste (50 %). Les performances dans les conditions de bruit et de diminution de contraste présentées ici sont