Link to this sectionCome esportare in TF GraphDef da YOLO26 per il deployment#
Quando distribuisci modelli di computer vision all'avanguardia, come YOLO26, in diversi ambienti, potresti riscontrare problemi di compatibilità. GraphDef di TensorFlow, o TF GraphDef, offre una soluzione fornendo una rappresentazione serializzata e indipendente dalla piattaforma del tuo modello. Utilizzando il formato modello TF GraphDef, puoi distribuire il tuo modello YOLO26 in ambienti in cui l'intero ecosistema TensorFlow potrebbe non essere disponibile, come dispositivi mobili o hardware specializzato.
In questa guida, ti accompagneremo passo dopo passo attraverso le modalità di esportazione dei tuoi modelli Ultralytics YOLO26 nel formato modello TF GraphDef. Convertendo il tuo modello, puoi semplificare il deployment e utilizzare le funzionalità di computer vision di YOLO26 in una gamma più ampia di applicazioni e piattaforme.
Link to this sectionPerché dovresti esportare in TF GraphDef?#
TF GraphDef è un componente potente dell'ecosistema TensorFlow sviluppato da Google. Può essere utilizzato per ottimizzare e distribuire modelli come YOLO26. L'esportazione in TF GraphDef ti consente di portare i modelli dalla ricerca alle applicazioni reali. Permette ai modelli di funzionare in ambienti privi del framework TensorFlow completo.
Il formato GraphDef rappresenta il modello come un grafo di calcolo serializzato. Ciò abilita varie tecniche di ottimizzazione come constant folding, quantizzazione e trasformazioni del grafo. Queste ottimizzazioni garantiscono un'esecuzione efficiente, un ridotto utilizzo della memoria e velocità di inferenza più elevate.
I modelli GraphDef possono utilizzare acceleratori hardware come GPU, TPU e chip AI, sbloccando significativi guadagni di prestazioni per la pipeline di inferenza di YOLO26. Il formato TF GraphDef crea un pacchetto autonomo con il modello e le sue dipendenze, semplificando il deployment e l'integrazione in diversi sistemi.
Link to this sectionCaratteristiche principali dei modelli TF GraphDef#
TF GraphDef offre funzionalità distinte per semplificare il model deployment e l'ottimizzazione.
Ecco uno sguardo alle sue caratteristiche principali:
-
Serializzazione del modello: TF GraphDef fornisce un modo per serializzare e archiviare i modelli TensorFlow in un formato indipendente dalla piattaforma. Questa rappresentazione serializzata ti consente di caricare ed eseguire i tuoi modelli senza la codebase Python originale, rendendo il deployment più semplice.
-
Ottimizzazione del grafo: TF GraphDef abilita l'ottimizzazione dei grafi computazionali. Queste ottimizzazioni possono aumentare le prestazioni semplificando il flusso di esecuzione, riducendo le ridondanze e adattando le operazioni a specifici hardware.
-
Flessibilità di deployment: I modelli esportati nel formato GraphDef possono essere utilizzati in vari ambienti, inclusi dispositivi con risorse limitate, browser web e sistemi con hardware specializzato. Ciò apre possibilità per un deployment più ampio dei tuoi modelli TensorFlow.
-
Focus sulla produzione: GraphDef è progettato per il deployment in produzione. Supporta un'esecuzione efficiente, funzionalità di serializzazione e ottimizzazioni che si allineano con i casi d'uso reali.
Link to this sectionOpzioni di deployment con TF GraphDef#
Prima di immergerci nel processo di esportazione dei modelli YOLO26 in TF GraphDef, diamo un'occhiata ad alcune situazioni tipiche di deployment in cui viene utilizzato questo formato.
Ecco come puoi effettuare il deployment con TF GraphDef in modo efficiente su varie piattaforme.
-
TensorFlow Serving: Questo framework è progettato per distribuire modelli TensorFlow in ambienti di produzione. TensorFlow Serving offre gestione dei modelli, versioning e l'infrastruttura per un serving efficiente dei modelli su larga scala. È un modo fluido per integrare i tuoi modelli basati su GraphDef in servizi web di produzione o API.
-
Dispositivi mobili ed embedded: Con strumenti come TensorFlow Lite, puoi convertire i modelli TF GraphDef in formati ottimizzati per smartphone, tablet e vari dispositivi embedded. I tuoi modelli possono quindi essere utilizzati per l'inferenza on-device, dove l'esecuzione avviene localmente, fornendo spesso guadagni di prestazioni e funzionalità offline.
-
Browser web: TensorFlow.js abilita il deployment dei modelli TF GraphDef direttamente all'interno dei browser web. Apre la strada ad applicazioni di object detection in tempo reale in esecuzione lato client, utilizzando le funzionalità di YOLO26 tramite JavaScript.
-
Hardware specializzato: La natura platform-agnostic di TF GraphDef gli consente di puntare a hardware personalizzato, come acceleratori e TPU (Tensor Processing Units). Questi dispositivi possono fornire vantaggi prestazionali per modelli computazionalmente intensivi.
Link to this sectionEsportazione dei modelli YOLO26 in TF GraphDef#
Puoi convertire il tuo modello di object detection YOLO26 nel formato TF GraphDef, compatibile con vari sistemi, per migliorarne le prestazioni su diverse piattaforme.
Link to this sectionInstallazione#
Per installare il pacchetto richiesto, esegui:
# Install the required package for YOLO26
pip install ultralyticsPer istruzioni dettagliate e best practice relative al processo di installazione, consulta la nostra guida all'installazione di Ultralytics. Durante l'installazione dei pacchetti richiesti per YOLO26, se incontri difficoltà, consulta la nostra guida ai problemi comuni per soluzioni e suggerimenti.
Link to this sectionUtilizzo#
Tutti i modelli Ultralytics YOLO26 sono progettati per supportare l'esportazione fin da subito, rendendo facile integrarli nel tuo flusso di lavoro di distribuzione preferito. Puoi visualizzare l'elenco completo dei formati di esportazione e delle opzioni di configurazione supportati per scegliere la configurazione migliore per la tua applicazione.
Il formato TF GraphDef supporta le modalità Export, Predict e Validate. Esporta il tuo modello, quindi carica il modello esportato per eseguire l'inferenza o convalidarne l'accuratezza.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Link to this sectionArgomenti di esportazione#
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
format | str | 'pb' | Formato di destinazione per il modello esportato, che definisce la compatibilità con vari ambienti di distribuzione. |
imgsz | int o tuple | 640 | Dimensione dell'immagine desiderata per l'input del modello. Può essere un intero per immagini quadrate o una tupla (height, width) per dimensioni specifiche. |
batch | int | 1 | Specifica la dimensione dell'inferenza in batch del modello esportato o il numero massimo di immagini che il modello esportato elaborerà simultaneamente in modalità predict. |
device | str | None | Specifica il dispositivo per l'esportazione: CPU (device=cpu), MPS per Apple silicon (device=mps). |
Per ulteriori dettagli sul processo di esportazione, visita la pagina della documentazione di Ultralytics sull'esportazione.
Link to this sectionDistribuzione dei modelli TF GraphDef YOLO26 esportati#
Una volta esportato il tuo modello YOLO26 nel formato TF GraphDef, il passaggio successivo è il deployment. Il primo passaggio primario e consigliato per eseguire un modello TF GraphDef è utilizzare il metodo YOLO("model.pb"), come mostrato in precedenza nello snippet di codice di utilizzo.
Tuttavia, per ulteriori informazioni sul deployment dei tuoi modelli TF GraphDef, dai un'occhiata alle seguenti risorse:
-
TensorFlow Serving: Una guida su TensorFlow Serving che insegna come distribuire e servire in modo efficiente modelli di machine learning in ambienti di produzione.
-
TensorFlow Lite: Questa pagina descrive come convertire modelli di machine learning in un formato ottimizzato per l'inferenza on-device con TensorFlow Lite.
-
TensorFlow.js: Una guida sulla conversione dei modelli che insegna come convertire modelli TensorFlow o Keras in formato TensorFlow.js per l'uso in applicazioni web.
Link to this sectionRiepilogo#
In questa guida, abbiamo esplorato come esportare modelli Ultralytics YOLO26 nel formato TF GraphDef. Facendo ciò, puoi distribuire in modo flessibile i tuoi modelli YOLO26 ottimizzati in diversi ambienti.
Per ulteriori dettagli sull'utilizzo, visita la documentazione ufficiale di TF GraphDef.
Per ulteriori informazioni sull'integrazione di Ultralytics YOLO26 con altre piattaforme e framework, consulta la nostra pagina della guida all'integrazione.
Link to this sectionFAQ#
Link to this sectionCome posso esportare un modello YOLO26 nel formato TF GraphDef?#
I modelli Ultralytics YOLO26 possono essere esportati in formato TensorFlow GraphDef (TF GraphDef) senza problemi. Questo formato fornisce una rappresentazione del modello serializzata e indipendente dalla piattaforma, ideale per il deployment in ambienti vari come mobile e web. Per esportare un modello YOLO26 in TF GraphDef, segui questi passaggi:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo26n.pb")
# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")Per ulteriori informazioni sulle diverse opzioni di esportazione, visita la documentazione Ultralytics sull'esportazione dei modelli.
Link to this sectionQuali sono i vantaggi dell'utilizzo di TF GraphDef per il deployment del modello YOLO26?#
L'esportazione dei modelli YOLO26 nel formato TF GraphDef offre molteplici vantaggi, tra cui:
- Indipendenza dalla piattaforma: TF GraphDef fornisce un formato indipendente dalla piattaforma, consentendo ai modelli di essere distribuiti in vari ambienti, inclusi dispositivi mobili e browser web.
- Ottimizzazioni: Il formato abilita diverse ottimizzazioni, come constant folding, quantizzazione e trasformazioni del grafo, che migliorano l'efficienza di esecuzione e riducono l'utilizzo della memoria.
- Accelerazione hardware: I modelli in formato TF GraphDef possono sfruttare acceleratori hardware come GPU, TPU e chip AI per guadagni di prestazioni.
Leggi di più sui vantaggi nella sezione TF GraphDef della nostra documentazione.
Link to this sectionPerché dovrei usare Ultralytics YOLO26 rispetto ad altri modelli di object detection?#
Ultralytics YOLO26 offre numerosi vantaggi rispetto ad altri modelli come YOLOv5 e YOLOv7. Alcuni vantaggi chiave includono:
- Prestazioni allo stato dell'arte: YOLO26 offre velocità e accuratezza eccezionali per object detection, instance segmentation, semantic segmentation e classification in tempo reale.
- Facilità d'uso: Presenta un'API user-friendly per addestramento, convalida, previsione ed esportazione del modello, rendendolo accessibile sia ai principianti che agli esperti.
- Ampia compatibilità: Supporta molteplici formati di esportazione tra cui ONNX, TensorRT, CoreML e TensorFlow, per opzioni di deployment versatili.
Esplora ulteriori dettagli nella nostra introduzione a YOLO26.
Link to this sectionCome posso distribuire un modello YOLO26 su hardware specializzato utilizzando TF GraphDef?#
Una volta che un modello YOLO26 è esportato nel formato TF GraphDef, puoi distribuirlo su varie piattaforme hardware specializzate. Gli scenari di deployment tipici includono:
- TensorFlow Serving: Usa TensorFlow Serving per un deployment del modello scalabile in ambienti di produzione. Supporta la gestione del modello e un serving efficiente.
- Dispositivi mobili: Converti i modelli TF GraphDef in TensorFlow Lite, ottimizzati per dispositivi mobili ed embedded, abilitando l'inferenza on-device.
- Browser web: Distribuisci modelli utilizzando TensorFlow.js per l'inferenza lato client nelle applicazioni web.
- Acceleratori AI: Sfrutta TPU e chip AI personalizzati per un'inferenza accelerata.
Controlla la sezione opzioni di deployment per informazioni dettagliate.
Link to this sectionDove posso trovare soluzioni a problemi comuni durante l'esportazione di modelli YOLO26?#
Per la risoluzione dei problemi comuni con l'esportazione di modelli YOLO26, Ultralytics fornisce guide e risorse complete. Se riscontri problemi durante l'installazione o l'esportazione del modello, fai riferimento a:
- Guida ai problemi comuni: Offre soluzioni a problemi riscontrati frequentemente.
- Guida all'installazione: Istruzioni passo dopo passo per configurare i pacchetti richiesti.
Queste risorse dovrebbero aiutarti a risolvere la maggior parte dei problemi relativi all'esportazione e al deployment del modello YOLO26.