L’article offre une perspective sur l’avenir de l’IA inspirée du cerveau alors que la bibliothèque de code Python franchit une étape majeure
Il y a quatre ans, Jason Eshraghian de l’UC Santa Cruz a développé une bibliothèque Python qui combine les neurosciences et l’intelligence artificielle pour créer des réseaux neuronaux à pointe, une méthode d’apprentissage automatique qui s’inspire de la capacité du cerveau à traiter efficacement les données. Aujourd’hui, sa bibliothèque de codes open source, appelée « snnTorch », a dépassé les 100 000 téléchargements et est utilisée dans une grande variété de projets, depuis les efforts de suivi des satellites de la NASA jusqu’aux sociétés de semi-conducteurs optimisant les puces pour l’IA.
Un article publié dans la revue Actes de l’IEEE documente la bibliothèque de codage, mais est également destiné à être une ressource éducative franche pour les étudiants et tout autre programmeur intéressé à en savoir plus sur l’IA inspirée du cerveau.
« C’est passionnant car cela montre que les gens s’intéressent au cerveau et qu’ils ont identifié que les réseaux neuronaux sont vraiment inefficaces par rapport au cerveau », a déclaré Eshraghian, professeur adjoint de génie électrique et informatique. « Les gens s’inquiètent de l’impact environnemental [of the costly power demands] des réseaux de neurones et des grands modèles de langage, et c’est donc une direction très plausible.
Construire snnTorch
Les réseaux neuronaux à pointes imitent le cerveau et les systèmes biologiques pour traiter les informations plus efficacement. Les neurones du cerveau sont au repos jusqu’à ce qu’ils reçoivent une information à traiter, ce qui provoque une augmentation de leur activité. De même, un réseau neuronal à pointe ne commence à traiter les données que lorsqu’il y a une entrée dans le système, plutôt que de traiter constamment les données comme les réseaux neuronaux traditionnels.
« Nous voulons exploiter tous les avantages du cerveau et de son efficacité énergétique et les intégrer aux fonctionnalités de l’intelligence artificielle, en tirant ainsi le meilleur des deux mondes », a déclaré Eshraghian.
Eshraghian a commencé à créer le code d’un réseau neuronal à pointe en Python comme projet de passion pendant la pandémie, en quelque sorte comme méthode pour apprendre lui-même le langage de codage Python. Concepteur de puces de formation, il s’est intéressé à l’apprentissage du codage en considérant que les puces informatiques pouvaient être optimisées pour l’efficacité énergétique en co-concevant le logiciel et le matériel pour garantir qu’ils se complètent au mieux.
Aujourd’hui, snnTorch est utilisé par des milliers de programmeurs à travers le monde sur une variété de projets, prenant en charge tout, depuis les projets de suivi des satellites de la NASA jusqu’aux principaux concepteurs de puces tels que Graphcore.
Lors de la création de la bibliothèque Python, Eshraghian a créé une documentation sur le code et du matériel pédagogique, qui lui sont venus naturellement dans le processus d’apprentissage du langage de codage. Les documents, tutoriels et cahiers de codage interactifs qu’il a créés plus tard ont explosé dans la communauté et sont devenus le premier point d’entrée pour de nombreuses personnes se renseignant sur les sujets de l’ingénierie neuromorphique et des réseaux neuronaux, qu’il considère comme l’une des principales raisons pour lesquelles sa bibliothèque est devenu si populaire.
Une ressource honnête
Sachant que ces supports pédagogiques pourraient être très précieux pour la communauté croissante d’informaticiens et au-delà intéressés par ce domaine, Eshraghian a commencé à compiler sa vaste documentation dans un article.
Le document agit comme un compagnon de la bibliothèque de codes snnTorch et est structuré comme un didacticiel, et en plus, un document d’opinion, discutant de l’incertitude parmi les chercheurs en apprentissage profond inspirés par le cerveau et offrant une perspective sur l’avenir du domaine. .
Eshraghian a déclaré que l’article indique intentionnellement à ses lecteurs que le domaine de l’informatique neuromorphique est en évolution et instable dans le but d’épargner aux étudiants la frustration d’essayer de trouver la base théorique pour la prise de décision en matière de code que la communauté des chercheurs ne comprend même pas. .
« Cet article est terriblement honnête, parce que les étudiants le méritent », a déclaré Eshraghian. « Il y a beaucoup de choses que nous faisons dans le domaine de l’apprentissage profond, et nous ne savons tout simplement pas pourquoi elles fonctionnent. Bien souvent, nous voulons affirmer que nous avons fait quelque chose intentionnellement, et nous avons publié parce que nous avons traversé une série d’expériences rigoureuses. , mais ici nous disons simplement : c’est ce qui fonctionne le mieux et nous ne savons pas pourquoi. »
Le document contient des blocs de code, un format inhabituel pour les documents de recherche typiques. Ces blocs de code sont parfois accompagnés d’explications selon lesquelles certains domaines peuvent être très instables, mais donnent un aperçu des raisons pour lesquelles les chercheurs pensent que certaines approches peuvent réussir.
Eshraghian a déclaré qu’il avait vu un accueil positif à cette approche honnête dans la communauté et qu’on lui avait même dit que le papier était utilisé dans le matériel d’intégration des startups de matériel neuromorphique.
« Je ne veux pas que mes recherches fassent subir aux gens les mêmes souffrances que moi », a-t-il déclaré.
Apprendre du cerveau et à son sujet
L’article offre une perspective sur la façon dont les chercheurs dans le domaine pourraient surmonter certaines des limites de l’apprentissage profond inspiré du cerveau qui découlent du fait que, dans l’ensemble, notre compréhension de la façon dont le cerveau fonctionne et traite l’information est assez limitée.
Pour que les chercheurs en IA puissent évoluer vers des mécanismes d’apprentissage plus proches du cerveau pour leurs modèles d’apprentissage profond, ils doivent identifier les corrélations et les divergences entre l’apprentissage profond et la biologie, a déclaré Eshraghian.
L’une de ces différences clés est que les cerveaux ne peuvent pas analyser toutes les données qu’ils ont déjà saisies de la même manière que les modèles d’IA, et se concentrent plutôt sur les données en temps réel qui leur parviennent, ce qui pourrait offrir des opportunités d’amélioration de l’énergie. efficacité.
« Les cerveaux ne sont pas des machines à voyager dans le temps, ils ne peuvent pas revenir en arrière. Tous vos souvenirs avancent à mesure que vous découvrez le monde, donc la formation et le traitement sont couplés », a déclaré Eshraghian. « L’une des choses dont je parle beaucoup dans cet article est la manière dont nous pouvons appliquer l’apprentissage en temps réel. »
Un autre domaine d’exploration dans l’article est un concept fondamental en neurosciences qui stipule que les neurones qui se déclenchent ensemble sont câblés ensemble, ce qui signifie que lorsque deux neurones sont déclenchés pour envoyer un signal en même temps, le chemin entre les deux neurones est renforcé. Cependant, la manière dont le cerveau apprend à l’échelle d’un organe reste encore mystérieuse.
Le concept « feu ensemble, câblé ensemble » a été traditionnellement considéré comme en opposition à la méthode de formation modèle de l’apprentissage profond connue sous le nom de rétropropagation, mais Eshraghian suggère que ces processus pourraient être complémentaires, ouvrant de nouveaux domaines d’exploration dans ce domaine.
Eshraghian est également enthousiaste à l’idée de travailler avec des organoïdes cérébraux, qui sont des modèles de tissu cérébral cultivé à partir de cellules souches, pour en savoir plus sur la façon dont le cerveau traite l’information. Il collabore actuellement avec des chercheurs en génie biomoléculaire du groupe Braingeneers de l’UCSC Genomics Institute pour explorer ces questions avec des modèles organoïdes.
Il s’agit d’une opportunité unique pour les ingénieurs de l’UC Santa Cruz d’incorporer le « wetware » – un terme faisant référence aux modèles biologiques pour la recherche informatique – dans le paradigme de co-conception logiciel/matériel qui prévaut dans le domaine. Le code snnTorch pourrait même fournir une plate-forme de simulation d’organoïdes, ce qui peut être difficile à maintenir en laboratoire.
« [The Braingeneers] « Nous construisons les instruments et outils biologiques que nous pouvons utiliser pour mieux comprendre comment l’apprentissage peut se produire et comment cela pourrait se traduire afin de rendre l’apprentissage en profondeur plus efficace », a déclaré Eshraghian.
Apprentissage inspiré par le cerveau à l’UCSC et au-delà
Eshraghian utilise désormais les concepts développés dans sa bibliothèque et l’article récent de sa classe sur l’informatique neuromorphique à l’UC Santa Cruz intitulé « Brain-Inspired Deep Learning ». Des étudiants de premier cycle et des cycles supérieurs dans diverses disciplines universitaires suivent le cours pour apprendre les bases de l’apprentissage profond et réaliser un projet dans lequel ils écrivent leur propre didacticiel pour snnTorch et y contribuent potentiellement.
« Il ne s’agit pas simplement de sortir d’un cours avec un examen ou d’obtenir un A plus, il s’agit maintenant de contribuer à quelque chose et de pouvoir dire que vous avez fait quelque chose de tangible », a déclaré Eshraghian.
Eshraghian collabore avec des personnes pour faire progresser le domaine de plusieurs manières, qu’il s’agisse de faire des découvertes biologiques sur le cerveau, de repousser les limites des puces neuromorphiques pour gérer les charges de travail d’IA de faible puissance, ou encore de faciliter la collaboration pour amener le style de réseau neuronal de pointe de l’informatique à d’autres domaines tels que la physique naturelle.
Les canaux Discord et Slack dédiés à la discussion du code du réseau neuronal de pointe soutiennent un environnement de collaboration florissant au sein de l’industrie et du monde universitaire. Eshraghian est même récemment tombé sur une offre d’emploi qui citait la maîtrise de snnTorch comme qualité souhaitée.