Scopri come le unità Tensor (TPU) accelerano l'apprendimento automatico. Impara a ottimizzare Ultralytics per le TPU Edge e la formazione cloud per ottenere la massima velocità.
Una Tensor Unit (TPU) è un circuito integrato specifico per applicazioni (ASIC) progettato da Google appositamente per accelerare i carichi di lavoro di machine learning (ML). A differenza dei processori generici che gestiscono un'ampia gamma di attività di calcolo, le TPU sono progettate da zero per ottimizzare le operazioni matriciali su larga scala fondamentali per le reti neurali. Questa specificità consente loro di raggiungere un throughput e un'efficienza energetica eccezionalmente elevati, rendendole una pietra miliare della moderna infrastruttura di intelligenza artificiale (AI) , in particolare all'interno dell'ecosistemaGoogle . Svolgono un ruolo fondamentale nella riduzione del tempo necessario sia per l'addestramento di modelli complessi che per l'esecuzione di inferenze in tempo reale su larga scala.
L'architettura di una TPU in modo significativo dai processori tradizionali. Mentre una CPU standard CPU Central Processing Unit) eccelle nei compiti sequenziali e nella logica complessa, e una GPU Graphics Processing Unit) utilizza core paralleli per la grafica e l'elaborazione generale, una TPU un' architettura a matrice sistolica. Questo design consente ai dati di fluire attraverso migliaia di moltiplicatori contemporaneamente senza accedere alla memoria per ogni operazione. Massimizzando la densità computazionale e riducendo al minimo la latenza, le TPU sono particolarmente adatte per l'algebra lineare pesante che si trova nelle applicazioni di deep learning (DL).
Questo hardware specializzato è altamente ottimizzato per framework come TensorFlow e sempre più supportato da PyTorch, consentendo agli sviluppatori di addestrare enormi modelli di base o implementare soluzioni edge efficienti senza dover riscrivere completamente il loro codice.
Comprendere il panorama hardware è fondamentale per ottimizzare le operazioni di machine learning (MLOps).
Le TPU vengono implementate in vari ambienti, dai grandi cluster cloud ai piccoli dispositivi edge.
Gli sviluppatori possono sfruttare TPU per Ultralytics , in particolare quando utilizzano Ultralytics per la formazione cloud o l'esportazione di modelli per l'implementazione edge . L'Edge TPU, ad esempio, richiede che i modelli siano quantizzati e compilati specificamente per la sua architettura.
L'esempio seguente mostra come esportare un modello YOLO26 nel TFLite , operazione necessaria prima della compilazione per 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)
Una volta esportato, il modello può essere ulteriormente compilato per Edge TPU il TPU Edge TPU , consentendone l'esecuzione efficiente su dispositivi come Raspberry Pi con un acceleratore USB Coral. Per ulteriori dettagli sull'implementazione, può essere molto utile consultare la documentazione TFLite .