• Aucun résultat trouvé

Le premier réseau de reconnaissance de chiffre se compose de neurones IFs organisés de façon rétinotopique. Les images sont initialement filtrées par des filtres de contraste1. Comme dans le modèle du chapitre précédent, les valeurs résultantes induisent des décharges neuronales en chaque position dans l'image dont la latence est inversement proportionnelle au niveau de contraste. En chaque point, soit un neurone centre-ON, soit un neurone centre-OFF décharge. Comme dans le modèle précédent, les dates exactes des décharges des neurones ne sont pas prises en compte car les neurones ne présentent pas de courant de fuite et seul l'ordre des décharges est important. Ces décharges sont intégrées à l'aide de filtres d'orientation à deux fréquences spatiales2. Ce type d'intégration est courant dans les modèles du système visuel pour rendre compte de la sélectivité à l'orientation. J'aurais évidemment pu utiliser les

1 Filtre laplacien de gaussienne 3x3, positif au centre et négatif au pourtour (centre=-1,5*pourtour).

2 Les filtres sont calculés à l'aide de fonctions gaussiennes bidimensionnelles asymétriques sur l'axe x et l'axe y (matrices 5x5 avec σx=3,2 et σy=0,5 à la fréquence spatiale élevée et matrices 11x11 avec σx=3,8 et σy=0,7 à la fréquence spatiale faible). Le total des poids contenus dans ces convolutions est normalisé et est donc égal dans tous les cas. Les filtres sont calculés pour 8 orientations différentes. Les poids synaptiques inférieurs à 10 % du maximum sont supprimés et les seuils des neurones dans cette couche sont fixés afin que la probabilité de décharge d'un neurone sur une image soit à peu près de 10 à 20 %.

183 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

résultats du chapitre précédent et implémenter l'émergence à la sélectivité des neurones à partir de la présentation d'images naturelles. J'ai préféré cependant utiliser des filtres plus couramment acceptés. Au niveau supérieur, 10 cartes neuronales, sélectives aux dix chiffres sont introduites. Comme dans le réseau du chapitre précédent, ces cartes neuronales s'inhibent mutuellement : de cette façon, quand un neurone décharge à une position donnée, les neurones sélectifs à un autre chiffre ne déchargeront pas à cette position, ni à des positions voisines3 (figure 3.1).

Pour chaque chiffre, 5 exemplaires, chacun dans une police de caractères spécifique et dans des conditions de bruit différentes, sont présentés au réseau4. L'apprentissage est dit supervisé dans le sens où l'expérimentateur indique aux cartes neuronales concernées où se trouvent les chiffres dans l'image présentée. Pour chaque carte neuronale, on définit donc les positions dans l'image pour lesquelles les neurones de la carte doivent répondre. Pour une

3 Les convolutions inhibitrices sont modélisées par des fonctions gaussiennes de taille 7x7 et de σ=1,6. Les poids synaptiques inférieurs à 10 % du maximum sont supprimés.

4 10 % de bruit uniforme est introduit à l'aide du logiciel Photoshop.

Figure 3.1 : architecture du réseau pour la reconnaissance des chiffres. L'image est tout d'abord décomposée en contrastes positifs et négatifs. Par la suite, ces informations sont propagées dans des cartes neuronales sélectives à différentes orientations et à différentes fréquences spatiales (8 orientations et 2 fréquences spatiales pour un total de 16 cartes). Les décharges en provenance de ces cartes sont enfin intégrées au sein de cartes chacune sélective à 1 chiffre. Les cartes neuronales de ce dernier niveau s'inhibent mutuellement afin qu'à une position donnée, 1 seul chiffre soit reconnu.

Image

Centre ON

Centre OFF

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

Chiffre 1

Niveau 1

Niveau 2

Niveau 3

Chiffre 2 Chiffre 3 Chiffre 4

184 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

carte sélective au chiffre "1" par exemple, les neurones de la carte doivent répondre au centre des chiffres 1 présents dans l'image.

Une image contenant les 50 chiffres5 (les 10 chiffres dans 5 polices de caractère) est propagée dans le réseau et les neurones des cartes neuronales sélectives à un chiffre donné apprennent aux positions où se trouvent ce chiffre6. Les neurones apprenant à reconnaître un chiffre voient en fait les poids synaptiques de leur champ récepteur converger vers la latence de décharge des neurones afférents. Comme dans le cas de la règle optimale du point de vue de l'ordre dans l'apprentissage non supervisé, les neurones afférents activés les premiers renforcent leurs connexions avec le neurone cible alors que les neurones activés tardivement affaiblissent leurs connexions avec le neurone cible. Concrètement, pour un neurone apprenant à une position donnée - position dans l'image où se trouve le chiffre auquel la carte

5 La taille de l'image est de 256x118 pixels, et les différents chiffres ont une taille d'environ 17x11 pixels.

L'image est présentée à la figure 3.2.

6 Il est donc nécessaire de déterminer préalablement les coordonnées du centre de tous les chiffres présentés au réseau. J'ai effectué cette opération à la main. Malgré l'imprécision que cela peut engendrer, les résultats attestent que cette imprécision n'est pas critique pour la reconnaissance.

A B

Figure 3.2 : sélectivité des cartes pour différentes polices de caractères des mêmes chiffres. A, image initiale présentée au réseau. B, résultat de la propagation pour les 10 chiffres. L'image initiale est présente en surimpression (sa luminance est divisée de moitié). Les points blancs sont le résultat de la propagation de l'image en A, et représentent les décharges des neurones.

Les cartes neuronales sont sélectives aux chiffres allant de 1 à 9 et 0, de la gauche vers la droite et du haut vers le bas.

Les réponses des neurones sont donc toutes correctes.

185 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

neuronale du neurone est associée - les poids synaptiques afférents de ce neurone convergent vers la latence de décharge des neurones sélectifs à l'orientation.

De cette façon, après la phase d'apprentissage, chaque carte neuronale est sélective à l'un des 10 chiffres. De plus, les cartes neuronales s'inhibent mutuellement : si un neurone, d'une carte neuronale sélective à un chiffre, décharge alors il inhibe les neurones sélectifs aux autres chiffres à cette position. De plus, les poids synaptiques étant partagés par tous les neurones au sein d'une carte neuronale, si un neurone de la carte apprend à reconnaître une forme à une position donnée, les autres neurones de la carte deviennent automatiquement sélectifs à cette même forme à d'autres positions dans l'image7. Enfin, le seuil de décharge des neurones sélectifs aux chiffres est ajusté manuellement afin que les neurones déchargent les premiers sur les chiffres auxquels ils sont associés.

Pour tester le réseau, la même image que celle utilisée pour l'apprentissage, contenant tous les exemplaires des chiffres en 5 polices de caractère, est présentée. Les résultats sont excellents, puisque le réseau ne commet aucune erreur (figure 3.2) : chaque carte neuronale sélective à un chiffre donné (0 et de 1 à 9) ne décharge que sur ce chiffre. Pour tester plus avant les capacités du réseau, l'apprentissage est effectué sur 4 chiffres très similaires par leur contour (les chiffres 0, 6, 8 et 9) à différentes tailles puis le réseau est testé. Là encore les performances sont très bonnes car les neurones sont sélectifs à plusieurs tailles de chiffres et cela malgré leur similarité (figure 3.3).

Malgré l'aspect rudimentaire du réseau, composé uniquement de neurones IF interconnectés, ces résultats montrent que si l'on utilise des règles d'apprentissage adaptées, il est possible d'atteindre un niveau de performance convenable du point de vue du traitement d'image. Cependant, bien que les niveaux de bruit soient différents d'une condition à l'autre, les chiffres utilisés pour l'apprentissage sont les mêmes que ceux utilisés pour tester le réseau.

Il serait intéressant de déterminer si le réseau est capable de généraliser à de nouveaux objets.

On peut d'ores et déjà être relativement confiant, les résultats préliminaires que nous avons obtenus sur la résistance à la variation de la taille sur les chiffres étant très prometteurs. Nous allons donc maintenant analyser les performances du réseau sur une tâche beaucoup plus complexe, celle de la reconnaissance de visages. En particulier nous nous intéresserons à la capacité de généralisation d'un tel réseau à de nouvelles images, qui n'ont pas été présentées pendant la phase d'apprentissage.

7 Se référer à l'annexe 2 pour les détails du fonctionnement des carte neuronales à poids synaptiques partagés.

186 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