Glossaire

TPU (Tensor Processing Unit)

Découvre comment Tensor Processing Units (TPU) accélère 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.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

Une Tensor Processing UnitTPU 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 et mettre à l'échelle 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 conçues pour exceller dans les calculs tensor - 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 tensor à 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 tels que TensorFlow pour lesquels ils ont été initialement optimisés. La prise en charge d'autres frameworks tels que PyTorch est également disponible, ce qui élargit leurs possibilités d'utilisation. Tu peux en savoir plus sur les spécificités en consultant l'introduction deGoogle Cloud TPU .

Applications des TPU

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

  • Formation de modèles à grande échelle : Les TPU excellent dans la formation de modèles d'apprentissage profond massifs nécessitant une immense puissance de calcul et des configurations de formation 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 de grands volumes : 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 comme le traitement du langage naturel (NLP) dans les chatbots ou les tâches de vision par ordinateur (CV) comme la détection d'objets à grande échelle dans Google Photos.
  • Recherche et développement : Les chercheurs exploitent les TPU via des plateformes cloud et des environnements comme 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, appelées Edge TPU, 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

Bien que les TPU, les GPU et les CPU puissent 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 les 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. En savoir plus sur la comparaisonCPU vs GPU .
  • GPU (Graphics Processing Unit) : Conçus à l'origine pour le rendu des graphiques, les GPU comportent des 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 ML, offrant un bon équilibre entre performance et flexibilité à travers diverses tâches comme la détection d'objets avec les modèlesYOLO 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 de pointe et une efficacité énergétique pour les opérations de tensor à grande échelle, en particulier au sein de l'écosystème de Google(TensorFlowPyTorch sur Google Cloud). Elles pourraient être moins flexibles que les GPU pour le calcul parallèle 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 en matière de matériel conçu spécifiquement pour les exigences de l'apprentissage automatique moderne, offrant des performances et une efficacité accrues pour des applications d'IA spécifiques, en particulier les tâches de formation 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. Tu peux explorer les options de formation, y compris les ressources cloud, via des plateformes comme Ultralytics HUB qui offre des capacités de formation et de gestion de modèles rationalisées. Pour d'autres lectures sur les tendances de l'IA, visite le blog d'Ultralytics .

Tout lire