Reconnaître un animal : notre cerveau est plus rapide que nous !16/02/06 Lorsque nous regardons une image, combien de temps faut-il à notre cerveau pour y reconnaître des objets ? Une seconde, une demi-seconde, un dixième de seconde ? Moins ? La réponse à cette question a de nombreuses implications, non seulement pour améliorer la connaissance des mécanismes physiologiques, mais aussi pour définir des méthodes de classification automatiques.
Alors, comment notre cerveau catégorise-t-il des objets ? Le mieux, c'est que vous veniez faire l'expérience
vous-même.
Venez : nous allons faire un testAllons au Centre
de Recherche Cerveau et Cognition
Ne perdons pas de temps : une image vient d'apparaître sur l'écran pendant 10 milli-secondes. Oui, ce « flash » lumineux était une vraie photo, une scène naturelle. D'ailleurs, nous avons une question : « Y avait-il un animal présent dans la scène ? » Vous n'avez pas eu le temps de voir ? Mmm. Je crois qu'il vous faut tout de même fournir une réponse. S'il vous plaît, appuyez sur le bouton vert pour signifier « oui » et le rouge pour « non ». Après tout, vous avez seulement une chance sur deux de vous tromper ! Il vous est même demandé de répondre le plus vite possible en appuyant sur l'un des deux boutons. Écoutez, je ne voudrais pas vous vexer, mais, avant vous, un compagnon
du
petit macaque que vous vous êtes amusé à venir
saluer en arrivant au labo a déja réalisé cette
expérience des heures durant avec le professeur Michèle Fabre Alors, on y va. Oui, il y aura plusieurs dizaines de flashes, et vous de presser le bouton vert ou rouge sans relâche, même si, d'évidence, tout cela se passe un peu trop vite pour que vous ne sembliez faire autre chose qu'un jeu de hasard. Alors ? Ce n'était pas si terrible, finalement ? Comme
quoi. Maintenant, venez dans la pièce à
côté. Holle a lancé les logiciels qui analysent vos
données. Le jeune ingénieur devant l'ordinateur est
Jong-Mo Allegraud. Avec Simon, il
participe à une jeune pousse technologique, SpikeNet
À votre avis, quel a été votre nombre de réponses exactes ? Une sur deux ? Un peu plus ? Regardez, mais regardez donc : 99% de réponses exactes !!! Oui, c'est bien cela qui s'est passé : pendant que vous pressiez au mieux ces boutons, votre cerveau catégorisait les images sans aucune hésitation ! Pire : il le faisait à une vitesse presque incroyable : moins d'un dixième de seconde ! Regardez le tracé de votre électroencéphalogramme : environ 100 milli-secondes après que l'image soit apparue, les aires de votre cerveau où se réalise la reconnaissance d'objets avaient déjà rendu leur verdict. Que dites-vous ? Le singe ? Ah oui, le petit primate a réalisé cette expérience avec le même succès que vous ! Il a même été un peu plus rapide, humilité oblige, et... tout aussi précis. Il faut dire que ça se comprend aisément : les animaux qui ont été amenés à survivre à leurs prédateurs ou à profiter de leurs proies sont sûrement ceux dont le cerveau était doté du mécanisme de reconnaissance le plus efficace possible.
Maintenant, si Simon Thorpe est connu internationalement pour un ensemble de travaux extrêmement détaillés sur ces mécanismes de catégorisation rapide, c'est qu'il a proposé un modèle qui bouleverse complètement les idées admises sur le sujet. Il a remarqué qu'en 100 milli-secondes,
En effet, l'information dans les neurones est codée sous forme de trains d'impulsions : des « spikes ». C'est un codage temporel, où les valeurs les plus élevées sont émises d'abord. Et un tel spike dure environ 1 milli-seconde. Dans une fenêtre temporelle de 10 milli-secondes, seules 10 valeurs différentes peuvent être considérées. Ce mécanisme a aussi été simulé sur ordinateur, ce qui est à l'origine de la jeune pousse technologique que nous avons citée. Sur cette base, le cerveau s'entraîne depuis quelques millions d'années, au fur et à mesure de l'évolution des espèces. Mais les scientifiques actuels se demandent bien par quel mécanisme mathématique on peut attacher à un paquet de valeurs en vrac une étiquette aussi sophistiquée.
Pour avancer, voyageons de Toulouse à Nancy.
Là-bas, au LORIA Les machines à vecteurs supports : un outil algorithmique que les ordinateurs utilisent avec succès
Yann prend un air désolé, ce qu'il a à nous
expliquer est un peu compliqué. Le livre original de Vapnik Yann Guermeur est un des rares spécialistes qui maîtrise cette théorie à laquelle il a largement contribué. Une méthode, compliquée certes, mais finalement très simple à utiliser : prenons - par exemple - une bonne centaine de petites séquences vidéo. Dans certaines d'entre elles, la personne filmée marche normalement (« walk » diront les anglo-saxons), dans d'autres elle marche « militairement » (les anglo-saxons diront alors « march »). C'est presque la même chose, mais un cerveau humain fait sans conteste la différence, vous pouvez le vérifier dans les images ci-dessous. En utilisant des machines à vecteurs supports implémentées sous forme de réseaux de neurones biologiquement plausibles, l'ordinateur a su lui aussi catégoriser ce stimulus compliqué.
Pour cela, dans une première phase d'apprentissage supervisé, enregistrons dans la mémoire de l'ordinateur des exemples de « walk », « march », etc., en lui indiquant ce qui est quoi. Comme dans le cerveau, l'ordinateur va très rapidement calculer, à partir de ces séquences vidéos, des indices liés aux contours et aux mouvements d'une image à l'autre, et fabriquer pour chaque séquence un vecteur de valeurs en vrac, qui représente les données en entrée. Mais comme Simon Thorpe l'avait remarqué pour le cerveau, dans ce calcul, seules vont être prises en compte :
Eh bien imaginez, nous propose Yann Guermeur, que chaque séquence vidéo est un point dans un espace de très grande dimension, où chaque valeur correspond à un des paramètres qui ont été retenus précédemment. Distinguer une façon de marcher telle que « walk » revient alors à trouver une frontière telle que tous les points qui correspondent à « walk » sont du même côté de la frontière. Pour illustrer ce point, dans la petite applet Java ci-dessous, on a symbolisé chaque façon de marcher par un point de couleur différente. Appuyez sur « Calcul » pour afficher la frontière trouvée par le classificateur.
Si l'applet ne s'affiche pas correctement : Vérifiez votre configuration technique Pour séparer les points en fonction de leur couleur, le calcul a dessiné cette frontière en tenant compte de la distance à chaque point. Mais ce n'est pas la meilleure façon de faire. Un meilleur calcul va, parmi tous ces exemples, ne garder que les plus utiles, éventuellement en les modifiant. Ils seront les prototypes qui serviront de support pour séparer les différentes catégories. Et cette frontière est calculée sur une base très simple : maximiser la marge par rapport aux prototypes, pour éviter autant que possible de se tromper dans le classement. Pour visualiser cette nouvelle méthode de classification, à la place de « Raw » choisissez « YG » (les initiales de Yann Guermeur, car nous avons implémenté là une variante de sa méthode, en utilisant des mécanismes biologiquement plausibles basés sur les modèle de Simon Thorpe), et relancez « Calcul » : la frontière qui apparaît est bien plus simple. Elle effectue la classification, mais en recherchant un modèle de complexité minimale. À partir de l'une ou l'autre de ces frontières, quand une nouvelle séquence va être présentée, il suffira de regarder de quel côté de la frontière elle se trouve dans cet espace et « instantanément » il sera possible de reconnaître à quelle catégorie elle appartient. C'est là toute la puissance du mécanisme, qui explique sa redoutable efficacité : il s'applique à la reconnaissance de protéines, à la reconnaissance d'un alphabet de sourds-muets, etc. Théorie de l'apprentissage : pourquoi ne pas faire simple quand il est pire de faire compliqué ?Il y a deux idées extrêmement puissantes à la source de la théorie de l'apprentissage qui a permis de réaliser des classificateurs si efficaces. La première s'appelle la généralisation. Lors de l'apprentissage supervisé, les exemples présentés au classificateur ont été pris au hasard parmi tous les exemples possibles. Le calcul peut donc non seulement apprendre comment définir une frontière entre les catégories, mais aussi la façon dont les exemples sont distribués (en choisissant des échantillons au hasard dans une population, nous apprenons beaucoup sur la façon dont la population se répartit, par exemple les éléments les plus fréquents, etc.). Grâce à cette connaissance, le calcul peut non seulement évaluer le risque de se tromper sur les exemples qui lui ont été donnés, mais aussi évaluer approximativement la probabilté de se tromper pour les futurs échantillons, qui lui seront présentés ensuite, puisqu'il peut évaluer comment ils sont distribués. Il peut donc « généraliser » aux futurs échantillons ce qu'il a appris sur les exemples. Cette connaissance se formalise par l'équation suivante :
Toute la force de la théorie est de pouvoir majorer efficacement le risque de se tromper, en analysant finement la façon dont les exemples sont distribués. C'est ici qu'intervient la deuxième idée, la parcimonie. Si le classificateur reste simple (d'une faible complexité), il ne s'ajustera peut-être pas parfaitement aux exemples proposés, mais son estimation ne dépendra pas trop de ces exemples particuliers. Ainsi, elle se généralisera plutôt bien. En revanche, un classificateur bien plus complexe va s'ajuster aux exemples proposés, mais dans ce qu'ils ont de particulier, lié à l'aléa de leur sélection. Il aura alors peu de chance de bien s'ajuster à d'autres échantillons. Un classificateur complexe va donc pouvoir tenir compte de n'importe quelle donnée, aussi peu pertinente soit-elle. En bref, le terme de l'équation « contrôle du classificateur » augmente avec la complexité du classificateur : c'est là la clé de voûte de la théorie C'est un principe
très général de toujours
préférer un modèle simple mais robuste, avec un
nombre minimal de paramètres. Une forme de ce principe, le « rasoir d'Occam » Par exemple, dans l'applet ci-dessus, si vous sélectionnez « YG-polynomial », qui est une variante plus complexe de la méthode de Yann Guermeur, les frontières calculées seront bien plus sophistiquées, mais n'apportent clairement rien de plus dans ce cas précis. C'est sur la base de ces deux idées clés que la théorie de l'apprentissage propose des classificateurs de complexité minimale, qui minimisent la probabilité réelle de se tromper, et non pas uniquement la fréquence des erreurs sur les exemples donnés. Une machine à vecteurs supports est directement construite en appliquant ce critère statistique sophistiqué. Elle sépare chaque catégorie par une frontière, qui est une droite ou un plan, ou plus généralement un objet linéaire. Cette machine correspond ainsi au meilleur classificateur de ce type. Il se trouve aussi que les éléments clés du modèle de Simon Thorpe montrent que les processus cérébraux qui effectuent cette catégorisation rapide sont justement des classificateurs qui sont de complexité limitée, ce qui explique un peu mieux pourquoi ils ont une telle efficacité. Depuis cette rencontre entre théorie de l'apprentissage et étude de la catégorisation rapide dans le système visuel, les chercheurs en vision par ordinateur utilisent désormais les mêmes astuces que ce qui est compris actuellement au niveau du cerveau, et les neurophysiologues comprennent mieux pour quelles raisons théoriques le cerveau peut avoir cette capacité de catégorisation. Plus précisément, ce travail a ouvert des perspectives : le formalisme de la modélisation statistique est désormais pris en compte dans la modélisation biologique de la catégorisation visuelle.
Mais il faut que je me dépêche, sinon je vais louper l'arrêt de mon TGV. Oh ! je viens de jeter un coup d'œil par la fenêtre, mais à 300 km/h je n'ai pas eu le temps de bien voir, pourtant c'est sûr, il y avait un animal dans le champ là-bas. Quel dommage que mon cerveau soit plus rapide que moi, j'aurais bien aimé mieux regarder. Pour en savoir plus, nous vous proposons quelques références d'articles scientifiques
|
||||||||||||||||||||||||||||||