Imparare a esportare nel formato TFLite Edge TPU dal modello YOLO11
L'implementazione di modelli di computer vision su dispositivi con potenza di calcolo limitata, come i sistemi mobili o embedded, può essere complicata. L'uso di un formato di modello ottimizzato per prestazioni più veloci semplifica il processo. Il formato di modello TensorFlow Lite Edge TPU o TFLite Edge TPU è stato progettato per consumare pochissima energia e offrire prestazioni elevate alle reti neurali.
La funzione di esportazione nel formato TFLite Edge TPU consente di ottimizzare i modelli per l'inferenza ad alta velocità e a basso consumo. Ultralytics YOLO11 modelli per l'inferenza ad alta velocità e a basso consumo. In questa guida vi illustreremo come convertire i vostri modelli nel formato TFLite Edge TPU , facilitando così le prestazioni dei vostri modelli su vari dispositivi mobili ed embedded.
Perché esportare in TFLite Edge TPU?
L'esportazione dei modelli in TensorFlow Edge TPU rende le attività di apprendimento automatico rapide ed efficienti. Questa tecnologia è adatta alle applicazioni con potenza, risorse di calcolo e connettività limitate. Edge TPU è un acceleratore hardware di Google. Accelera i modelli di TensorFlow Lite sui dispositivi edge. L'immagine seguente mostra un esempio del processo coinvolto.
Edge TPU funziona con modelli quantizzati. La quantizzazione rende i modelli più piccoli e più veloci senza perdere in precisione. È ideale per le risorse limitate dell'edge computing, in quanto consente alle applicazioni di rispondere rapidamente riducendo la latenza e permettendo una rapida elaborazione dei dati a livello locale, senza dipendere dal cloud. L'elaborazione locale mantiene inoltre i dati dell'utente privati e sicuri, poiché non vengono inviati a un server remoto.
Caratteristiche principali di TFLite Edge TPU
Ecco le caratteristiche principali che fanno di TFLite Edge TPU un'ottima scelta di formato per gli sviluppatori:
-
Prestazioni ottimizzate sui dispositivi Edge: TFLite Edge TPU raggiunge prestazioni di rete neurale ad alta velocità grazie alla quantizzazione, all'ottimizzazione del modello, all'accelerazione hardware e all'ottimizzazione del compilatore. La sua architettura minimalista contribuisce a ridurre le dimensioni e l'efficienza dei costi.
-
Elevato throughput computazionale: TFLite Edge TPU combina un'accelerazione hardware specializzata e un'esecuzione runtime efficiente per ottenere un elevato throughput computazionale. È adatto per l'implementazione di modelli di apprendimento automatico con requisiti di prestazioni rigorosi su dispositivi edge.
-
Calcoli matriciali efficienti: TensorFlow Edge TPU è ottimizzato per le operazioni matriciali, fondamentali per i calcoli delle reti neurali. Questa efficienza è fondamentale nei modelli di apprendimento automatico, in particolare quelli che richiedono numerose e complesse moltiplicazioni e trasformazioni di matrici.
Opzioni di distribuzione con TFLite Edge TPU
Prima di passare alla descrizione di come esportare i modelli YOLO11 nel formato TFLite Edge TPU , cerchiamo di capire dove si usano di solito i modelli TFLite Edge TPU .
TFLite Edge TPU offre diverse opzioni di implementazione per i modelli di apprendimento automatico, tra cui:
-
Distribuzione su dispositivo: TensorFlow I modelli di Edge TPU possono essere distribuiti direttamente su dispositivi mobili ed embedded. La distribuzione su dispositivo consente ai modelli di essere eseguiti direttamente sull'hardware, eliminando la necessità di connettività al cloud.
-
Edge Computing con le TPU del cloud TensorFlow : In scenari in cui i dispositivi edge hanno capacità di elaborazione limitate, le TPU Edge di TensorFlow possono scaricare le attività di inferenza su server cloud dotati di TPU.
-
Distribuzione ibrida: Un approccio ibrido combina la distribuzione su dispositivo e su cloud e offre una soluzione versatile e scalabile per la distribuzione di modelli di apprendimento automatico. I vantaggi includono l'elaborazione su dispositivo per risposte rapide e il cloud computing per calcoli più complessi.
Esportazione dei modelli YOLO11 in TFLite Edge TPU
È possibile espandere la compatibilità dei modelli e la flessibilità di distribuzione convertendo i modelli YOLO11 in TensorFlow Edge TPU.
Installazione
Per installare il pacchetto richiesto, eseguire:
Per istruzioni dettagliate e buone pratiche relative al processo di installazione, consultare la nostra Guida all'installazione diUltralytics . Durante l'installazione dei pacchetti necessari per YOLO11, se si incontrano difficoltà, consultare la nostra guida ai problemi comuni per trovare soluzioni e suggerimenti.
Utilizzo
Prima di immergersi nelle istruzioni d'uso, è importante notare che tutti i modelli diUltralytics YOLO11 sono disponibili per l'esportazione, ma è possibile assicurarsi che il modello selezionato supporti la funzionalità di esportazione qui.
Utilizzo
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'
Per maggiori dettagli sulle opzioni di esportazione supportate, visitate la pagina di documentazioneUltralytics sulle opzioni di distribuzione.
Distribuzione dei modelli esportati YOLO11 TFLite Edge TPU
Dopo aver esportato con successo i modelli Ultralytics YOLO11 nel formato TFLite Edge TPU , è ora possibile distribuirli. Il primo passo primario e consigliato per eseguire un modello TFLite Edge TPU è utilizzare il metodo YOLO("model_edgetpu.tflite"), come indicato nel precedente frammento di codice.
Tuttavia, per istruzioni approfondite sulla distribuzione dei modelli TFLite Edge TPU , consultate le seguenti risorse:
-
Coral Edge TPU su un Raspberry Pi con Ultralytics YOLO11: Scoprite come integrare le TPU Coral Edge con Raspberry Pi per migliorare le capacità di apprendimento automatico.
-
Esempi di codice: Accedete a esempi pratici di implementazione di TensorFlow Edge TPU per dare il via ai vostri progetti.
-
Eseguire l'inferenza sul bordo TPU con Python: Esplora come utilizzare l'API TensorFlow Lite Python per le applicazioni Edge TPU , comprese le linee guida per la configurazione e l'utilizzo.
Sintesi
In questa guida abbiamo appreso come esportare i modelli Ultralytics YOLO11 nel formato TFLite Edge TPU . Seguendo i passi indicati sopra, è possibile aumentare la velocità e la potenza delle applicazioni di computer vision.
Per ulteriori dettagli sull'utilizzo, visitare il sito Web ufficiale di Edge TPU .
Inoltre, per ulteriori informazioni su altre integrazioni di Ultralytics YOLO11 , visitate la nostra pagina della guida alle integrazioni. Lì scoprirete risorse e approfondimenti preziosi.
FAQ
Come si esporta un modello YOLO11 nel formato TFLite Edge TPU ?
Per esportare un modello YOLO11 nel formato TFLite Edge TPU , si può procedere come segue:
Utilizzo
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")
# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'
# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'
Per informazioni complete sull'esportazione dei modelli in altri formati, consultare la nostra guida all'esportazione.
Quali sono i vantaggi dell'esportazione dei modelli YOLO11 in TFLite Edge TPU?
L'esportazione dei modelli YOLO11 in TFLite Edge TPU offre diversi vantaggi:
- Prestazioni ottimizzate: Prestazioni della rete neurale ad alta velocità con un consumo energetico minimo.
- Latenza ridotta: Elaborazione rapida dei dati in locale senza la necessità di dipendere dal cloud.
- Maggiore privacy: L'elaborazione locale mantiene i dati dell'utente privati e sicuri.
Questo lo rende ideale per le applicazioni di edge computing, dove i dispositivi dispongono di potenza e risorse di calcolo limitate. Per saperne di più sul perché dell'esportazione.
È possibile distribuire i modelli TFLite Edge TPU su dispositivi mobili ed embedded?
Sì, i modelli TensorFlow Lite Edge TPU possono essere distribuiti direttamente su dispositivi mobili ed embedded. Questo approccio di distribuzione consente ai modelli di essere eseguiti direttamente sull'hardware, offrendo un'inferenza più rapida ed efficiente. Per esempi di integrazione, consultare la nostra guida sulla distribuzione di Coral Edge TPU su Raspberry Pi.
Quali sono i casi d'uso più comuni dei modelli TFLite Edge TPU ?
I casi d'uso più comuni per i modelli TFLite Edge TPU sono i seguenti:
- Telecamere intelligenti: Migliorare l'analisi delle immagini e dei video in tempo reale.
- Dispositivi IoT: Abilitare la casa intelligente e l'automazione industriale.
- Assistenza sanitaria: Accelerazione dell'imaging e della diagnostica medica.
- Commercio al dettaglio: Migliorare la gestione dell'inventario e l'analisi del comportamento dei clienti.
Queste applicazioni beneficiano delle elevate prestazioni e del basso consumo energetico dei modelli TFLite Edge TPU . Scoprite di più sugli scenari di utilizzo.
Come si possono risolvere i problemi durante l'esportazione o la distribuzione dei modelli TFLite Edge TPU ?
Se si riscontrano problemi durante l'esportazione o la distribuzione dei modelli TFLite Edge TPU , consultare la guida Problemi comuni per i suggerimenti sulla risoluzione dei problemi. Questa guida illustra i problemi e le soluzioni più comuni per garantire un funzionamento regolare. Per ulteriore assistenza, visitate il nostro Centro assistenza.