Au cours des cent dernières années, collectivement en tant qu’humanité, nous avons rêvé, pensé, écrit, chanté et produit des films sur une machine qui pourrait penser, raisonner et être intelligente de la même manière que nous. Les histoires commençant par « Erewhon » publié en 1872 par Sam Butler, « Le joueur d’échecs de Maelzel » d’Edgar Allan Poe et le film « Metropolis » de 1927 montraient l’idée qu’une machine pouvait penser et raisonner comme une personne. Pas de manière magique ou fantastique. Ils se sont inspirés des automates de la Grèce et de l’Égypte antiques et ont combiné des notions de philosophes tels qu’Aristote, Ramon Llull, Hobbes et des milliers d’autres.

Leurs notions de l’esprit humain les ont amenés à croire que toute pensée rationnelle pouvait être exprimée sous forme d’algèbre ou de logique. Plus tard, l’arrivée des circuits, des ordinateurs et de la loi de Moore a conduit à des spéculations continuelles selon lesquelles l’intelligence au niveau humain était imminente. Certains l’ont annoncé comme le sauveur de l’humanité, tandis que d’autres dépeignent une calamité alors qu’une deuxième entité intelligente se lève pour écraser la première (les humains).

La flamme de l’intelligence artificielle informatisée a déjà brulé brillamment à quelques reprises, comme dans les années 1950, 1980 et 2010. Malheureusement, les deux précédents booms de l’IA ont été suivis d’un « hiver de l’IA » qui n’est plus à la mode pour n’avoir pas répondu aux attentes. Cet hiver est souvent imputé à un manque de puissance informatique, à une compréhension insuffisante du cerveau, ou à un battage médiatique et à une spéculation excessive. Au milieu de notre été actuel en IA, la plupart des chercheurs en IA se concentrent sur l’utilisation de la puissance informatique disponible en constante augmentation pour augmenter la profondeur de leurs réseaux neuronaux. Malgré leur nom, les réseaux neuronaux sont inspirés des neurones du cerveau et ne partagent que des similitudes au niveau de la surface.

Certains chercheurs pensent que l’intelligence générale au niveau humain peut être obtenue en ajoutant simplement de plus en plus de couches à ces systèmes convolutifs simplifiés alimentés par une mine de données toujours croissante. Ce point est soutenu par les choses incroyables que ces réseaux peuvent produire, et il s’améliore un peu chaque année. Cependant, malgré les merveilles que produisent les réseaux de neurones profonds, ils se spécialisent et excellent toujours dans une seule chose. Un Atari surhumain jouant de l’IA ne peut pas faire de la musique ou penser aux conditions météorologiques sans qu’un humain n’ajoute ces capacités. De plus, la qualité des données d’entrée a un impact considérable sur la qualité du réseau et la capacité de faire une inférence est limitée, produisant des résultats décevants dans certains domaines. Certains pensent que les réseaux neuronaux récurrents n’obtiendront jamais le genre d’intelligence générale et de flexibilité qu’offre notre cerveau.

Cependant, certains chercheurs essaient de créer quelque chose de plus cérébral, vous l’aurez deviné, émulant plus étroitement un cerveau. Étant donné que nous sommes dans un âge d’or de l’architecture informatique, il semble maintenant temps de créer du nouveau matériel. Ce type de matériel est connu sous le nom de matériel neuromorphique.

Qu’est-ce que l’informatique neuromorphique ?

Neuromorphique est un terme sophistiqué pour tout logiciel ou matériel qui essaie d’émuler ou de simuler un cerveau. Bien qu’il y ait beaucoup de choses que nous ne comprenons pas encore au sujet du cerveau, nous avons fait de merveilleux progrès au cours des dernières années. Une théorie généralement acceptée est l’hypothèse colonnaire, qui stipule que le néocortex (largement considéré comme l’endroit où les décisions sont prises et l’information est traitée) est formé de millions de colonnes corticales ou de modules corticaux. D’autres parties du cerveau, telles que l’hippocampe, ont une structure reconnaissable qui diffère des autres parties du cerveau postérieur.

Le néocortex est assez différent du cerveau postérieur en termes de structure. Il existe des domaines généraux où nous savons que des fonctions spécifiques se produisent, telles que la vision et l’audition, mais la matière cérébrale réelle semble très similaire d’un point de vue structurel à travers le néocortex. D’un point de vue plus abstrait, la section visuelle est presque identique à la section auditive, tandis que les parties du cerveau postérieur sont uniques et structurées en fonction de la fonction. Cette idée a conduit à la spéculation de Vernon Mountcastle qu’il y avait un algorithme ou une structure centrale qui conduisait tout le traitement dans le néocortex. Une colonne corticale est une unité distincte car elle comporte généralement 6 couches et est beaucoup plus connectée entre les couches verticalement qu’horizontalement avec les autres colonnes. Cela signifie qu’une seule unité pourrait être copiée à plusieurs reprises pour former un néocortex artificiel, ce qui est de bon augure pour les techniques d’intégration à très grande échelle (VLSI). Nos procédés de fabrication sont particulièrement bien adaptés à la création d’un million de copies de quelque chose sur une petite surface.

Alors qu’un réseau de neurones récurrents (RNN) est entièrement conjonctif, un vrai cerveau est pointilleux sur ce qui est connecté à quoi. Un modèle courant de réseaux visuels est celui d’une pyramide en couches, la couche inférieure extrayant des caractéristiques et chaque caractéristique suivante extrayant des caractéristiques plus abstraites. La plupart des circuits cérébraux analysés montrent une grande variété de hiérarchies avec des connexions en boucle sur elles-mêmes. Les connexions de rétroaction et d’anticipation se connectent à plusieurs niveaux au sein de la hiérarchie. Ce « saut de niveau » est la norme, pas la règle, ce qui suggère que cette structure pourrait être la clé des propriétés que notre cerveau présente.

Cela nous amène au prochain point d’intégration : la plupart des réseaux de neurones utilisent un modèle d’intégration et de déclenchement qui fuit. Dans un RNN, chaque nœud émet un signal à chaque pas de temps, alors qu’un vrai neurone ne se déclenche qu’une fois son potentiel membranaire atteint (la réalité est un peu plus complexe que cela). Les réseaux de neurones artificiels (ANN) plus précis sur le plan biologique qui possèdent cette propriété sont appelés réseaux de neurones à pointes (SNN). Le modèle d’intégration et de tir qui fuit n’est pas aussi biologiquement précis que d’autres modèles comme le modèle Hindmarsh-Rose ou le modèle Hodgkin-Huxley. Ils simulent les substances chimiques des neurotransmetteurs et les lacunes synaptiques. Pourtant, c’est beaucoup plus cher à calculer. Étant donné que les neurones ne se déclenchent pas toujours, cela signifie que les nombres doivent être représentés sous forme de trains de pointes, avec des valeurs codées sous forme de codes de taux, de temps de pointe ou de fréquence.

Où en sommes-nous en termes de progrès ?

Quelques groupes ont émulé directement des neurones, comme le projet OpenWorm qui émule les 302 neurones d’un ver rond connu sous le nom de Caenorhabditis elegans. L’objectif actuel de bon nombre de ces projets est de continuer à augmenter le nombre de neurones, la précision de la simulation et d’augmenter l’efficacité du programme. Par exemple, en Allemagne, un projet connu sous le nom de SpiNNaker est un supercalculateur de bas niveau simulant un milliard de neurones en temps réel. Le projet a atteint un million de cœurs fin 2018, et en 2019, ils ont annoncé une importante subvention qui financera la construction d’une machine de deuxième génération (SpiNNcloud).

De nombreuses entreprises, gouvernements et universités étudient des matériaux et des techniques exotiques pour créer des neurones artificiels tels que des memristors, des oscillateurs à couple de rotation et des dispositifs à jonction magnétique josephson (MJJ). Alors que beaucoup d’entre eux semblent incroyablement prometteurs en simulation, il existe un écart important entre douze neurones en simulation (ou sur une petite carte de développement) et les milliers, voire les milliards nécessaires pour atteindre de véritables capacités au niveau humain.

Présenté en 2019, ce système neuromorphique de 8 millions de neurones utilisait 64 puces Intel Loihi. Source : Tim Herman/Intel

D’autres groupes tels qu’IBM, Intel, Brainchip et des universités tentent de créer des puces SNN matérielles avec la technologie CMOS existante. Une telle plate-forme d’Intel, connue sous le nom de puce Loihi, peut s’intégrer dans un système plus vaste. Plus tôt l’année dernière (2020), Intel a étudié 768 puces Loihi utilisées dans une grille pour mettre en œuvre une recherche du plus proche voisin. La machine à 100 millions de neurones a montré des résultats prometteurs, offrant une latence supérieure aux systèmes avec de grands index précalculés et a permis d’insérer de nouvelles entrées en temps O (1).

Le Human Brain Project est un projet à grande échelle visant à approfondir notre compréhension des réseaux de neurones biologiques. Ils ont un système connu sous le nom de waferscale BrainScaleS-1 qui repose sur des émulations de neurones analogiques et à signaux mixtes. Vingt tranches (chacune de 8″) composent BrainScaleS, chaque tranche ayant 200 000 neurones simulés. Un système de suivi (BrainScaleS-2) est actuellement en développement, avec une date d’achèvement estimée à 2023.

Le Blue Brain Project est un effort de recherche mené par la Suisse pour simuler un cerveau de souris biologiquement détaillé. Bien qu’il ne s’agisse pas d’un cerveau humain, les articles et les modèles qu’ils ont publiés sont inestimables pour faire avancer nos progrès vers des ANN neuromorphiques utiles.

Le consensus est que nous sommes très, très tôt dans nos efforts pour créer quelque chose qui peut faire des quantités de travail significatives. Le plus gros obstacle est que nous ne savons toujours pas grand-chose sur la façon dont le cerveau est connecté et apprend. Lorsque vous commencez à accéder à des réseaux de cette taille, le plus grand défi consiste à savoir comment les former.

Avons-nous même besoin de neuromorphes ?

Un contre-argument peut être avancé selon lequel nous n’avons même pas besoin de matériel neuromorphique. Des techniques telles que les apprentissages inversés par renforcement (IRL) permettent à la machine de créer les fonctions de récompense plutôt que les réseaux. En observant simplement le comportement, vous pouvez modéliser ce que le comportement a l’intention de faire et le recréer via une fonction de récompense apprise qui garantit que l’expert (l’acteur observé) fait de son mieux. Des recherches supplémentaires sont en cours sur la gestion des experts sous-optimaux pour déduire ce qu’ils faisaient et ce qu’ils essayaient de faire.

Beaucoup continueront à aller de l’avant avec les réseaux simplifiés que nous avons déjà avec de meilleures fonctions de récompense. Par exemple, un article récent de l’IEEE sur la copie de parties d’un cerveau de libellule avec un simple réseau neuronal à trois couches a montré d’excellents résultats avec une approche méthodique et informée. Bien que le réseau neuronal qui s’entraînait ne fonctionne pas aussi bien que les libellules à l’état sauvage, il est difficile de dire si cela est dû aux capacités de vol supérieures de la libellule par rapport aux autres insectes.

Chaque année, nous voyons des techniques d’apprentissage en profondeur produire des résultats meilleurs et plus puissants. Il semble qu’en seulement un ou deux articles, un domaine donné passe d’intéressant à étonnant à époustouflant. Étant donné que nous n’avons pas de boule de cristal, qui sait ? Peut-être que si nous continuons sur cette voie, nous tomberons sur quelque chose de plus généralisable qui peut être adapté à nos réseaux d’apprentissage en profondeur existants.

Que peut faire un hacker maintenant ?

Si vous souhaitez vous impliquer dans les efforts neuromorphiques, de nombreux projets mentionnés dans cet article sont open source, avec leurs ensembles de données et modèles disponibles sur GitHub et d’autres distributeurs SVN. Il existe d’incroyables projets open source, tels que NEURON de Yale ou le simulateur NEST SNN. De nombreuses personnes partagent leurs expériences sur OpenSourceBrain. Vous pouvez même créer votre propre matériel neuromorphique comme le projet du prix Hackaday 2015, NeuroBytes. Si vous voulez en savoir plus, cette enquête sur le matériel neuromorphique de 2017 est un incroyable instantané du domaine à cette époque.

Bien que la route soit encore longue, l’avenir de l’informatique neuromorphique semble prometteur.