Come esportare in formato PaddlePaddle dai modelli di YOLO11
Colmare il divario tra lo sviluppo e la distribuzione di modelli di computer vision in scenari reali con condizioni variabili può essere difficile. PaddlePaddle semplifica questo processo grazie alla sua attenzione alla flessibilità, alle prestazioni e alla capacità di elaborazione parallela in ambienti distribuiti. Ciò significa che è possibile utilizzare i modelli di computer vision di YOLO11 su un'ampia gamma di dispositivi e piattaforme, dagli smartphone ai server basati su cloud.
Guarda: Come esportare i modelli Ultralytics YOLO11 nel formato PaddlePaddle | Caratteristiche principali del formato PaddlePaddle
La possibilità di esportare il modello in formato PaddlePaddle consente di ottimizzare i modelli per l'uso nel framework . Ultralytics YOLO11 modelli per l'uso nel framework PaddlePaddle . PaddlePaddle è noto per facilitare le implementazioni industriali ed è una buona scelta per l'implementazione di applicazioni di computer vision in ambienti reali in vari domini.
Perché esportare in PaddlePaddle?
Sviluppato da Baidu, PaddlePaddle(PArallel Distributed Deep LEarning) è la prima piattaforma di deep learning open-source della Cina. A differenza di alcuni framework costruiti principalmente per la ricerca, PaddlePaddle dà la priorità alla facilità d'uso e all'integrazione nei vari settori.
Offre strumenti e risorse simili a framework popolari come TensorFlow e PyTorchrendendolo accessibile agli sviluppatori di tutti i livelli di esperienza. Dall'agricoltura alle fabbriche, fino alle aziende di servizi, l'ampia comunità di sviluppatori di PaddlePaddle, che conta oltre 4,77 milioni di persone, aiuta a creare e distribuire applicazioni di intelligenza artificiale.
Esportando i modelli Ultralytics YOLO11 in formato PaddlePaddle , è possibile sfruttare i punti di forza di PaddlePaddle per l'ottimizzazione delle prestazioni. PaddlePaddle dà priorità all'esecuzione efficiente dei modelli e alla riduzione dell'uso della memoria. Di conseguenza, i vostri modelli YOLO11 possono potenzialmente ottenere prestazioni ancora migliori, fornendo risultati di altissimo livello in scenari pratici.
Caratteristiche principali dei modelli PaddlePaddle
PaddlePaddle I modelli offrono una serie di caratteristiche chiave che contribuiscono alla loro flessibilità, alle prestazioni e alla scalabilità in diversi scenari di implementazione:
-
Grafo dinamico-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 del tempo di esecuzione e aumentano le prestazioni dell'inferenza.
-
Fusione di operatori: PaddlePaddle, come TensorRT, utilizza la fusione di operatori per semplificare il calcolo e ridurre l'overhead. Il framework riduce al minimo i trasferimenti di memoria e i passaggi computazionali unendo operazioni compatibili, ottenendo un'inferenza più veloce.
-
Quantizzazione: PaddlePaddle supporta tecniche di quantizzazione, tra cui la quantizzazione post-training e l'addestramento consapevole della quantizzazione. Queste tecniche consentono di utilizzare rappresentazioni dei dati a bassa precisione, aumentando efficacemente le prestazioni e riducendo le dimensioni del modello.
Opzioni di distribuzione in PaddlePaddle
Prima di immergerci nel codice per esportare i modelli di YOLO11 in PaddlePaddle, diamo un'occhiata ai diversi scenari di distribuzione in cui i modelli di PaddlePaddle eccellono.
PaddlePaddle offre una serie di opzioni, ognuna delle quali offre un equilibrio distinto tra facilità d'uso, flessibilità e prestazioni:
-
Paddle Serving: Questo framework semplifica la distribuzione dei modelli PaddlePaddle come API RESTful ad alte prestazioni. Paddle Serving è ideale per gli ambienti di produzione e offre funzionalità come il versioning dei modelli, i test A/B online e la scalabilità per gestire grandi volumi di richieste.
-
API di inferenza Paddle: L'API di inferenza Paddle offre un controllo di basso livello sull'esecuzione del modello. Questa opzione è adatta a scenari in cui è necessario integrare strettamente il modello in un'applicazione personalizzata o ottimizzare le prestazioni per un hardware specifico.
-
Paddle Lite: Paddle Lite è progettato per la distribuzione su dispositivi mobili ed embedded dove le risorse sono limitate. Ottimizza i modelli per ottenere dimensioni ridotte e un'inferenza più veloce su CPU ARM, GPU e altro hardware specializzato.
-
Paddle.js: Paddle.js consente di distribuire i modelli di PaddlePaddle direttamente nei browser web. Paddle.js può caricare un modello pre-addestrato o trasformare un modello da paddle-hub con gli strumenti di trasformazione dei modelli forniti da Paddle.js. Può essere eseguito nei browser che supportano WebGL/WebGPU/WebAssembly.
Esportazione in PaddlePaddle: Conversione del modello YOLO11
La conversione dei modelli YOLO11 nel formato PaddlePaddle può migliorare la flessibilità di esecuzione e ottimizzare le prestazioni per vari scenari di distribuzione.
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 PaddlePaddle format
model.export(format="paddle") # creates '/yolo11n_paddle_model'
# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo11n_paddle_model")
# Run inference
results = paddle_model("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 di YOLO11 PaddlePaddle
Dopo aver esportato con successo i modelli Ultralytics YOLO11 nel formato PaddlePaddle , è possibile distribuirli. Il primo passo primario e consigliato per eseguire un modello PaddlePaddle è usare il metodo YOLO("./model_paddle_model"), come indicato nel precedente frammento di codice.
Tuttavia, per istruzioni approfondite sull'implementazione dei modelli PaddlePaddle in vari altri contesti, consultate le seguenti risorse:
-
Pagaia al servizio: Imparate a distribuire i vostri modelli PaddlePaddle come servizi performanti utilizzando Paddle Serving.
-
Pagaia Lite: Scoprite come ottimizzare e distribuire i modelli su dispositivi mobili ed embedded utilizzando Paddle Lite.
-
Paddle.js: Scoprite come eseguire i modelli PaddlePaddle nei browser web per l'intelligenza artificiale lato client utilizzando Paddle.js.
Sintesi
In questa guida abbiamo esplorato il processo di esportazione dei modelli Ultralytics YOLO11 nel formato PaddlePaddle . Seguendo questi passaggi, è possibile sfruttare i punti di forza di PaddlePaddle in diversi scenari di distribuzione, ottimizzando i modelli per diversi ambienti hardware e software.
Per ulteriori dettagli sull'utilizzo, visitare la documentazione ufficiale di PaddlePaddle .
Volete esplorare altri modi per integrare i vostri modelli Ultralytics YOLO11 ? La nostra pagina di guida all'integrazione esplora varie opzioni, fornendovi preziose risorse e approfondimenti.
FAQ
Come posso esportare i modelli Ultralytics YOLO11 nel formato PaddlePaddle ?
L'esportazione dei modelli Ultralytics YOLO11 nel formato PaddlePaddle è semplice. È possibile utilizzare il file export
della classe YOLO per eseguire l'esportazione. Ecco un esempio che utilizza Python:
Utilizzo
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to PaddlePaddle format
model.export(format="paddle") # creates '/yolo11n_paddle_model'
# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolo11n_paddle_model")
# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
Per una configurazione più dettagliata e per la risoluzione dei problemi, consultare la Guida all'installazione diUltralytics e la Guida ai problemi comuni.
Quali sono i vantaggi dell'utilizzo di PaddlePaddle per la distribuzione dei modelli?
PaddlePaddle offre diversi vantaggi chiave per la distribuzione dei modelli:
- Ottimizzazione delle prestazioni: PaddlePaddle eccelle per l'efficienza dell'esecuzione dei modelli e la riduzione dell'uso della memoria.
- Compilazione dinamica-statica dei grafici: Supporta la compilazione da dinamica a statica, consentendo ottimizzazioni in fase di esecuzione.
- Fusione di operatori: Unendo operazioni compatibili, riduce l'overhead computazionale.
- Tecniche di quantizzazione: Supporta sia l'addestramento post-training che l'addestramento consapevole della quantizzazione, consentendo rappresentazioni dei dati a bassa precisione per migliorare le prestazioni.
È possibile ottenere risultati migliori esportando i modelli Ultralytics YOLO11 in PaddlePaddle, garantendo flessibilità e prestazioni elevate su diverse applicazioni e piattaforme hardware. Per saperne di più sulle caratteristiche di PaddlePaddle, cliccate qui.
Perché dovrei scegliere PaddlePaddle per distribuire i miei modelli YOLO11 ?
PaddlePaddle, sviluppato da Baidu, è ottimizzato per le implementazioni industriali e commerciali dell'intelligenza artificiale. La sua vasta comunità di sviluppatori e il suo robusto framework forniscono ampi strumenti simili a TensorFlow e PyTorch. Esportando i modelli di YOLO11 in PaddlePaddle, si può sfruttare:
- Prestazioni migliorate: Velocità di esecuzione ottimale e ingombro di memoria ridotto.
- Flessibilità: Ampia compatibilità con vari dispositivi, dagli smartphone ai server cloud.
- Scalabilità: Capacità di elaborazione parallela efficiente per ambienti distribuiti.
Queste caratteristiche rendono PaddlePaddle una scelta convincente per l'implementazione dei modelli YOLO11 in ambienti di produzione.
In che modo PaddlePaddle migliora le prestazioni dei modelli rispetto ad altri framework?
PaddlePaddle impiega diverse tecniche avanzate per ottimizzare le prestazioni del modello:
- Grafico dinamico-statico: Converte i modelli in un grafo computazionale statico per le ottimizzazioni di runtime.
- Fusione di operatori: Combina 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 bassa precisione, pur mantenendo l'accuratezza.
Queste tecniche danno priorità all'esecuzione efficiente dei modelli, rendendo PaddlePaddle un'opzione eccellente per la distribuzione di modelli YOLO11 ad alte prestazioni. Per ulteriori informazioni sull'ottimizzazione, vedere la documentazione ufficiale di PaddlePaddle .
Quali opzioni di distribuzione offre PaddlePaddle per i modelli YOLO11 ?
PaddlePaddle offre opzioni di implementazione flessibili:
- Paddle Serving: Distribuisce i modelli come API RESTful, ideale per la produzione con funzioni come la versionatura dei modelli e i test A/B online.
- API di inferenza Paddle: Fornisce un controllo di basso livello sull'esecuzione del modello per le applicazioni personalizzate.
- Paddle Lite: Ottimizza i modelli per le risorse limitate dei dispositivi mobili e incorporati.
- Paddle.js: consente di distribuire i modelli direttamente nei browser web.
Queste opzioni coprono un'ampia gamma di scenari di distribuzione, dall'inferenza sul dispositivo ai servizi cloud scalabili. Esplorate altre strategie di distribuzione alla pagina Opzioni di distribuzione del modelloUltralytics .