Come esportare nel formato PaddlePaddle dai modelli YOLO26

Colmare il divario tra lo sviluppo e il deploy di modelli di visione artificiale in scenari reali con condizioni variabili può essere difficile. PaddlePaddle semplifica questo processo grazie al suo focus sulla flessibilità, le prestazioni e la sua capacità di elaborazione parallela in ambienti distribuiti. Ciò significa che puoi utilizzare i tuoi modelli di visione artificiale YOLO26 su un'ampia varietà di dispositivi e piattaforme, dagli smartphone ai server basati su cloud.



Watch: How to Export Ultralytics YOLO26 Models to PaddlePaddle Format | Key Features of PaddlePaddle Format

La possibilità di esportare nel formato modello PaddlePaddle ti consente di ottimizzare i tuoi modelli Ultralytics YOLO26 per l'uso all'interno del framework PaddlePaddle. PaddlePaddle è noto per facilitare i deploy industriali ed è un'ottima scelta per il deploy di applicazioni di visione artificiale in contesti reali attraverso vari domini.

Perché dovresti esportare in PaddlePaddle?

PaddlePaddle deep learning framework logo

Sviluppato da Baidu, PaddlePaddle (PArallel Distributed Deep LEarning) è la prima piattaforma open-source di deep learning in Cina. A differenza di alcuni framework creati principalmente per la ricerca, PaddlePaddle dà priorità alla facilità d'uso e all'integrazione fluida tra i settori.

Offre strumenti e risorse simili a framework popolari come TensorFlow e PyTorch, rendendolo accessibile a sviluppatori di ogni livello di esperienza. Dall'agricoltura alle fabbriche fino alle aziende di servizi, la vasta community di sviluppatori di PaddlePaddle, composta da oltre 4,77 milioni di persone, sta aiutando a creare e distribuire applicazioni AI.

Esportando i tuoi modelli Ultralytics YOLO26 nel formato PaddlePaddle, puoi sfruttare i punti di forza di PaddlePaddle nell'ottimizzazione delle prestazioni. PaddlePaddle dà priorità all'esecuzione efficiente del modello e alla riduzione dell'utilizzo della memoria. Di conseguenza, i tuoi modelli YOLO26 possono potenzialmente ottenere prestazioni ancora migliori, offrendo risultati di alto livello in scenari pratici.

Caratteristiche principali dei modelli PaddlePaddle

I modelli PaddlePaddle offrono una gamma di caratteristiche chiave che contribuiscono alla loro flessibilità, prestazioni e scalabilità in diversi scenari di deploy:

  • Grafo da dinamico a statico: PaddlePaddle supporta la compilazione da dinamica a statica, in cui i modelli possono essere tradotti in un grafo computazionale statico. Ciò consente ottimizzazioni che riducono l'overhead di runtime e aumentano le prestazioni di inferenza.

  • Fusione degli operatori: PaddlePaddle, come TensorRT, utilizza la fusione degli operatori per snellire il calcolo e ridurre l'overhead. Il framework riduce al minimo i trasferimenti di memoria e i passaggi computazionali unendo le operazioni compatibili, con conseguente inferenza più rapida.

  • Quantizzazione: PaddlePaddle supporta tecniche di quantizzazione, inclusa la quantizzazione post-training e il training consapevole della quantizzazione. Queste tecniche consentono l'uso di rappresentazioni di dati a precisione inferiore, aumentando efficacemente le prestazioni e riducendo le dimensioni del modello.

Opzioni di deploy in PaddlePaddle

Prima di immergerci nel codice per l'esportazione dei modelli YOLO26 verso PaddlePaddle, diamo un'occhiata ai diversi scenari di deploy in cui eccellono i modelli PaddlePaddle.

PaddlePaddle fornisce una serie di opzioni, ognuna delle quali offre un distinto equilibrio tra facilità d'uso, flessibilità e prestazioni:

  • Paddle Serving: Questo framework semplifica il deploy dei modelli PaddlePaddle come API RESTful ad alte prestazioni. Paddle Serving è ideale per ambienti di produzione, fornendo funzionalità come il versionamento dei modelli, A/B testing online e scalabilità per gestire grandi volumi di richieste.

  • API di inferenza Paddle: L'API di inferenza Paddle ti offre un controllo a basso livello sull'esecuzione del modello. Questa opzione è adatta per scenari in cui è necessario integrare strettamente il modello all'interno di un'applicazione personalizzata o ottimizzare le prestazioni per hardware specifici.

  • Paddle Lite: Paddle Lite è progettato per il deploy su dispositivi mobili ed embedded dove le risorse sono limitate. Ottimizza i modelli per dimensioni ridotte e inferenza più rapida su CPU ARM, GPU e altri hardware specializzati.

  • Paddle.js: Paddle.js ti consente di distribuire modelli PaddlePaddle direttamente all'interno dei browser web. Paddle.js può caricare un modello preaddestrato o trasformare un modello da paddle-hub con strumenti di trasformazione del modello forniti da Paddle.js. Può essere eseguito in browser che supportano WebGL/WebGPU/WebAssembly.

Esporta in PaddlePaddle: conversione del tuo modello YOLO26

La conversione dei modelli YOLO26 nel formato PaddlePaddle può migliorare la flessibilità di esecuzione e ottimizzare le prestazioni per vari scenari di deploy.

Installazione

Per installare il pacchetto richiesto, esegui:

Installazione
# Install the required package for YOLO26
pip install ultralytics

Per istruzioni dettagliate e best practice relative al processo di installazione, controlla la nostra guida all'installazione di Ultralytics. Se durante l'installazione dei pacchetti richiesti per YOLO26 riscontri difficoltà, consulta la nostra guida ai problemi comuni per soluzioni e suggerimenti.

Utilizzo

Tutti i modelli Ultralytics YOLO26 supportano l'esportazione e puoi consultare l'elenco completo dei formati di esportazione e delle opzioni per trovare la soluzione migliore per le tue esigenze di deploy.

Utilizzo
from ultralytics import YOLO

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

# Export the model to PaddlePaddle format
model.export(format="paddle")  # creates '/yolo26n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo26n_paddle_model")

# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")

Argomenti di esportazione

ArgomentoTipoPredefinitoDescrizione
formatstr'paddle'Formato di destinazione per il modello esportato, che definisce la compatibilità con vari ambienti di distribuzione.
imgszint o tuple640Dimensione dell'immagine desiderata per l'input del modello. Può essere un numero intero per immagini quadrate o una tupla (height, width) per dimensioni specifiche.
batchint1Specifica la dimensione dell'inferenza batch del modello di esportazione o il numero massimo di immagini che il modello esportato elaborerà simultaneamente in modalità predict.
devicestrNoneSpecifica 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.

Deploy dei modelli YOLO26 PaddlePaddle esportati

Dopo aver esportato con successo i tuoi modelli Ultralytics YOLO26 nel formato PaddlePaddle, puoi ora distribuirli. Il primo passo, primario e consigliato, per eseguire un modello PaddlePaddle è utilizzare il metodo YOLO("yolo26n_paddle_model/"), come illustrato nel precedente snippet di codice di utilizzo.

Tuttavia, per istruzioni approfondite sul deploy dei tuoi modelli PaddlePaddle in svariati altri contesti, dai un'occhiata alle seguenti risorse:

  • Paddle Serving: Scopri come distribuire i tuoi modelli PaddlePaddle come servizi performanti utilizzando Paddle Serving.

  • Paddle Lite: Esplora come ottimizzare e distribuire modelli su dispositivi mobili ed embedded utilizzando Paddle Lite.

  • Paddle.js: Scopri come eseguire modelli PaddlePaddle nei browser web per l'AI lato client utilizzando Paddle.js.

In questa guida abbiamo esplorato il processo di esportazione dei modelli Ultralytics YOLO26 nel formato PaddlePaddle. Seguendo questi passaggi, puoi sfruttare i punti di forza di PaddlePaddle in diversi scenari di deploy, ottimizzando i tuoi modelli per diversi ambienti hardware e software.

Per ulteriori dettagli sull'utilizzo, visita la documentazione ufficiale di PaddlePaddle.

Vuoi esplorare altri modi per integrare i tuoi modelli Ultralytics YOLO26? La nostra pagina della guida all'integrazione esplora varie opzioni, fornendoti risorse e approfondimenti preziosi.

FAQ

Come faccio a esportare i modelli Ultralytics YOLO26 nel formato PaddlePaddle?

Esportare i modelli Ultralytics YOLO26 nel formato PaddlePaddle è semplice. Puoi utilizzare il metodo export della classe YOLO per eseguire la conversione. Ecco un esempio utilizzando Python:

Utilizzo
from ultralytics import YOLO

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

# Export the model to PaddlePaddle format
model.export(format="paddle")  # creates '/yolo26n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo26n_paddle_model")

# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")

Per una configurazione più dettagliata e per la risoluzione dei problemi, controlla la Guida all'installazione di Ultralytics e la Guida ai problemi comuni.

Quali sono i vantaggi dell'utilizzo di PaddlePaddle per il deploy del modello?

PaddlePaddle offre diversi vantaggi chiave per il deploy dei modelli:

  • Ottimizzazione delle prestazioni: PaddlePaddle eccelle nell'esecuzione efficiente del modello e nella riduzione dell'utilizzo della memoria.
  • Compilazione del grafo da dinamico a statico: Supporta la compilazione da dinamica a statica, consentendo ottimizzazioni in fase di runtime.
  • Fusione degli operatori: Unendo le operazioni compatibili, riduce l'overhead computazionale.
  • Tecniche di quantizzazione: Supporta sia il post-training che il training consapevole della quantizzazione, abilitando rappresentazioni di dati a precisione inferiore per prestazioni migliori.

Puoi ottenere risultati migliori esportando i tuoi modelli Ultralytics YOLO26 in PaddlePaddle, garantendo flessibilità e prestazioni elevate attraverso varie applicazioni e piattaforme hardware. Esplora le caratteristiche e le capacità principali di PaddlePaddle nella documentazione ufficiale di PaddlePaddle.

Perché dovrei scegliere PaddlePaddle per il deploy dei miei modelli YOLO26?

PaddlePaddle, sviluppato da Baidu, è ottimizzato per deploy di AI industriali e commerciali. La sua vasta community di sviluppatori e il solido framework forniscono strumenti estesi simili a TensorFlow e PyTorch. Esportando i tuoi modelli YOLO26 in PaddlePaddle, ottieni:

  • Prestazioni migliorate: Velocità di esecuzione ottimale e impronta di memoria ridotta.
  • Flessibilità: Ampia compatibilità con vari dispositivi, dagli smartphone ai server cloud.
  • Scalabilità: Capacità di elaborazione parallela efficiente per ambienti distribuiti.

Queste funzionalità rendono PaddlePaddle una scelta convincente per il deploy di modelli YOLO26 in ambienti di produzione.

In che modo PaddlePaddle migliora le prestazioni del modello rispetto ad altri framework?

PaddlePaddle impiega diverse tecniche avanzate per ottimizzare le prestazioni del modello:

  • Grafo da dinamico a statico: Converte i modelli in un grafo computazionale statico per ottimizzazioni in runtime.
  • Fusione degli operatori: Combina le operazioni compatibili per ridurre al minimo il trasferimento di memoria e aumentare la velocità di inferenza.
  • Quantizzazione: Riduce le dimensioni del modello e aumenta l'efficienza utilizzando dati a precisione inferiore mantenendo l'accuratezza.

Queste tecniche danno priorità all'esecuzione efficiente del modello, rendendo PaddlePaddle un'opzione eccellente per il deploy di modelli YOLO26 ad alte prestazioni. Per ulteriori informazioni sull'ottimizzazione, consulta la documentazione ufficiale di PaddlePaddle.

Quali opzioni di deploy offre PaddlePaddle per i modelli YOLO26?

PaddlePaddle fornisce opzioni di deploy flessibili:

  • Paddle Serving: Distribuisce i modelli come API RESTful, ideali per la produzione con funzionalità come il versionamento dei modelli e A/B testing online.
  • API di inferenza Paddle: Offre un controllo a basso livello sull'esecuzione del modello per applicazioni personalizzate.
  • Paddle Lite: Ottimizza i modelli per le risorse limitate di dispositivi mobili ed embedded.
  • Paddle.js: Abilita il deploy dei modelli direttamente all'interno dei browser web.

Queste opzioni coprono una vasta gamma di scenari di deploy, dall'inferenza on-device ai servizi cloud scalabili. Esplora altre strategie di deploy sulla pagina delle opzioni di deploy dei modelli di Ultralytics.

Commenti