FRFAM.COM >> Science >> Technologie

Comment un nouveau matériel peut réduire la consommation d'énergie de l'intelligence artificielle

L'intelligence artificielle repose sur le traitement de grandes quantités de données, ce qui consomme beaucoup d'énergie. Une nouvelle puce, dans laquelle ces calculs sont effectués directement dans la mémoire au moyen de la technologie analogique, peut réduire considérablement cette consommation d'énergie.

Notre planète se réchauffe. Pour résoudre ce problème, une transition climatique est nécessaire. Cette transition est le moteur du programme de travail de la Commission européenne pour 2020, intitulé "Vers une Europe équitable, climatiquement neutre et numérique".

Outre une transition écologique, nous sommes également confrontés à une transition numérique. La transformation numérique est donc le deuxième fer de lance du programme de l'UE, avec un accent particulier sur l'intelligence artificielle (IA). Lorsque la Commission européenne affirme que « les technologies telles que l'IA seront un facteur crucial pour atteindre les objectifs du Green Deal », elle lie les deux fers de lance. L'idée derrière tout cela :utiliser l'IA comme une arme dans la lutte contre le réchauffement climatique.

Le coût écologique de l'IA

L'intelligence artificielle a un grand potentiel pour, par exemple, faire des prévisions climatiques plus précises, détecter les pertes d'énergie ou aider à décarboner diverses industries. D'autre part, la technologie elle-même a également un coût écologique. Après tout, il repose sur le traitement de quantités gigantesques de données. Cela nécessite déjà une part substantielle de la production mondiale d'électricité. De plus, le nombre de calculs augmente de façon exponentielle. Bien que ces calculs soient généralement effectués dans des centres de données qui sont devenus beaucoup plus économes en énergie ces dernières années et utilisent en partie des énergies renouvelables, l'impact sur notre planète est significatif.

Par exemple, des chercheurs de l'Université du Massachusetts ont calculé l'année dernière les émissions associées aux modèles d'entraînement dans le traitement du langage naturel (principalement utilisé pour améliorer les moteurs de traduction). Ils l'ont fait en testant brièvement différents algorithmes sur un processeur graphique, en extrapolant la consommation d'énergie avec le temps de formation signalé et en le convertissant en CO2 émissions basées sur le mix énergétique moyen de différents fournisseurs de cloud. Conclusion :le réglage fin de l'algorithme le plus énergivore génère 284 tonnes de CO2 libre. Cela équivaut au CO2 émissions de cinq voitures sur l'ensemble de leur durée de vie, y compris leur construction.

Il y a donc une prise de conscience croissante chez les chercheurs en IA de prendre davantage en compte le coût écologique des algorithmes qu'ils développent. Les chercheurs ont récemment pu saisir leur temps de calcul total ainsi que le matériel et le service cloud utilisés à cette fin dans un calculateur d'émissions d'apprentissage automatique , après quoi le CO2 estimé les émissions sont incluses dans leur document.

Vers du matériel d'IA écologique

En substance, vous pouvez limiter cette empreinte écologique de deux manières différentes :via le logiciel et via le matériel. Vous pouvez essayer de développer des algorithmes plus efficaces qui minimisent le nombre de calculs. Un exemple typique est la technique d'élagage du réseau . Ce faisant, vous « taillez » toutes les parties qui n'ont que peu d'importance pour le résultat final. Ce qui reste est un réseau neuronal qui a la même fonctionnalité, mais qui est plus petit, plus rapide et plus économe en énergie.

Vous pouvez également concevoir du matériel économe en énergie. À l'heure actuelle, les calculs d'IA sont principalement effectués sur des processeurs graphiques (GPU). Ces processeurs n'étaient pas spécialement conçus pour ce type de calcul, mais leur architecture s'y est avérée bien adaptée. En raison de la grande disponibilité des GPU, les réseaux de neurones ont décollé. Ces dernières années, des processeurs ont également été développés pour accélérer spécifiquement les calculs d'IA (comme les Tensor Processing Units - TPU - de Google). Ces processeurs peuvent effectuer plus de calculs par seconde que les GPU, tout en consommant la même quantité d'énergie. D'autres systèmes reposent sur ce que l'on appelle des FPGA, qui consomment moins d'énergie mais calculent également beaucoup moins rapidement. Si l'on compare le rapport entre la vitesse de calcul et la consommation d'énergie, l'ASIC, concurrent du FPGA, obtient les meilleurs résultats. La figure ci-dessous compare la vitesse et la consommation d'énergie de divers composants. Le rapport entre les deux, la performance énergétique, s'exprime en TOPS/W (tera opérations par seconde par Watt ou le nombre de trillions de calculs que vous pouvez effectuer par unité d'énergie). Cependant, pour augmenter considérablement l'efficacité énergétique, de 1 TOPS/W à 10 000 TOPS/W, une toute nouvelle technologie est nécessaire.

Comment un nouveau matériel peut réduire la consommation d énergie de l intelligence artificielle

Du cloud à la périphérie

Actuellement, la plupart des calculs sont envoyés aux processeurs d'un centre de données. Cependant, nous pouvons également choisir d'effectuer (une partie) des calculs d'IA dans un endroit différent. "Vous pouvez économiser beaucoup d'énergie si vous parvenez à traiter les données localement", explique Diederik Verkest, directeur du programme d'apprentissage automatique chez imec. "La consommation d'énergie combinée de tous les centres de données dans le monde est gigantesque, mais la quantité d'énergie nécessaire pour envoyer des données de votre appareil aux centres de données est à peu près la même. Cette énergie de transmission serait évitée si les calculs étaient effectués dans l'appareil lui-même. »

Ce faisant, nous pouvons répondre à une évolution qui est déjà en cours :celle du cloud vers le « edge ». De plus en plus de données sont collectées via des appareils de plus en plus petits. Si nous voulons également pouvoir traiter ces données directement sur le « dispositif de périphérie », la consommation d'énergie pour ces calculs doit dans tous les cas être considérablement réduite. Faible à quel point? "Cela dépend de la taille de l'appareil dans lequel ils sont exécutés", explique Verkest. Le concept de « edge device » peut être interprété de différentes manières. Il peut s'agir d'un petit capteur IoT ou d'un téléphone portable, mais aussi d'une voiture autonome. « Dans une voiture autonome, des décisions rapides sont vitales et vous n'avez pas le temps d'envoyer les calculs dans les deux sens à un centre de données. La valise est donc actuellement remplie de GPU qui traitent les images localement », explique Verkest.

« Dans le cas de la reconnaissance d'images, vous parlez de vingt billions d'opérations pour classer un objet. Dans un centre de données, vous effectueriez ces calculs en une fraction de seconde avec des GPU qui consomment environ 200 watts. Si vous êtes déjà satisfait du temps de calcul d'une seconde pour reconnaître une image, alors un GPU de 20 Watt est suffisant. C'est peut-être encore faisable dans une voiture, mais cette consommation d'énergie est trop élevée pour les petits appareils. Si la batterie de votre smartphone a une capacité de 4000 mAh, alors vous disposez de 14,8 Wh. Si on y faisait tourner un GPU de 20 Watts, il faudrait recharger son smartphone après moins de 45 minutes chrono. Pour les capteurs IoT, où la batterie doit durer beaucoup plus longtemps, l'utilisation de ce type de processeur est déjà totalement irréalisable. Même aujourd'hui, il n'existe pas de solutions pour ce segment », déclare Verkest. "C'est pourquoi nous empruntons maintenant des chemins complètement nouveaux."

 Refonte de l'architecture informatique traditionnelle

Afin de permettre aux appareils sans fil de prendre des décisions rapidement, de nouvelles architectures informatiques doivent être conçues. Plus précisément, une solution économe en énergie est nécessaire pour la phase de prédiction. Avant qu'un algorithme puisse faire des prédictions, il doit d'abord être "entraîné". Les calculs lors de cette phase d'apprentissage peuvent tout aussi bien être effectués en amont dans le data center. Une fois la phase d'apprentissage terminée, l'appareil intelligent lui-même doit être capable de traiter de nouvelles données afin de faire la bonne prédiction. C'est cette partie des calculs, la soi-disant "inférence", qui sera effectuée localement.

Supposons, par exemple, que nous ayons appris à un système d'IA à distinguer un chat d'un chien. Cela signifie que nous avons présenté un réseau de neurones avec beaucoup, beaucoup d'images d'animaux et nous lui avons donné un retour continu jusqu'à ce qu'il optimise ses paramètres de manière à pouvoir faire la bonne prédiction. Si nous montrons maintenant une nouvelle photo d'animal, l'algorithme peut fournir un résultat précieux par lui-même (par exemple, "avec 95 % de probabilité, c'est un chat"). Au cours de cette phase d'inférence, le système doit parcourir de grandes quantités de données. Non seulement la nouvelle photo de chat, mais aussi les paramètres précédemment appris sont récupérés de la mémoire. Le déplacement de ces données nécessite beaucoup d'énergie.

Depuis les premiers jours de l'ère de l'informatique numérique, le processeur a été séparé de la mémoire. Dans le processeur, des opérations sont effectuées sur des éléments de données extraits de la mémoire. Lorsque ces opérations sont effectuées sur des quantités massives de données, leur récupération prend parfois plus de temps que le temps nécessaire pour effectuer l'opération. Ce problème est particulièrement apparent dans les calculs d'IA, car la phase d'inférence repose sur la multiplication de grands vecteurs et matrices.

De plus, chaque opération est effectuée avec la précision d'un ordinateur numérique, ce qui nécessite également beaucoup d'énergie. Ces dernières années, cependant, les chercheurs ont établi que le résultat final (reconnaissance de formes) n'est guère influencé par la précision de calcul avec laquelle chaque opération individuelle est effectuée. Vous pourriez donc économiser de l'énergie en effectuant ces calculs le plus près possible de la mémoire, avec une précision moindre. C'est pourquoi le groupe de recherche de Verkest a proposé une nouvelle approche qui renouvelle complètement l'architecture informatique traditionnelle :les calculs sont effectués directement en mémoire, en utilisant la technologie analogique.

L'approche analogique

Intégrer un système analogique dans un système numérique ? À première vue, cela semble être une décision étrange dans un monde où tout est numérisé. Les techniques analogiques, qui utilisent des signaux continus au lieu de zéros et de uns, sont par nature moins précises. Mais comme mentionné, effectuer chaque opération avec une grande précision n'est pas une exigence pour obtenir un résultat final précis. De plus, avec cette approche analogique, vous obtenez le même résultat plus rapidement et avec moins de consommation d'énergie.

Qu'est-ce qui se passe avec ça? En utilisant les lois de l'électrotechnique, les opérations d'une multiplication matrice-vecteur peuvent être effectuées toutes en même temps, plutôt que l'une après l'autre. Si une tension est affectée aux valeurs d'entrée et une conductance aux paramètres appris, chaque multiplication correspond à un courant (loi d'Ohm). Vous pouvez les additionner (loi du courant de Kirchoff), de sorte que la valeur du courant vous donne le résultat de la multiplication matrice-vecteur. De cette façon, vous pouvez effectuer le calcul directement sans avoir à récupérer les paramètres à chaque fois.

Comment un nouveau matériel peut réduire la consommation d énergie de l intelligence artificielle

Pour démontrer qu'elle fonctionne également efficacement dans la pratique, la nouvelle architecture a été intégrée dans une puce. L'accélérateur d'inférence analogique (AnIA), comme la nouvelle puce est appelée, atteint 2 900 TOPS/W, soit 2 900 billions d'opérations par Joule. "Il s'agit d'une implémentation de référence, avec laquelle nous voulons démontrer qu'il est possible d'effectuer des calculs analogiques en mémoire", explique Verkest. "Nous pouvons le mettre en œuvre de manière compacte et son efficacité énergétique est déjà dix à cent fois supérieure à celle des puces numériques."

Le but ultime est d'évoluer à terme vers 10 000 TOPS/W (10 000 trillions d'opérations par Joule). La manière concrète d'y parvenir est décrite dans un article récent, qui propose un plan directeur pour le développement de ces puces extrêmement économes en énergie et compactes. De cette manière, les capteurs sans fil pourront reconnaître de manière autonome des modèles sur les données qu'ils ont eux-mêmes collectées. Un aller-retour vers un centre de données n'est alors plus nécessaire.


[]