Intelligence artificielle et simulation neuronale

  Intelligence artificielle  

Intelligence artificielle et simulation neuronale

La méthode que j’ai proposé dans l’article précédent pour simuler le fonctionnement du cerveau d’une souris est une méthode parmi bien d’autres. Cependant, si on veut simuler l’activité neuronale, il n’en reste pas moins qu’il faut disposer d’une masse importante de données — c’est l’incontournable prérequis.

D’autre part, différentes alternatives sont envisageables en ce qui concerne le substrat sur lequel reposera cette simulation. Il peut aussi bien s’agir d’ordinateurs tout à fait conventionnels, d’ordinateurs entièrement dédiés à cette tâche, ou bien d’ordinateurs couplés à des circuits neuronaux biologiques. En fait, peu importe l’approche envisagée, il n’en reste pas moins que le seul fait d’utiliser un substrat numérique ouvre inévitablement la porte à toute une série de technologies et techniques déjà disponibles dans le domaine de la mathématique et de la statistique qui ont déjà été développées et qui ont fait leurs preuves — les simulations météorologiques utilisent depuis plusieurs années des modèles qui ont fait la démonstration de leur performance à prédire la météo sur un horizon de 48 heures.

Il va sans dire que la tâche ne consiste pas seulement à simuler le comportement d’un seul neurone, mais bien à simuler le comportement d’un grand nombre de neurones connectés entre eux. On comprendra dès lors qu’une grande quantité de variables doivent être prises en compte, chacune contraignant toutes les autres, et qu’il faut arriver à simuler le comportement des neurones alors que les variables sont simultanément toutes actives. Comment est-il possible de faire en sorte qu’une telle simulation fonctionne sur un ordinateur fondé sur une architecture sérielle où les instructions sont exécutées les unes après les autres et non simultanément ?

Heureusement pour nous, un neurone biologique est très lent par rapport à un microprocesseur. Par exemple, alors qu’entre deux traitements de signaux un neurone met quelques millisecondes, un modeste microprocesseur cadencé à 3 GHz réalisera plus de 10 000 000 d’opérations en une milliseconde. Considéré sous cet angle, il devient dès lors possible de simuler le comportement de plusieurs neurones en utilisant une très vieille technique informatique, celle du multitâche. Ce qui veut donc dire, qu’à chaque milliseconde de temps simulé, le microprocesseur utilise une infime fraction de milliseconde pour simuler le premier neurone, une infime fraction de milliseconde pour simuler le second neurone, et ainsi de suite, jusqu’à pouvoir simuler des centaines de milliers de neurones.

 

Toutefois, on aura compris que même le cerveau d’une souris qui contient plus de dix millions de neurones et qui sera simulé avec précision, exigera une grande capacité de calcul. Mais quand est-il au juste de cette capacité de calcul ? Si, au cours des années 1980 et 1990 la tendance a été à la capacité croissante de calcul des microprocesseurs, celle-ci a sensiblement ralenti au tournant du second millénaire, ce qui implique que, même aujourd’hui, le plus performant des microprocesseurs à traitement sériel serait tout à fait incapable de simuler le comportement des dix millions de neurones du cerveau d’une souris.

  Intelligence artificielle  

Toutefois, il existe des solutions qui permettent déjà de contourner ce type de problème : c’est le parallélisme, c’est-à-dire plusieurs microprocesseurs qui travaillent parallèlement et simultanément sur un même problème. Ce faisant, il devient possible d’envisager la simulation neuronale du cerveau d’une souris. L’analogie est simple : si 1 000 ouvriers peuvent construire un édifice de 30 étages en un an, un seul ouvrier n’aura peut-être pas assez de toute sa vie active pour y arriver. Conséquemment, plusieurs microprocesseurs en traitement parallèle arriveront à simuler l’activité de dix millions de neurones, alors qu’un seul microprocesseur à traitement sériel et ultra rapide n’y parviendrait jamais.

Certes, un cerveau biologique exploite de façon tout à fait efficace le traitement massivement parallèle. Pour bien comprendre en quoi consiste ce type de traitement, il faut se représenter un neurone comme étant une minuscule unité de traitement de l’information, laquelle information parvient au neurone sous forme de signal électrique en provenance des dendrites. Et comme le neurone reçoit en permanence des signaux en provenance des dendrites, il est dans un mode où il cartographie constamment son propre état afin de traiter adéquatement les informations reçues et de les diriger vers l’axone. Ces informations seront par la suite traduites sous forme de neurotransmetteurs qui seront libérés dans la synapse et capturés par les dendrites d’un neurone adjacent.

Autre point important à souligner, ce sont tous les neurones de certaines zones du cerveau qui s’allument simultanément pour traiter l’information. Autrement dit, chaque neurone n’attend pas que son neurone adjacent ait terminé son traitement pour commencer à traiter l’information qu’il a reçue. C’est en ce sens qu’un cerveau biologique est fondamentalement un traitement massivement et parallèlement connecté où tous les neurones, considérés comme de minuscules unités de traitement, participent simultanément au traitement de l’information.

Cependant, il ne faut pas pousser plus loin cette analogie, car les différences sont d’une telle ampleur entre un neurone biologique et un neurone artificiel, qu’il serait tout à fait inapproprié de poursuivre dans cette voie. Malgré tout, le fait de proposer cette analogie révèle un point important : un cerveau biologique est un autre exemple de ce que la nature, au fil de l’évolution, a réussi à mettre en place, c’est-à-dire un nombre imposant de petites unités qui, une fois interconnectées, arrivent à produire la nature telle que nous la connaissons — la photosynthèse en est un bon exemple. Ce qui implique donc que, pour arriver à simuler l’activité neuronale du cerveau, il suffit de faire appel à ce principe en utilisant un autre type de substrat.

Et ce substrat, nous le connaissons fort bien, c’est celui des microprocesseurs. Mais plus encore, nous savons désormais que les sociétés Google, Facebook, Microsoft et Amazon utilisent de plus en plus des microprocesseurs graphiques pour faire tourner leurs applications d’intelligence artificielle, pour la simple raison que ces microprocesseurs, initialement destinés au traitement graphique dans les jeux vidéo et pourtant plus lents que les microprocesseurs traditionnels, sont déjà structurés autour d’une architecture parallèle.

De plus, comme ceux-ci sont devenus de plus en plus efficaces au fil du temps sur le plan de l’architecture et du traitement parallèle, et comme leur coût de fabrication a de plus en plus chuté au fil du temps, leur utilisation s’est graduellement déplacée vers de tout nouveaux champs d’application requérant le traitement en parallèle, comme la modélisation des réactions nucléaires ou la modélisation météorologique.

À ce titre, l’un des plus puissants ordinateurs dédiés au traitement météorologique, le Titan fabriqué par la société Cray[1], est une architecture hybride comportant plus de 18 868 microprocesseurs graphiques, chacun étant déjà par lui-même un ordinateur procédant à des traitements en parallèle.

© Pierre Fraser (Ph. D.), sociologue, 2019

Intelligence artificielle

[1] Oak Ridge National Laboratory (2014), What is a Core Hour on Titan, US Department of energy, Office of science, URL: https://www.olcf.ornl.gov/wp-content/uploads/2013/01/TitanCoresFactsheet_.pdf.

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l'aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.