Glossaire

TPU (Tensor Processing Unit)

Découvrez comment les Tensor Processing Units (TPU) accélèrent les tâches d'apprentissage automatique telles que la formation, l'inférence et la détection d'objets avec une efficacité inégalée.

Une unité de traitement tensoriel (TPU) est un accélérateur d'apprentissage automatique conçu sur mesure et développé par Google spécifiquement pour les charges de travail des réseaux neuronaux. Ces processeurs spécialisés, un type de circuit intégré spécifique à une application (ASIC), sont conçus pour accélérer considérablement les opérations d'apprentissage automatique, en particulier pour les tâches d'inférence et de formation. Les TPU sont conçues pour traiter les calculs mathématiques complexes impliqués dans l'intelligence artificielle (IA), offrant des améliorations significatives des performances par rapport aux unités centrales de traitement (CPU) et souvent aux unités de traitement graphique (GPU) pour certains types de modèles d'apprentissage automatique. Ils sont particulièrement efficaces pour les calculs à grande échelle, courants dans l'apprentissage profond.

Qu'est-ce qu'un TPU ?

Une TPU est conçue dès le départ pour répondre aux exigences uniques de l'apprentissage automatique (ML). Contrairement aux processeurs à usage général tels que les CPU ou même les GPU qui gèrent un plus large éventail de tâches, les TPU sont spécialement conçues pour exceller dans les calculs tensoriels - les opérations mathématiques fondamentales des réseaux neuronaux (NN). Les tenseurs sont des tableaux multidimensionnels représentant les données dans les modèles de ML, et les TPU sont optimisées pour effectuer des multiplications de matrices à grande échelle et d'autres algèbre tensorielle à grande vitesse et avec une grande efficacité énergétique. Cette spécialisation permet aux TPU d'exécuter des tâches de ML beaucoup plus rapidement que les CPU et, dans de nombreux scénarios, plus efficacement que les GPU, en particulier lorsqu'elles travaillent avec des frameworks comme TensorFlow pour lesquels elles ont été initialement optimisées. La prise en charge d'autres frameworks tels que PyTorch est également disponible, ce qui élargit leurs possibilités d'utilisation. Pour en savoir plus sur les spécificités, consultez l'introduction de Google Cloud TPU.

Applications des TPU

Les TPU sont largement utilisées dans diverses applications, en particulier celles qui sont alimentées par les services Google et, de plus en plus, dans les domaines plus larges de l'IA et de la ML accessibles via des plateformes telles que Google Cloud. Les principales applications sont les suivantes :

  • Formation de modèles à grande échelle : Les TPU excellent dans l'entraînement de modèles d'apprentissage profond massifs nécessitant une immense puissance de calcul et des configurations d'entraînement distribuées. Par exemple, Google utilise les TPU en interne pour former des modèles sophistiqués pour des services tels que Google Search et Google Translate, en gérant de vastes ensembles de données et des architectures complexes.
  • Inférence sur des volumes importants : Pour les applications nécessitant une inférence rapide et efficace sur de grands volumes de données, les TPU fournissent une accélération significative. Ceci est crucial pour les services en temps réel tels que le traitement du langage naturel (NLP) dans les chatbots ou les tâches de vision par ordinateur (CV) telles que la détection d'objets à grande échelle dans Google Photos.
  • Recherche et développement : Les chercheurs exploitent les TPU via des plateformes en nuage et des environnements tels que Kaggle (voir le guide d'intégration Kaggle d'Ultralytics) pour accélérer les expériences et développer des modèles d'IA de pointe, tels que ceux utilisés dans l'analyse d'images médicales ou les simulations scientifiques.
  • Edge Computing : Des versions plus petites, connues sous le nom de TPU Edge, apportent des capacités d'inférence ML directement aux appareils, permettant des applications dans l'IoT et la robotique qui nécessitent une faible latence et un traitement hors ligne. En savoir plus sur les principes de l'edge computing.

TPUs vs GPUs vs CPUs

Si les TPU, les GPU et les CPU peuvent tous effectuer des calculs, ils sont conçus à des fins différentes et excellent dans des tâches différentes :

  • CPU (Central Processing Unit) : Le cerveau d'un ordinateur standard, conçu pour des tâches informatiques générales. Il gère les opérations du système, exécute les instructions du programme de manière séquentielle et gère diverses charges de travail, mais il est relativement lent pour les calculs parallèles massifs nécessaires à l'apprentissage profond. Pour en savoir plus sur la comparaison entre CPU et GPU.
  • GPU (Graphics Processing Unit) : Conçus à l'origine pour le rendu des graphiques, les GPU disposent de milliers de cœurs optimisés pour le traitement parallèle. Cela les rend très efficaces pour l'entraînement et l'exécution de nombreux modèles de ML, offrant un bon équilibre entre performance et flexibilité pour diverses tâches telles que la détection d'objets avec les modèles YOLO d'Ultralytics. Les principaux fournisseurs sont NVIDIA et AMD.
  • TPU (Tensor Processing Unit) : Spécifiquement conçu comme un processeur matriciel pour les charges de travail des réseaux neuronaux. Les TPU offrent des performances et une efficacité énergétique maximales pour les opérations tensorielles à grande échelle, en particulier au sein de l'écosystème de Google(TensorFlow, PyTorch sur Google Cloud). Elles peuvent être moins flexibles que les GPU pour le calcul parallèle en général, mais peuvent offrir des avantages substantiels en termes de coût et de vitesse pour des tâches ML spécifiques à grande échelle hébergées sur des plateformes telles que Google Cloud Platform.

En résumé, les TPU représentent une avancée significative dans le domaine du matériel conçu spécifiquement pour répondre aux exigences de l'apprentissage automatique moderne, offrant des performances et une efficacité accrues pour les applications spécifiques de l'IA, en particulier les tâches d'entraînement et d'inférence à grande échelle. Elles complètent d'autres accélérateurs comme les GPU, offrant des options en fonction de la charge de travail spécifique, de l'échelle et de l'écosystème logiciel. Vous pouvez explorer les options de formation, y compris les ressources en nuage, via des plateformes comme Ultralytics HUB, qui offre des capacités rationalisées de formation et de gestion de modèles. Pour en savoir plus sur les tendances de l'IA, consultez le blog d'Ultralytics.

Rejoindre la communauté Ultralytics

Rejoignez l'avenir de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

S'inscrire
Lien copié dans le presse-papiers