Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

TPU Tensor Processing Unit)

Découvrez comment les unités Tensor (TPU) accélèrent l'apprentissage automatique. Apprenez à optimiser Ultralytics pour les TPU Edge et la formation dans le cloud afin d'obtenir une vitesse maximale.

Une unité Tensor (TPU) est un circuit intégré spécifique à une application (ASIC) conçu par Google spécialement pour accélérer les charges de travail liées à l'apprentissage automatique (ML). Contrairement aux processeurs à usage général qui traitent un large éventail de tâches informatiques, les TPU sont conçus dès le départ pour optimiser les opérations matricielles massives qui sont fondamentales pour les réseaux neuronaux. Cette spécialisation leur permet d' atteindre un débit et une efficacité énergétique exceptionnellement élevés, ce qui en fait la pierre angulaire de l'infrastructure moderne d'intelligence artificielle (IA), en particulier au sein de l'écosystèmeGoogle . Elles jouent un rôle essentiel dans la réduction du temps nécessaire à la formation de modèles complexes et à l'exécution d' inférences en temps réel à grande échelle.

Architecture et fonctionnalité

L'architecture d'un TPU considérablement de celle des processeurs traditionnels. Alors qu'un CPU unité centrale de traitement) standard excelle dans les tâches séquentielles et la logique complexe, et qu'un GPU unité de traitement graphique) utilise des cœurs parallèles pour le graphisme et le calcul général, un TPU une architecture à réseau systolique. Cette conception permet aux données de circuler simultanément à travers des milliers de multiplicateurs sans accéder à la mémoire pour chaque opération. En maximisant la densité de calcul et en minimisant la latence, les TPU sont particulièrement adaptés à l'algèbre linéaire lourde que l'on trouve dans les applications d'apprentissage profond (DL).

Ce matériel spécialisé est fortement optimisé pour des frameworks tels que TensorFlow et de plus en plus pris en charge par PyTorch, ce qui permet aux développeurs de former des modèles de base massifs ou de déployer des solutions de pointe efficaces sans réécrire complètement leurs bases de code.

Distinction des unités de traitement

Il est essentiel de comprendre le paysage matériel pour optimiser les opérations d'apprentissage automatique (MLOps).

  • CPU: le « cerveau » polyvalent d'un ordinateur, idéal pour le traitement séquentiel, le prétraitement des données et la gestion de logiques complexes. Il est souvent utilisé pour les pipelines d'augmentation des données, mais est plus lent pour les calculs matriciels lourds.
  • GPU: initialement conçus pour le rendu d'images, les GPU sont la norme industrielle pour l' entraînement des modèles en raison de leur polyvalence et de leur parallélisme massif. Ils sont excellents pour l'entraînement de modèles flexibles comme Ultralytics .
  • TPU: un accélérateur spécialement conçu qui privilégie la vitesse brute au détriment de la flexibilité dans tensor . Il est conçu pour maximiser les FLOPS (opérations en virgule flottante par seconde) spécifiquement pour les calculs de réseaux neuronaux, offrant souvent des performances par watt supérieures pour des charges de travail spécifiques à grande échelle.

Applications concrètes

Les TPU sont déployés dans divers environnements, des clusters cloud massifs aux petits appareils périphériques.

  1. Formation de grands modèles linguistiques : Google de vastes clusters interconnectés, appelés « TPU », pour former d'immenses modèles linguistiques (LLM) tels que PaLM et Gemini. Ces systèmes peuvent traiter des pétaoctets de données d'entraînement en une fraction du temps qu'il faudrait à du matériel traditionnel, accélérant ainsi les progrès de l' IA générative.
  2. IA en périphérie et IoT : le TPU Coral Edge apporte cette accélération aux appareils à faible consommation d'énergie. Il permet des applications efficaces de vision par ordinateur (CV), telles que la détection d'objets sur une chaîne de fabrication afin d'identifier localement les défauts. Cela permet une prise de décision immédiate sans dépendre de la connectivité au cloud, préservant ainsi la bande passante et la confidentialité.

Utilisation des TPU avec Ultralytics

Les développeurs peuvent tirer parti de TPU pour Ultralytics , en particulier lorsqu'ils utilisent Ultralytics pour la formation dans le cloud ou l'exportation de modèles pour un déploiement en périphérie . Le TPU Edge, par exemple, nécessite que les modèles soient quantifiés et compilés spécifiquement pour son architecture.

L'exemple suivant montre comment exporter un modèle YOLO26 au TFLite , une étape préalable à la compilation pour un Edge TPU:

from ultralytics import YOLO

# Load the latest lightweight YOLO26 nano model
model = YOLO("yolo26n.pt")

# Export the model to TFLite format
# This creates a '.tflite' file suitable for mobile and edge deployment
# Set int8=True for quantization, which is often required for Edge TPU performance
model.export(format="tflite", int8=True)

Une fois exporté, le modèle peut être compilé pour le Edge TPU TPU Edge TPU , ce qui lui permet de fonctionner efficacement sur des appareils tels que le Raspberry Pi équipé d'un accélérateur USB Coral. Pour plus de détails sur le déploiement, il peut être très utile de consulter la documentation TFLite .

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant