Recherche de site Web

L'avenir de l'IA est une histoire de logiciel, déclare le PDG de Graphcore


Bien qu’il soit connu pour son matériel informatique massif, le fabricant d’ordinateurs d’IA Graphcore a des sites prêts à se battre avec Nvidia pour les écosystèmes logiciels, a déclaré le PDG Nigel Toon.

« Nous en sommes probablement encore au stade de Pac Man, nous ne sommes pas encore arrivés aux jeux en trois dimensions », en ce qui concerne l'évolution de l'IA, déclare Nigel Toon, PDG de Graphcore.

« L’idée fausse ici est qu’il s’agit autant, sinon plus, d’un problème logiciel à résoudre que d’un problème matériel », a déclaré Nigel Toon, directeur général de la start-up d’informatique d’IA Graphcore. 

Graphcore est connu pour sa fabrication d’un système informatique doté de centaines de milliers de cœurs de processeur à l’intérieur de chaque puce IPU, pour résoudre les problèmes d’intelligence artificielle. 

Ses dernières machines sont équipées d’une puce IPU, « Bow », qui se compose de deux puces semi-conductrices empilées l’une sur l’autre.

Et pourtant, Toon, qui était en ville la semaine dernière depuis le siège de Graphcore à Bristol, en Angleterre, a déclaré à ZDNet que le logiciel est au cœur du très grand défi des problèmes d'IA de plus en plus importants, tandis que le matériel, bien qu'il ne soit en aucun cas trivial, est, dans un sens, secondaire.

« Vous pouvez construire toutes sortes de matériel exotique, mais si vous ne pouvez pas réellement construire le logiciel qui peut traduire la capacité d'une personne à décrire à un niveau très simple en matériel, vous ne produisez pas vraiment de solution », a déclaré Toon lors d'un déjeuner au café The Grey Dog dans le quartier d'Union Square à Manhattan.

C’était l’un des nombreux voyages de Toon depuis que les confinements pandémiques se sont estompés. Il se réjouit de retrouver les clients. « C'est bon de voyager à nouveau », a-t-il dit, et il s'est retrouvé face à face.

Parmi les points à souligner lors de son passage aux États-Unis, il y a le facteur logiciel. Plus précisément, la capacité du logiciel Poplar de Graphcore, qui traduit les programmes écrits sur des frameworks d'IA tels que PyTorch ou TensorFlow en code machine efficace. 

C’est, en fait, l’acte de traduction qui est la clé de l’IA, affirme Toon. Quel que soit le matériel que vous construisez, le défi est de savoir comment traduire ce que fait le programmeur PyTorch ou TensorFlow en transistors disponibles. 

Une conception courante est que le matériel d’IA consiste à accélérer les multiplications matricielles, l’élément constitutif des mises à jour du poids du réseau neuronal. Mais, fondamentalement, ce n'est pas le cas.

« S’agit-il simplement de multiplication matricielle, et est-ce simplement des circonvolutions dont nous avons besoin, ou y a-t-il d’autres opérations dont nous avons besoin ? », a demandé Toon, rhétoriquement. 

En fait, a-t-il dit, « il s'agit beaucoup plus de la complexité des données ».

Un grand réseau neuronal, comme GPT-3, est « vraiment une mémoire associée », de sorte que les connexions entre les données sont essentielles, et que le mouvement des choses dans et hors de la mémoire devient le goulot d’étranglement pour l’informatique. 

Toon connaît intimement un tel problème de connexion. Toon a passé quatorze ans chez le fabricant de puces programmables Altera, se souvient-il, racheté plus tard par Intel. Une puce logique programmable, connue sous le nom de « FPGA », fonctionne en ayant ses blocs informatiques, appelés cellules, liés pour chaque tâche en brûlant un fusible entre eux. 

« Tous les logiciels d’un FPGA concernent la façon dont vous prenez le graphique, qui est votre net-list ou votre RTL, et le traduisez en l’interconnexion à l’intérieur du FPGA », a-t-il expliqué.

De telles tâches logicielles deviennent très complexes. 

« Vous construisez une hiérarchie d'interconnexions à l'intérieur de la puce pour essayer de faire fonctionner cela, mais, d'un point de vue logiciel, c'est un problème NP-Difficile de mapper un graphique aux interconnexions », a-t-il déclaré, faisant référence au « temps polynomial non déterministe », une mesure de la complexité de calcul. 

Parce qu'il s'agit de traduire la complexité des associations en transistors, « c'est vraiment un problème de graphes, c'est pourquoi nous avons nommé la société Graphcore », a déclaré Toon. D’une manière générale, un graphique est l’ensemble des interdépendances entre différentes tâches de calcul dans un programme donné. 

« Vous devez partir d'une approche informatique qui dit : il va s'agir de graphiques, vous devez construire un processeur pour travailler sur des graphiques, pour effectuer un traitement de graphes hautement parallèle. »

« Nous construisons le logiciel à partir de cela, nous construisons le processeur », a-t-il déclaré.

Cela signifie que le matériel ne sert que le logiciel. « L’ordinateur suit la structure des données », affirme Toon. « C'est un problème logiciel. »

C'est l'occasion pour Toon de s'inspirer du logiciel CUDA de Nvidia, qui détient un pouvoir énorme dans le monde de l'IA. 

« C'est intéressant : beaucoup de gens disent que CUDA est en quelque sorte cet écosystème qui rend impossible la concurrence pour quiconque d'autre », a observé Toon. « Mais ce que vous ne comprenez pas, c’est que personne ne programme dans CUDA, personne ne veut programmer dans CUDA, les gens veulent programmer dans TensorFlow et maintenant PyTorch, et ensuite, JAX - ils veulent une construction de haut niveau », a-t-il déclaré, faisant référence aux diverses bibliothèques de développement open source construites par Meta et Google et d’autres. 

« Tous ces cadres sont des cadres de graphes », a-t-il observé, « vous décrivez un graphe assez abstrait, avec de grands opérateurs au cœur de chacun des éléments à l'intérieur du graphe. »

Nvidia, a noté Toon, « a construit un ensemble incroyable de bibliothèques pour traduire à partir de cette abstraction de haut niveau avec laquelle le programmeur est à l'aise - c'est le travail que Nvidia a fait, pas nécessairement CUDA. »

Entrez dans l'offre concurrente de Graphcore, Poplar, la chose qui se traduit de PyTorch et du reste par ce qu'il prétend être le matériel plus efficace de Graphcore. Poplar démonte le graphe de calcul et le traduit en toutes les portes qui se trouvent dans le matériel Graphcore aujourd’hui, et en celles qui remplaceront ces portes demain. 

Il y a cependant un scepticisme à propos de Graphcore, ou de l’un des nombreux autres jeunes espoirs, tels que Cerebras Systems et SambaNova, en concurrence avec Nvidia sur les bibliothèques auxquelles Toon fait référence. Dans un éditorial d’avril, la rédactrice en chef Linley Gwennap du prestigieux Microprocessor Report, a écrit que « le logiciel, et non le matériel », est toujours le problème. Gwennap affirme que le temps de combler l’écart s’estompe pour Graphcore et d’autres, car Nvidia ne cesse de s’améliorer avec des améliorations matérielles telles que Hopper. 

Les sceptiques comme Gwennap n’apprécient-ils pas les progrès du logiciel Poplar ?

« C'est un voyage », a déclaré Toon. « Si vous aviez discuté avec Poplar il y a deux ans, vous auriez dit : ce n'est pas assez bon ; si vous vous engagez avec Poplar maintenant, vous diriez que c'est en fait assez bon.

« Et dans deux ans, les gens se diront : Wow, cela me permet de faire des choses que je ne peux pas faire sur un GPU. »

Le logiciel est déjà, affirme Toon, son propre écosystème en expansion. « Regardez l'écosystème que nous avons créé autour de Poplar, des choses comme PyTorch Lightning, PyTorch Geometric », deux extensions de PyTorch qui sont portées sur Poplar et les puces IPU Graphcore. 

« Ce n'est pas seulement TensorFlow, c'est toute une suite », a-t-il déclaré. « TensorFlow convient parfaitement à un chercheur en IA, mais ce n'est pas un environnement dans lequel un data scientist, un individu ou une très grande entreprise peut venir jouer avec. »

Les praticiens, par opposition aux scientifiques, ont besoin d’outils accessibles. « Nous travaillons avec Hugging Face, Weights and Biases », entre autres outils d’apprentissage automatique, a-t-il noté. « Il y a beaucoup d'autres bibliothèques qui sortent, il y a des entreprises qui construisent des services sur des IPU » et « il y a des MLOps qui ont été portés pour fonctionner avec Poplar ».

Graphcore est « beaucoup plus avancé en termes de construction de cet écosystème logiciel pour créer cette facilité d’utilisation, cette façon dont les gens peuvent entrer », a-t-il déclaré, par rapport à Cerebras et à d’autres concurrents. 

Il s’agit en fait d’un duopole logiciel, soutient Toon. « Vous regardez n'importe qui d'autre, même les grandes entreprises, il n'y a personne d'autre qui a cela à part nous et Nvidia, cette gamme d'écosystèmes. »

En attendant, affirme-t-il, les avancées matérielles de Nvidia ne sont pas toutes fissurées parce que la liberté de conception de Nvidia est limitée par son propre succès. "Que fait Nvidia ? Ils ont ajouté des cœurs Tensor, et maintenant ils ont ajouté des cœurs Transformer - ils ne peuvent pas changer le cœur fondamental du processeur parce que s'ils le faisaient, toutes les bibliothèques devraient être jetées.

Alors que Graphcore est toujours à la traîne de Nvidia dans la plupart des benchmarks de la suite de tests de l’industrie MLPerf, la combinaison de Poplar et de la conception IPU offre une supériorité mesurable dans des cas particuliers où il peut être appliqué de manière réfléchie, affirme-t-il. 

« Sur certains modèles, comme un réseau de neurones à graphes, par exemple, nous constatons des performances cinq ou dix fois supérieures » à celles des machines basées sur Nvidia, a-t-il déclaré, « parce que la structure de données, l'architecture sous-jacente que nous avons construite à l'intérieur de l'IPU, est beaucoup plus alignée sur ce type de calcul de type graphique clairsemé. » 

Le logiciel Poplar a également permis de multiplier par deux ou trois l’exécution de modèles Transformer en trouvant des moyens astucieux de paralléliser les éléments du graphique, a-t-il déclaré. 

L’idée que le logiciel est un champ de bataille et que Nvidia peut avoir une véritable concurrence repose sur le principe que l’IA elle-même évolue encore. Il y a beaucoup de chemin à parcourir pour que les programmes d’IA s’agrandissent, soutient Toon, ce qui met à rude épreuve les capacités de calcul. 

Et le problème fondamental de déchiffrer le code de la cognition humaine est encore lointain. 

D’abord, les programmes ne cessent de s’étoffer. 

Les plus grands modèles d'IA d'aujourd'hui, tels que le Megatron-Turing NLG de Nvidia et Microsoft, un modèle génératif en langage naturel dérivé de l'innovation Transformer de 2017, ont un demi-billion de paramètres, ou poids, les éléments d'un réseau neuronal qui sont réglés et qui sont l'analogue des synapses dans les neurones humains réels. 

Certains, y compris Cerebras, ont indiqué un avenir de billions, voire de centaines de billions de paramètres, et Toon fait écho à ce sentiment. 

« Au fur et à mesure que vous augmentez le nombre de paramètres et la quantité de données », a observé Toon, « vous augmentez le calcul d'un multiplicande de ces deux éléments, et c'est pourquoi il y a ces fermes de GPU massives qui évoluent. »

Le chiffre de 100 trillions est une sorte d’objectif magique parce qu’on pense qu’il s’agit du nombre de synapses dans un cerveau humain, il sert donc de référence en quelque sorte.

Il n’y a clairement pas de controverse sur la question de plus en plus grand, étant donné que Graphcore et Nvidia et tous les autres construisent des machines de plus en plus puissantes pour cela.

Toon s’intéresse cependant au deuxième point, la question de l’informatique de savoir si quelque chose d’utile est fait avec tout cela, et si elle peut s’approcher de l’intelligence humaine. 

« Le problème, c’est que si vous aviez un modèle qui comportait 100 milliards de paramètres, cela le rendrait-il aussi intelligent qu’une personne ? », a déclaré Toon.

Il ne s’agit pas simplement de lancer des transistors sur la question, mais aussi de concevoir un système. 

« Vous savez, savons-nous vraiment comment l’entraîner ? », c’est-à-dire entraîner le réseau neuronal une fois qu’il a 100 trillions de poids. « Sait-on lui donner la bonne information ? Savons-nous comment construire ce modèle de manière à ce qu’il corresponde réellement à l’intelligence d’un humain, ou serait-il si inefficace malgré de nombreux autres paramètres ?

En d’autres termes, « Pourrions-nous réellement savoir comment construire une machine qui correspondrait à l’intelligence du cerveau ? »

Une réponse, propose-t-il, est la spécialisation. Un modèle de cent trillions de paramètres pourrait être vraiment bon pour quelque chose de défini de manière étroite. « Dans un système comme [l'algorithme de DeepMind pour jouer] à Atari, vous avez suffisamment de contraintes pour comprendre ce monde », a déclaré Toon. 

De même, « Peut-être pourrions-nous acquérir une compréhension suffisante, par exemple, du fonctionnement des cellules et de la façon dont l’ADN se convertit en ARN et en protéines, pour qu’alors vous puissiez avoir un système d’apprentissage par renforcement qui utiliserait cette compréhension pour déterminer, par exemple, comment puis-je plier les protéines de telle sorte que si elles se lient à cette cellule, et je pouvais communiquer avec la cellule - et disons que la cellule était une cellule cancéreuse - je pouvais attacher un médicament à cette protéine, et il pouvait réparer le cancer », a déclaré Toon. 

« Ce serait un peu comme le jeu Atari que DeepMind a construit et qui est devenu surhumain, un système surhumain pour tuer les cancers - il serait spécialisé. »

Une autre approche, suggère-t-il, est une « compréhension plus générale du monde » qui s’apparenterait à la façon dont les nourrissons humains apprennent, en « étant exposés à d’énormes quantités de données sur le monde ». Le problème des cent milliards de synapses deviendrait alors celui de la construction de « hiérarchies », a déclaré Toon. 

« Les humains construisent une hiérarchie de compréhension du monde », a-t-il dit, puis ils « interpolent » en remplissant les blancs. « Vous utilisez les choses que vous savez pour extrapoler et imaginer », a-t-il déclaré. 

« Les humains sont très mauvais pour extrapoler ; ce que nous sommes bien meilleurs dans l'interpolation, vous savez, il y a un élément qui manque - je sais ceci, je sais cela, et c'est quelque part au milieu.

La pensée de Toon sur la hiérarchie fait écho à certains théoriciens du domaine, y compris le scientifique en chef de l'IA de Meta, Yann LeCun, qui a parlé de la composition de hiérarchies de compréhension dans les réseaux neuronaux. Toon a indiqué qu'il était d'accord avec certains aspects de la pensée de LeCun. 

De ce point de vue, a déclaré Toon, le défi de l’IA devient celui de « comment construire une compréhension du monde suffisamment grande pour faire beaucoup plus d’interpolation que d’extrapolation ? »

Et ce défi serait, selon lui, celui des données très « clairsemées », des mises à jour des paramètres à partir de petits éléments de données de suivi, plutôt que de grandes quantités de réentraînement sur toutes les données.

« Même dans le cadre d'une chose spécifique sur laquelle vous mettez le monde à jour, vous devrez peut-être toucher à différents points de votre compréhension du monde », a expliqué Toon. « Il se peut que tout ne soit pas bien réuni au même endroit, les données sont très désordonnées et très rares. »

D'un point de vue informatique, « vous vous retrouveriez avec de nombreux éléments différents de fonctionnement parallèle », a-t-il déclaré, « qui sont tous très clairsemés, car ils travaillent sur différents éléments de données ». 

Les deux idées, l'interpolation et le modèle plus spécifique de tueur de cancer, sont conformes aux idées exposées par le cofondateur de Toon, le directeur technique de Graphcore, Simon Knowles, qui a parlé de « distiller » un réseau neuronal plus général et très vaste en quelque chose de spécifique. 

Ce sont aussi deux idées qui sembleraient jouer sur l’idée que le logiciel Poplar remplit une fonction clé. Si les nouvelles données sont rares, comblent des lacunes, et doivent être tirées de nombreux endroits dans une mémoire associative, et à travers de nombreuses opérations graphiques, alors Poplar a un rôle important en tant que sorte de policier de la circulation pour distribuer ces données et tâches en parallèle entre les puces IPU. 

Malgré l’exposé de ce scénario, Toon n’est en aucun cas idéologique. Il est conscient que personne n’a encore la réponse avec certitude. « Je pense qu’il y a différentes philosophies et différentes idées sur la façon dont cela fonctionne, mais personne ne le sait vraiment », a-t-il déclaré à propos du domaine. « Et c'est ce que les gens explorent. »

Quand toutes les questions profondes ont-elles une réponse ? Probablement pas de sitôt.

« Ce qui est étonnant avec l'IA, c'est que nous sommes à dix ans d'AlexNet, et nous avons toujours l'impression d'explorer », a-t-il déclaré, faisant référence au réseau neuronal qui a excellé lors du concours ImageNet en 2012, mettant en avant les formes d'apprentissage profond de l'IA.  

« J’utilise toujours l’analogie du jeu informatique », a déclaré Toon, qui a écrit un jeu Star Wars pour son premier ordinateur, un kit 6502 d’un fabricant d’ordinateurs « oublié depuis longtemps ». « Nous en sommes probablement encore au stade de Pac Man, nous ne sommes pas encore arrivés aux jeux en trois dimensions », en ce qui concerne l'évolution de l'IA, a-t-il déclaré.

Sur le chemin des jeux 3D, « je ne pense pas qu'il y aura un hiver de l'IA », a opiné Toon, faisant référence aux nombreuses fois au fil des décennies où le financement s'est tari et a anéanti l'industrie. 

« La différence aujourd’hui, c’est que ça marche, c’est réel », a-t-il déclaré. À l'époque, avec des entreprises d'IA telles que Thinking Machines dans les années 1980, « cela ne fonctionnait tout simplement pas, nous n'avions pas assez de données, nous n'avions pas assez de calcul.  

« Maintenant, il est clair que cela fonctionne, il y a des preuves claires, cela apporte une valeur énorme », a déclaré Toon. « Les gens construisent des entreprises entières grâce à cela », a-t-il déclaré. « Je veux dire, ByteDance et TikTok sont fondamentalement une entreprise axée sur l'IA, et il s'agit simplement de savoir à quelle vitesse cela s'infiltre dans l'ensemble de l'espace technologique et dans les entreprises. »

Les batailles entre les géants de la technologie, comme entre TikTok et l'instagram de Meta, peuvent être considérées comme une bataille de l'IA, une course aux armements pour avoir les meilleurs algorithmes.

Graphcore a certainement de l’argent pour affronter n’importe quel hiver, on pourrait penser, avec 730 millions de dollars de financement par capital-risque. Toon a refusé de fournir des informations sur les revenus de Graphcore. 

« Nous avons de l'argent, nous avons une équipe », a-t-il déclaré. « Je pense qu'il est toujours possible d'avoir plus d'argent et une équipe plus grande, mais il faut travailler dans les limites qui existent. » Graphcore compte 650 employés. 

Pour l’instant, un hiver IA n’est pas le défi. Vendre des clients sur la combinaison logicielle supérieure de Poplar et IPU est. Cela ressemble certainement à une bataille difficile contre le géant Nvidia. 

Meta, propriétaire de Facebook, a récemment annoncé un « super ordinateur de recherche » pour l’IA et le Metaverse, construit sur 6 080 GPU Nvidia. Il semble que les gens veulent juste de plus en plus de Nvidia. 

« Je pense que le défi que nous avons en tant qu'entreprise est de savoir si nous pouvons changer le cœur et l'esprit des gens », a déclaré Toon. 

Eh bien, le peuvent-ils ?

« Surveillez cet espace », dit Toon, et se dirigea vers l’aéroport. 

Articles connexes