Fermer

mai 23, 2021

Quelle est la différence entre les yeux humains et la vision par ordinateur?


Depuis les premières années de l'intelligence artificielle, les scientifiques rêvent de créer des ordinateurs capables de «voir» le monde. Comme la vision joue un rôle clé dans de nombreuses choses que nous faisons tous les jours, déchiffrer le code de la vision par ordinateur semble être l'une des étapes majeures vers le développement de l'intelligence artificielle générale.

Mais comme beaucoup d'autres objectifs de l'IA, la vision par ordinateur s'est avérée plus facile à dire qu'à faire. En 1966, des scientifiques du MIT ont lancé « The Summer Vision Project », un effort de deux mois pour créer un système informatique capable d'identifier les objets et les zones d'arrière-plan des images. Mais il a fallu bien plus qu'une pause estivale pour atteindre ces objectifs. En fait, ce n'est qu'au début des années 2010 que les classificateurs d'images et les détecteurs d'objets ont été suffisamment flexibles et fiables pour être utilisés dans les applications grand public.

Au cours des dernières décennies, les progrès de l'apprentissage automatique et les neurosciences ont contribué à faire de grands progrès dans le domaine de la vision par ordinateur. Mais nous avons encore un long chemin à parcourir avant de pouvoir construire des systèmes d'IA qui voient le monde comme nous.

Biological and Computer Vision un livre du professeur Gabriel Kreiman de l'Université de médecine de Harvard,

Le livre de Kreiman aide à comprendre les différences entre la vision biologique et la vision par ordinateur. Le livre détaille comment des milliards d'années d'évolution nous ont équipés d'un système de traitement visuel compliqué, et comment son étude a contribué à inspirer de meilleurs algorithmes de vision par ordinateur. Kreiman discute également de ce qui sépare les systèmes de vision par ordinateur contemporains de leur homologue biologique.

Bien que je recommande une lecture complète de Vision biologique et informatique à quiconque s'intéresse au domaine, j'ai J'ai essayé ici (avec l'aide de Gabriel lui-même) d'exposer quelques-uns de mes principaux points à retenir du livre.

Différences matérielles

 cerveau vs circuits intégrés" width = "696" height = "392" data-attachment-id = "10286" data-permalink = "https://bdtechtalks.com/2021/05 / 10 / vision-par-ordinateur-biologique / cerveau-vs-circuits-intégrés / "data-orig-file =" https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain -vs-integrated-circuits.jpg? fit = 1920% 2C1080 & ssl = 1 "data-orig-size =" 1920,1080 "data-comments-open =" 1 "data-image-meta =" {"apertur e ":" 0 "," credit ":" "," camera ":" "," caption ":" "," created_timestamp ":" 0 "," copyright ":" "," focal_length ":" 0 " , "iso": "0", "shutter_speed": "0", "title": "", "orientation": "0"} "data-image-title =" cerveau vs circuits intégrés "data-image-description = "" data-medium-file = "https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?fit=300%2C169&ssl= 1 "data-large-file =" https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?fit=696%2C392&ssl=1 "data-recalc-dims =" 1 "data-lazy-shared =" 1 "srcset =" https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs- circuits-intégrés.jpg? resize = 1024% 2C576 & ssl = 1 1024w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?resize = 300% 2C169 & ssl = 1 300w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?resize=768%2C432&ssl=1 768w , https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integra ted-circuits.jpg? resize = 1536% 2C864 & ssl = 1 1536w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?resize = 696% 2C392 & ssl = 1 696w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?resize=1068%2C601&ssl=1 1068w , https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?resize=747%2C420&ssl=1 747w, https: // i0. wp.com/bdtechtalks.com/wp-content/uploads/2021/05/brain-vs-integrated-circuits.jpg?w=1920&ssl=1 1920w, https://i0.wp.com/bdtechtalks.com/wp -content / uploads / 2021/05 / brain-vs-integrated-circuits.jpg? w = 1392 & ssl = 1 1392w "/> </noscript></figure><p></a><figcaption/></figure></div><p> Dans l'introduction à <span> </span><em> Vision biologique et informatique </em>Kreiman écrit: «Je suis particulièrement enthousiasmé par la connexion de circuits biologiques et informatiques. La vision biologique est le produit de millions d'années d'évolution. Il n'y a aucune raison de réinventer la roue lors du développement de modèles de calcul. Nous pouvons apprendre de la façon dont la biologie résout les problèmes de vision et utiliser les solutions comme source d'inspiration pour construire de meilleurs algorithmes. »</p><p> Et en effet, l'étude du cortex visuel a été <span> </span><a href= une grande source d'inspiration pour la vision par ordinateur et AI . Mais avant de pouvoir numériser la vision, les scientifiques ont dû surmonter l'énorme fossé matériel entre la vision biologique et la vision par ordinateur. La vision biologique fonctionne sur un réseau interconnecté de cellules corticales et de neurones organiques. La vision par ordinateur, par contre, fonctionne sur des puces électroniques composées de transistors.

Par conséquent, une théorie de la vision doit être définie à un niveau qui peut être implémenté dans les ordinateurs d'une manière comparable aux êtres vivants. Kreiman appelle cela la «résolution Goldilocks», un niveau d'abstraction qui n'est ni trop détaillé ni trop simplifié.

Par exemple, les premiers efforts en vision par ordinateur ont tenté d'aborder la vision par ordinateur à un niveau très abstrait, d'une manière qui ignorait comment les cerveaux humains et animaux reconnaissent les schémas visuels. Ces approches se sont révélées très fragiles et inefficaces. D'un autre côté, étudier et simuler des cerveaux au niveau moléculaire s'avérerait inefficace sur le plan du calcul.

«Je ne suis pas un grand fan de ce que j'appelle« la biologie de la copie »», a déclaré Kreiman TechTalks . «Il y a de nombreux aspects de la biologie qui peuvent et doivent être résumés. Nous n'avons probablement pas besoin d'unités avec 20 000 protéines et un cytoplasme et des géométries dendritiques complexes. Ce serait trop de détails biologiques. D'un autre côté, nous ne pouvons pas simplement étudier le comportement – ce n'est pas assez détaillé. »

Dans Biological and Computer Vision, Kreiman définit l'échelle Goldilocks des circuits néocorticaux comme des activités neuronales par milliseconde. Les progrès des neurosciences et de la technologie médicale ont permis d'étudier les activités de neurones individuels à une granularité de la milliseconde.

Et les résultats de ces études ont aidé à développer différents types de réseaux de neurones artificiels Algorithmes d'IA qui simulent vaguement le fonctionnement des zones corticales du cerveau des mammifères. Ces dernières années, les réseaux de neurones se sont avérés être l'algorithme le plus efficace pour la reconnaissance de formes dans les données visuelles et sont devenus le composant clé de nombreuses applications de vision par ordinateur .

Différences d'architecture

Le Les dernières décennies ont vu un grand nombre de travaux innovants dans le domaine de l'apprentissage en profondeur qui a aidé les ordinateurs à imiter certaines des fonctions de la vision biologique. Les couches convolutives inspirées des études faites sur le cortex visuel animal, sont très efficaces pour trouver des motifs dans les données visuelles. La mise en commun des couches permet de généraliser la sortie d'une couche convolutionnelle et de la rendre moins sensible au déplacement des motifs visuels. Empilés les uns sur les autres, les blocs de couches convolutives et de mise en commun peuvent aller de la recherche de petits motifs (coins, bords, etc.) à des objets complexes (visages, chaises, voitures, etc.). l'architecture de haut niveau des réseaux de neurones artificiels et ce que nous savons sur le cortex visuel des mammifères.

«Le mot« couches »est, malheureusement, un peu ambigu», a déclaré Kreiman. «En informatique, les gens utilisent des couches pour désigner les différentes étapes du traitement (et une couche est essentiellement analogue à une zone cérébrale). En biologie, chaque région cérébrale contient six couches corticales (et subdivisions). Mon intuition est que la structure à six couches (dont la connectivité est parfois appelée microcircuit canonique) est assez cruciale. On ne sait pas quels aspects de ce circuit devrions-nous inclure dans les réseaux de neurones. Certains peuvent soutenir que des aspects du motif à six couches sont déjà incorporés (par exemple, des opérations de normalisation). Mais il manque probablement une énorme richesse. »

De plus, comme le souligne Kreiman dans Biological and Computer Vision l'information dans le cerveau se déplace dans plusieurs directions. Les signaux lumineux se déplacent de la rétine vers le cortex temporal inférieur vers les couches V1, V2 et autres du cortex visuel. Mais chaque couche fournit également des informations à ses prédécesseurs. Et dans chaque couche, les neurones interagissent et se transmettent des informations. Toutes ces interactions et interconnexions aident le cerveau à combler les lacunes de l'entrée visuelle et à faire des inférences lorsqu'il a des informations incomplètes.

En revanche, dans les réseaux de neurones artificiels, les données se déplacent généralement dans une seule direction. Les réseaux de neurones convolutifs sont des «réseaux à réaction directe», ce qui signifie que l'information ne va que de la couche d'entrée aux couches supérieures et de sortie.

Il existe un mécanisme de rétroaction appelé «rétropropagation», qui aide à corriger les erreurs et à régler les paramètres des réseaux de neurones. Mais la rétropropagation est coûteuse en calcul et n'est utilisée que pendant la formation des réseaux de neurones. Et il n'est pas clair si la rétropropagation correspond directement aux mécanismes de rétroaction des couches corticales.

D'autre part, réseaux de neurones récurrents qui combinent la sortie des couches supérieures dans l'entrée de leur précédent couches, ont encore une utilisation limitée en vision par ordinateur.

 cortex visuel vs réseaux de neurones "width =" 696 "height =" 392 "data-attachment-id =" 10288 "data-permalink =" https://bdtechtalks.com / 2021/05/10 / vision-par-ordinateur-biologique / cortex-visuel-vs-réseaux-neuronaux / "data-orig-file =" https://i2.wp.com/bdtechtalks.com/wp-content/uploads /2021/05/visual-cortex-vs-neural-networks.jpg?fit=1920%2C1080&ssl=1 "data-orig-size =" 1920,1080 "data-comments-open =" 1 "data-image-meta = "{" aperture ":" 0 "," credit ":" "," camera ":" "," caption ":" "," created_timestamp ":" 0 "," copyright ":" "," focal_length " : "0", "iso": "0", "shutter_speed": "0", "title": "", "orientation": "0"} "data-image-title =" cortex visuel vs réseaux de neurones " data-image-description = "" data-medium-file = "h ttps: //i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks.jpg? fit = 300% 2C169 & ssl = 1 "data-large-file = "https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks.jpg?fit=696%2C392&ssl=1" data-recalc-dims = "1" data-lazy-shared = "1" data-src = "https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural- networks.jpg? resize = 696% 2C392 & ssl = 1 "data-srcset =" https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks .jpg? resize = 1024% 2C576 & ssl = 1 1024w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks.jpg?resize= 300% 2C169 & ssl = 1 300w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks.jpg?resize=768%2C432&ssl=1 768w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks.jpg?resize=1536%2C864&ssl=1 1536w, https: / /i2.wp.com/bdtechtalks.com/wp-content/up charges / 2021/05 / visual-cortex-vs-neural-networks.jpg? resize = 696% 2C392 & ssl = 1 696w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05 /visual-cortex-vs-neural-networks.jpg?resize=1068%2C601&ssl=1 1068w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex- vs-neural-networks.jpg? resize = 747% 2C420 & ssl = 1 747w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks .jpg? w = 1920 & ssl = 1 1920w, https://i2.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/visual-cortex-vs-neural-networks.jpg?w=1392&ssl= 1 1392w "/> <noscript><img decoding= peut ajuster dynamiquement ses sensibilités aux buts que nous voulons accomplir. Cependant, la création de systèmes de vision par ordinateur dotés de ce type de flexibilité reste un défi majeur. Nous avons des réseaux de neurones qui peuvent classer des objets, localiser des objets, segmenter des images en différents objets, décrire des images, générer des images, etc. Mais chaque réseau neuronal peut accomplir une seule tâche seul.

Gabriel Kreiman, professeur à l'Université de médecine de Harvard. Auteur de «Biological and Computer Vision. «Une question centrale est de comprendre les« routines visuelles », un terme inventé par Shimon Ullman; comment pouvons-nous acheminer de manière flexible les informations visuelles en fonction de la tâche? » Dit Kreiman. «Vous pouvez essentiellement répondre à un nombre infini de questions sur une image. Vous ne vous contentez pas d'étiqueter les objets, vous pouvez compter les objets, vous pouvez décrire leurs couleurs, leurs interactions, leurs tailles, etc. Nous pouvons créer des réseaux pour faire chacune de ces choses, mais nous n'avons pas de réseaux qui peuvent faire tout cela les choses simultanément. Il existe des approches intéressantes à ce sujet via des systèmes de questions / réponses, mais ces algorithmes, aussi passionnants soient-ils, restent plutôt primitifs, surtout en comparaison avec la performance humaine. animaux, la vision est étroitement liée aux sens de l'odorat, du toucher et de l'ouïe. Les cortex visuel, auditif, somatosensoriel et olfactif interagissent et captent des signaux les uns des autres pour ajuster leurs inférences du monde. Dans les systèmes d'IA, en revanche, chacun de ces éléments existe séparément.

Avons-nous besoin de ce type d'intégration pour créer de meilleurs systèmes de vision par ordinateur?

«En tant que scientifiques, nous aimons souvent diviser les problèmes pour les conquérir, ”A déclaré Kreiman. «Personnellement, je pense que c'est une manière raisonnable de commencer. On voit très bien sans odeur ni audition. Considérez un film Chaplin (et supprimez toute la musique et le texte minimaux). Vous pouvez comprendre un lot . Si une personne naît sourde, elle voit toujours très bien. Bien sûr, il existe de nombreux exemples d'interactions intéressantes entre les modalités, mais je pense surtout que nous ferons beaucoup de progrès avec cette simplification. »

Cependant, une question plus compliquée est l'intégration de la vision avec des zones plus complexes du cerveau. . Chez les humains, la vision est profondément intégrée à d'autres fonctions cérébrales telles que la logique, le raisonnement, le langage et la connaissance du bon sens.

«Certains (la plupart?) Problèmes visuels peuvent 'coûter' plus de temps et nécessiter l'intégration d'entrées visuelles avec le monde », a déclaré Kreiman.

Il a cité l'image suivante de l'ancien président américain Barack Obama comme exemple.

 Obama Picture" width = "638" height = "441" data-attachment-id = "10293" data-permalink = "https://bdtechtalks.com/2021/05/10/biological-computer-vision/obamapicture/" data-orig-file = "https://i0.wp.com/bdtechtalks.com/wp -content / uploads / 2021/05 / ObamaPicture.jpg? fit = 638% 2C441 & ssl = 1 "data-orig-size =" 638,441 "data-comments-open =" 1 "data-image-meta =" {"ouverture" : "0", "credit": "", "camera": "", "caption": "", "created_timestamp": "0", "copyright": "", "focal_length": "0", " iso ":" 0 "," shutter_speed ":" 0 "," title ":" "," orientation ":" 1 "}" data-image-title = "Obama Picture" data-image-description = "" data -medium-file = "https://i0.wp.com/bdte chtalks.com/wp-content/uploads/2021/05/ObamaPicture.jpg?fit=300%2C207&ssl=1 "data-large-file =" https://i0.wp.com/bdtechtalks.com/wp-content /uploads/2021/05/ObamaPicture.jpg?fit=638%2C441&ssl=1 "data-recalc-dims =" 1 "data-lazy-shared =" 1 "data-src =" https: //i0.wp. com / bdtechtalks.com / wp-content / uploads / 2021/05 / ObamaPicture.jpg? resize = 638% 2C441 & ssl = 1 "data-srcset =" https://i0.wp.com/bdtechtalks.com/wp-content /uploads/2021/05/ObamaPicture.jpg?w=638&ssl=1 638w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/ObamaPicture.jpg?resize=300% 2C207 & ssl = 1 300w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021/05/ObamaPicture.jpg?resize=100%2C70&ssl=1 100w, https: //i0.wp. com / bdtechtalks.com / wp-content / uploads / 2021/05 / ObamaPicture.jpg? resize = 218% 2C150 & ssl = 1 218w, https://i0.wp.com/bdtechtalks.com/wp-content/uploads/2021 /05/ObamaPicture.jpg?resize=608%2C420&ssl=1 608w "/> <noscript><img decoding=