TPU (Tensor Processing Unit)
Erkunde, wie Tensor Processing Units (TPUs) maschinelles Lernen beschleunigen. Lerne, Ultralytics YOLO26 für Edge TPUs und Cloud-Training für maximale Geschwindigkeit zu optimieren.
Eine Tensor Processing Unit (TPU) ist ein spezialisierter, anwendungsspezifischer integrierter Schaltkreis (ASIC), der von Google speziell entwickelt wurde, um machine learning (ML)-Workloads zu beschleunigen. Im Gegensatz zu Allzweckprozessoren, die ein breites Spektrum an Rechenaufgaben bewältigen, sind TPUs von Grund auf darauf ausgelegt, die massiven Matrixoperationen zu optimieren, die für neuronale Netze von grundlegender Bedeutung sind. Dieser spezifische Fokus ermöglicht es ihnen, einen außergewöhnlich hohen Durchsatz und eine hohe Energieeffizienz zu erreichen, was sie zu einem Eckpfeiler der modernen artificial intelligence (AI)-Infrastruktur macht, insbesondere innerhalb des Google Cloud-Ökosystems. Sie spielen eine entscheidende Rolle bei der Verkürzung der Zeit, die sowohl für das Training komplexer Modelle als auch für die Durchführung von Echtzeit-Inferenz in großem Maßstab erforderlich ist.
Architektur und Funktionalität#
Die Architektur einer TPU unterscheidet sich erheblich von herkömmlichen Prozessoren. Während eine Standard-CPU (Central Processing Unit) sich durch sequentielle Aufgaben und komplexe Logik auszeichnet und eine GPU (Graphics Processing Unit) parallele Kerne für Grafik und allgemeine Berechnungen verwendet, nutzt eine TPU eine systolische Array-Architektur. Dieses Design ermöglicht es Daten, gleichzeitig durch Tausende von Multiplikatoren zu fließen, ohne für jede Operation auf den Speicher zuzugreifen. Durch die Maximierung der Rechenlastdichte und die Minimierung der Latenz eignen sich TPUs hervorragend für die schwere lineare Algebra in deep learning (DL)-Anwendungen.
Diese spezialisierte Hardware ist stark für Frameworks wie TensorFlow optimiert und wird zunehmend von PyTorch unterstützt, wodurch Entwickler massive foundation models trainieren oder effiziente Edge-Lösungen bereitstellen können, ohne ihre Codebasen komplett umschreiben zu müssen.
Unterscheidung von Prozessoreinheiten#
Das Verständnis der Hardware-Landschaft ist entscheidend für die Optimierung von machine learning operations (MLOps).
- CPU: Das universelle „Gehirn“ eines Computers, ideal für sequentielle Verarbeitung, Datenvorverarbeitung und die Handhabung komplexer Logik. Sie wird oft für Datenaugmentierungs-Pipelines verwendet, ist jedoch bei schwerer Matrizenmathematik langsamer.
- GPU: Ursprünglich für das Rendern von Bildern entwickelt, sind GPUs aufgrund ihrer Vielseitigkeit und massiven Parallelität der Branchenstandard für das Modelltraining. Sie eignen sich hervorragend zum Training flexibler Modelle wie Ultralytics YOLO26.
- TPU: Ein zweckgebundener Beschleuniger, der Flexibilität zugunsten purer Geschwindigkeit bei Tensor-Operationen opfert. Er wurde entwickelt, um FLOPS (Floating-Point Operations Per Second) speziell für Berechnungen neuronaler Netze zu maximieren, und bietet oft eine überlegene Leistung pro Watt für bestimmte groß angelegte Workloads.
Praxisanwendungen#
TPUs werden in verschiedenen Umgebungen eingesetzt, von massiven Cloud-Clustern bis hin zu winzigen Edge-Geräten.
-
Training großer Sprachmodelle: Google nutzt riesige miteinander verbundene Cluster, sogenannte TPU Pods, um immense large language models (LLMs) wie PaLM und Gemini zu trainieren. Diese Systeme können Petabytes an Trainingstrukturen in einem Bruchteil der Zeit verarbeiten, die herkömmliche Hardware benötigen würde, und beschleunigen so Fortschritte in der generativen KI.
-
Edge AI und IoT: Die Coral Edge TPU bringt diese Beschleunigung auf energiearme Geräte. Sie ermöglicht effiziente computer vision (CV)-Anwendungen, wie zum Beispiel die Durchführung einer Objekterkennung an einer Fertigungslinie zur lokalen Erkennung von Defekten. Dies ermöglicht eine sofortige Entscheidungsfindung ohne Cloud-Konnektivität, wodurch Bandbreite und Datenschutz geschont werden.
Verwendung von TPUs mit Ultralytics#
Entwickler können die TPU-Beschleunigung für Ultralytics-Modelle nutzen, insbesondere wenn sie die Ultralytics Platform für das Cloud-Training oder den Export von Modellen für die Edge-Bereitstellung verwenden. Die Edge TPU erfordert beispielsweise, dass Modelle speziell für ihre Architektur quantisiert und kompiliert werden.
Das folgende Beispiel zeigt, wie du ein Ultralytics YOLO26-Modell in das TFLite-Format exportierst, was ein notwendiger Schritt vor der Kompilierung für eine Edge TPU ist:
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)Nach dem Export kann das Modell mit dem Edge TPU Compiler weiter für die Edge TPU kompiliert werden, sodass es effizient auf Geräten wie dem Raspberry Pi mit einem Coral USB Accelerator ausgeführt werden kann. Weitere Details zur Bereitstellung finden Sie in der Dokumentation zur TFLite-Integration.






