Il n'y a pas si longtemps, dire "j'ai acheté une bonne carte graphique (GPU)" signifiait "je vais jouer à des jeux vidéo gourmands" ou "j'ai commencé le montage vidéo". Le cerveau des ordinateurs était toujours le CPU, et le GPU n'était qu'un appareil auxiliaire pour afficher des images jolies.

Mais avec l'avènement de l'IA générative et de l'apprentissage en profondeur, le paysage a complètement changé. Les GPU hautes performances sont désormais indispensables pour faire tourner ou entraîner des modèles d'IA sur un PC personnel. C'est pourquoi NVIDIA est devenu l'entreprise la plus valorisée au monde.

Pourquoi, alors, le GPU, semblable à un simple travailleur, a-t-il pris la vedette à côté du sage docteur qu'est le CPU à l'ère de l'IA ? Le secret est caché dans le 'vecteur' et la 'matrice', ainsi que dans 'l'algèbre linéaire' que nous avons appris à l'école secondaire.

1. Comment enseigner 'pomme' et 'banane' à un ordinateur : Vecteur (Vector)



Lorsque nous pensons "une pomme est rouge et ronde", "une banane est jaune et longue", comment un ordinateur comprend-il ce concept ? L'ordinateur ne connaît que des 0 et des 1, c'est-à-dire des chiffres. C'est pourquoi les informaticiens et les mathématiciens ont décidé de convertir tous les concepts du monde en ensembles de chiffres, c'est-à-dire en vecteurs.

Supposons que nous représentions les caractéristiques des fruits par un vecteur tridimensionnel [couleur, forme, douceur]. (Rouge=1, Jaune=10 / Ronde=1, Allongée=10)

  • Pomme : $[1, 1, 8]$

  • Banane : $[10, 10, 9]$

  • Pomme verte : $[2, 1, 7]$

Une fois que les données sont converties en vecteur, quelque chose d'incroyable se produit : nous pouvons calculer la "similarité".

Dans l'espace, les coordonnées de la pomme et de la pomme verte sont proches, tandis que la banane est éloignée. La raison pour laquelle l'IA conclut que "la pomme et la pomme verte sont similaires" est le calcul de la distance dans cet espace vectoriel.

2. Un énorme cube formé de vecteurs : Tenseur (Tensor)

Cependant, les données que l'IA doit traiter ne se limitent pas à trois fruits.

Pensons à une seule photo couleur de 1000 pixels de large et 1000 pixels de haut. Chaque pixel nécessite trois chiffres pour R, G et B, donc une seule photo est un énorme amas de $1000 \times 1000 \times 3$ chiffres.

  • Scalaire (Scalar) : un chiffre (par exemple : 5)

  • Vecteur (Vector) : un tableau d'un seul rang de chiffres (par exemple : [1, 2])

  • Matrice (Matrix) : un tableau bidimensionnel de chiffres (feuille Excel)

  • Tenseur (Tensor) : un amas de chiffres de trois dimensions ou plus (en forme de cube)

La raison pour laquelle le cadre d'IA de Google s'appelle 'TensorFlow' vient de cela. L'IA est une machine qui passe sans cesse ces énormes amas de chiffres (tenseurs) pour calculer.

3. La réalité de l'IA : Multiplications et additions infinies (Opérations matricielles)



Quand on parle de Deep Learning, on pourrait penser à un raisonnement logique incroyablement complexe, mais en regardant de plus près, il s'agit en réalité de la simple répétition de multiplications matricielles.

La formule d'algèbre linéaire comme $Y = WX + b$ multiplie les données d'entrée (X) par des poids (W) et ajoute un biais (b) des millions, voire des milliards de fois.

Le problème n'est pas la difficulté de ces calculs mais plutôt la 'quantité'.

  • Mode de fonctionnement du CPU : "Ok, je calcule la première ligne... T'as fini ? Alors, la deuxième ligne..." (traitement séquentiel)

  • Exigence de l'IA : "Fais 100 millions de multiplications en même temps !"

C'est là que le génie mathématicien (CPU) est complètement perdu. Peu importe à quel point il est intelligent, il ne peut pas faire 100 millions de devoirs en même temps car il n'est qu'un seul corps.

Image d'un AI utilisant un GPU pour des opérations tensorielles

4. Le pinceau qui colorait les pixels, devenu le cerveau de l'IA

Le sauveur qui est apparu à ce moment-là est le GPU (Unité de traitement graphique). À l'origine, le GPU a été conçu pour dessiner des images à l'écran.

Pensez à un écran FHD qui a environ 2 millions de pixels. Lorsque vous jouez à un jeu vidéo en 3D, le GPU doit simultanément calculer pour chacun de ces 2 millions de pixels : "Quelle couleur devrais-tu être ?", "C'est une ombre, donc assombri un peu."

  • CPU : quelques cœurs très intelligents (4 à 16 docteurs) → optimisé pour des tâches logiques complexes et séquentielles

  • GPU : des milliers de cœurs qui ne savent effectuer que des calculs simples (5000 élèves d'école primaire) → optimisé pour le traitement simultané des calculs répétitifs (calculs parallèles)

Les développeurs ont réalisé.

"Attendez, calculer les coordonnées des pixels dans un jeu 3D et les colorer en même temps, ou multiplier des matrices en même temps dans l'apprentissage en profondeur, c'est mathématiquement exactement la même chose ?"

La capacité de traitement parallèle massive du GPU, développée pour le traitement graphique, a coïncidé de manière fortuite (ou inévitable) avec les opérations matricielles de l'apprentissage en profondeur. Il ne s'agit que d'un changement dans son travail : au lieu de projeter des pixels à l'écran, il projette des données IA, mais le travail (opération matricielle) est le même.

5. Conclusion : Les leçons de mathématiques au lycée n'ont pas été vaines

En résumé, voici ce que cela donne :

  1. Les informaticiens et mathématiciens ont créé des vecteurs et des tenseurs pour comprendre le monde mathématiquement (ou pour faire comprendre aux machines).

  2. Le traitement de ces tenseurs a nécessité l'algèbre linéaire (opérations matricielles).

  3. Le GPU qui calculait simultanément des milliers de pixels était déjà optimisé pour ces opérations matricielles.

Ces trois éléments ont coïncidé pour rendre possible la révolution de l'IA actuelle.

Vous vous êtes déjà demandé : "À quoi cela sert-il d'apprendre les vecteurs et les scalaires au lycée ?" et à l'université, vous avez vous accroché à la multiplication matricielle en algèbre linéaire ? Je me souviens qu'à ma première année d'université, l'algèbre linéaire était si ennuyante que je ne l'avais pas étudiée, ce qui m'a valu de mauvaises notes, et en troisième année, je devais la reprendre pour remonter ma note. La deuxième fois, j'ai bien travaillé, mais ça restait ennuyeux, surtout par rapport aux équations différentielles. Cependant, c'est étonnant de réaliser que cette mathématique douloureuse est devenue, 20 ans plus tard, la clé pour construire l'intelligence artificielle la plus intelligente de l'histoire de l'humanité.

À l'endroit où la théorie des mathématiciens rencontre la technologie des ingénieurs matériels, c'est là que se situe le GPU et l'IA.


🚀 Annonce du prochain article

Nous avons maintenant compris comment le CPU et le GPU diffèrent. Mais qu'est-ce que le NPU (Unité de traitement neural), dont on parle souvent dans les nouvelles ? Nous allons découvrir ce qu'est le NPU, qui serait encore plus optimisé pour l'IA que le GPU.