Ultralytics YOLO27:
Get Started

Come esportare modelli YOLO26 nel formato PaddlePaddle#

Colmare il divario tra lo sviluppo e la distribuzione di modelli di visione artificiale in scenari reali caratterizzati da condizioni variabili può essere difficile. PaddlePaddle semplifica questo processo grazie all'attenzione per la flessibilità, le prestazioni e l'elaborazione parallela in ambienti distribuiti. Ciò significa che puoi usare i tuoi modelli di visione artificiale YOLO26 su un'ampia varietà di dispositivi e piattaforme, dagli smartphone ai server basati su cloud.



Guarda: Come esportare i modelli Ultralytics YOLO26 nel formato PaddlePaddle | Funzionalità principali del formato PaddlePaddle

La possibilità di esportare nel formato modello PaddlePaddle ti consente di ottimizzare i modelli Ultralytics YOLO26 per usarli con il framework PaddlePaddle. PaddlePaddle è noto per agevolare le distribuzioni industriali ed è una buona scelta per distribuire applicazioni di visione artificiale in contesti reali e in vari settori.

Perché esportare in PaddlePaddle?#

PaddlePaddle deep learning framework logo

Sviluppato da Baidu, PaddlePaddle (PA) è la prima piattaforma open source cinese per il deep learning. A differenza di alcuni framework sviluppati principalmente per la ricerca, PaddlePaddle dà priorità alla facilità d'uso e alla perfetta integrazione nei diversi settori.

Offre strumenti e risorse simili a quelli di framework diffusi come TensorFlow e PyTorch, risultando accessibile agli sviluppatori di ogni livello di esperienza. Dall'agricoltura alle fabbriche, fino alle aziende di servizi, l'ampia comunità di oltre 4,77 milioni di sviluppatori di PaddlePaddle contribuisce alla creazione e alla distribuzione di 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 dei modelli e alla riduzione dell'uso di memoria. Di conseguenza, i tuoi modelli YOLO26 possono ottenere prestazioni ancora migliori e risultati eccellenti in scenari pratici.

Caratteristiche principali dei modelli PaddlePaddle#

I modelli PaddlePaddle offrono diverse caratteristiche chiave che ne favoriscono la flessibilità, le prestazioni e la scalabilità in vari scenari di distribuzione:

  • Grafi dinamici convertiti in grafi statici: PaddlePaddle supporta la compilazione da grafi dinamici a grafi statici, che consente di convertire i modelli in grafi computazionali statici. In questo modo è possibile applicare ottimizzazioni che riducono il sovraccarico in fase di esecuzione e aumentano le prestazioni di inferenza.

  • Fusione degli operatori: PaddlePaddle, come TensorRT, usa la fusione degli operatori per semplificare i calcoli e ridurre il sovraccarico. Il framework riduce al minimo i trasferimenti di memoria e le operazioni computazionali unendo le operazioni compatibili, ottenendo così un'inferenza più rapida.

  • Quantizzazione: PaddlePaddle supporta le tecniche di quantizzazione, tra cui la quantizzazione post-training e l'addestramento con consapevolezza della quantizzazione. Queste tecniche consentono di usare rappresentazioni dei dati a precisione inferiore, migliorando le prestazioni e riducendo le dimensioni del modello.

Opzioni di distribuzione in PaddlePaddle#

Prima di passare al codice per esportare i modelli YOLO26 in PaddlePaddle, esaminiamo i diversi scenari di distribuzione in cui i modelli PaddlePaddle si distinguono.

PaddlePaddle offre diverse opzioni, ognuna con un equilibrio specifico tra facilità d'uso, flessibilità e prestazioni:

  • Paddle Serving: questo framework semplifica la distribuzione dei modelli PaddlePaddle sotto forma di API RESTful ad alte prestazioni. Paddle Serving è ideale per gli ambienti di produzione e offre funzionalità come il controllo delle versioni dei modelli, i test A/B online e la scalabilità per gestire grandi volumi di richieste.

  • Paddle Inference API: la Paddle Inference API offre un controllo di basso livello sull'esecuzione dei modelli. Questa opzione è particolarmente adatta quando devi integrare strettamente il modello in un'applicazione personalizzata o ottimizzare le prestazioni per hardware specifico.

  • Paddle Lite: Paddle Lite è progettato per la distribuzione su dispositivi mobili e integrati con risorse limitate. Ottimizza i modelli per ridurne le dimensioni e velocizzare l'inferenza su CPU ARM, GPU e altro hardware specializzato.

  • Paddle.js: Paddle.js ti consente di distribuire i modelli PaddlePaddle direttamente nei browser web. Paddle.js può caricare un modello preaddestrato oppure 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.

Attività supportate#

L'esportazione PaddlePaddle supporta tutti e sette i task Ultralytics. La segmentazione semantica e la stima della profondità sono disponibili solo con YOLO26, l'unica famiglia che include queste teste.

AttivitàYOLOv8YOLO11YOLO26
Rilevamento✅✅✅
Segmentazione✅✅✅
Semantica❌❌✅
Profondità❌❌✅
Classificazione✅✅✅
Stima della posa✅✅✅
OBB✅✅✅

Esportazione in PaddlePaddle: conversione del modello YOLO26#

La conversione dei modelli YOLO26 nel formato PaddlePaddle può offrire maggiore flessibilità di esecuzione e ottimizzare le prestazioni per diversi scenari di distribuzione.

Installazione#

Per installare il pacchetto richiesto, esegui:

Installazione
# Install the required package for YOLO26
pip install ultralytics

Per istruzioni dettagliate e best practice sulla procedura di installazione, consulta la nostra guida all'installazione di Ultralytics. Se durante l'installazione dei pacchetti necessari per YOLO26 riscontri difficoltà, consulta la nostra guida ai problemi comuni per trovare soluzioni e suggerimenti.

Utilizzo#

Tutti i modelli Ultralytics YOLO26 supportano l'esportazione e puoi consultare l'elenco completo dei formati e delle opzioni di esportazione per trovare la soluzione più adatta alle tue esigenze di distribuzione.

Il formato PaddlePaddle supporta le modalità Export, Predict e Validate. Esporta il modello, poi caricalo per eseguire l'inferenza o convalidarne l'accuratezza.

Esporta
from ultralytics import YOLO

# Carica un modello YOLO26
model = YOLO("yolo26n.pt")

# Esporta il modello nel formato PaddlePaddle
model.export(format="paddle")  # creates 'yolo26n_paddle_model'
Predici
from ultralytics import YOLO

# Carica il modello PaddlePaddle esportato
model = YOLO("./yolo26n_paddle_model")

# Esegui l'inferenza
results = model("https://ultralytics.com/images/bus.jpg")
Convalida
from ultralytics import YOLO

# Carica il modello PaddlePaddle esportato
model = YOLO("./yolo26n_paddle_model")

# # Convalida l'accuratezza sul dataset COCO8
metrics = model.val(data="coco8.yaml")

Argomenti di esportazione#

ArgomentoTipoPredefinitoDescrizione
formatstr'paddle'Formato di destinazione del modello esportato, che definisce la compatibilità con i vari ambienti di distribuzione.
imgszint o tuple640Dimensione dell'immagine desiderata per l'input del modello. Può essere un intero per immagini quadrate o una tupla (height, width) per dimensioni specifiche.
quantizeint o strNoneEsportazione FP32 fissa. L'esportazione PaddlePaddle non supporta la conversione della precisione in FP16, INT8 o W8A16 durante l'esportazione.
batchint1Specifica la dimensione batch per l'inferenza del modello esportato o il numero massimo di immagini che il modello esportato elaborerà contemporaneamente 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 Ultralytics dedicata all'esportazione.

Distribuzione dei modelli YOLO26 PaddlePaddle esportati#

Dopo aver esportato correttamente i tuoi modelli Ultralytics YOLO26 nel formato PaddlePaddle, puoi distribuirli. Il primo passaggio consigliato per eseguire un modello PaddlePaddle consiste nell'usare il metodo YOLO("yolo26n_paddle_model/"), come indicato nel precedente frammento di codice.

Per istruzioni dettagliate sulla distribuzione dei modelli PaddlePaddle in altri contesti, consulta le seguenti risorse:

  • Paddle Serving: scopri come distribuire i tuoi modelli PaddlePaddle come servizi efficienti con Paddle Serving.

  • Paddle Lite: scopri come ottimizzare e distribuire modelli su dispositivi mobili e integrati con Paddle Lite.

  • Paddle.js: scopri come eseguire modelli PaddlePaddle nei browser web per offrire funzionalità AI sul client con Paddle.js.

Riepilogo#

In questa guida abbiamo illustrato 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 distribuzione e ottimizzare i modelli per vari ambienti hardware e software.

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

Vuoi scoprire altri modi per integrare i tuoi modelli Ultralytics YOLO26? La nostra pagina della guida alle integrazioni illustra diverse opzioni e ti offre risorse e approfondimenti preziosi.

Domande frequenti#

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

    Utilizzo
    from ultralytics import YOLO
    
    # Carica un modello YOLO26
    model = YOLO("yolo26n.pt")
    
    # Esporta il modello nel formato PaddlePaddle
    model.export(format="paddle")  # creates 'yolo26n_paddle_model'
    
    # Carica il modello PaddlePaddle esportato
    paddle_model = YOLO("./yolo26n_paddle_model")
    
    # Esegui l'inferenza
    results = paddle_model("https://ultralytics.com/images/bus.jpg")

    Per informazioni più dettagliate sulla configurazione e sulla risoluzione dei problemi, consulta la Guida all'installazione di Ultralytics e la Guida ai problemi comuni.

  • PaddlePaddle offre diversi vantaggi chiave per la distribuzione dei modelli:

    • Ottimizzazione delle prestazioni: PaddlePaddle eccelle nell'esecuzione efficiente dei modelli e nella riduzione dell'uso di memoria.
    • Compilazione da grafi dinamici a grafi statici: supporta la compilazione da grafi dinamici a grafi statici, consentendo ottimizzazioni in fase di esecuzione.
    • Fusione degli operatori: unendo le operazioni compatibili, riduce il sovraccarico computazionale.
    • Tecniche di quantizzazione: supporta sia la quantizzazione post-training sia l'addestramento con consapevolezza della quantizzazione, consentendo l'uso di rappresentazioni dei dati a precisione inferiore per migliorare le prestazioni.

    Esportando i tuoi modelli Ultralytics YOLO26 in PaddlePaddle, puoi ottenere risultati migliori e garantire flessibilità e prestazioni elevate in diverse applicazioni e piattaforme hardware. Scopri le caratteristiche e le funzionalità principali di PaddlePaddle nella documentazione ufficiale di PaddlePaddle.

  • PaddlePaddle, sviluppato da Baidu, è ottimizzato per le distribuzioni AI industriali e commerciali. L'ampia comunità di sviluppatori e il solido framework offrono numerosi strumenti analoghi a quelli di TensorFlow e PyTorch. Esportando i tuoi modelli YOLO26 in PaddlePaddle, puoi sfruttare:

    • Prestazioni migliorate: velocità di esecuzione ottimale e ingombro di memoria ridotto.
    • Flessibilità: ampia compatibilità con diversi dispositivi, dagli smartphone ai server cloud.
    • Scalabilità: capacità di elaborazione parallela efficiente per gli ambienti distribuiti.

    Queste caratteristiche rendono PaddlePaddle una scelta interessante per distribuire i modelli YOLO26 in produzione.

  • PaddlePaddle impiega diverse tecniche avanzate per ottimizzare le prestazioni dei modelli:

    • Grafi dinamici convertiti in grafi statici: converte i modelli in grafi computazionali statici per ottimizzarli in fase di esecuzione.
    • Fusione degli operatori: combina le operazioni compatibili per ridurre al minimo i trasferimenti di memoria e aumentare la velocità di inferenza.
    • Quantizzazione: riduce le dimensioni dei modelli e aumenta l'efficienza usando dati a precisione inferiore, mantenendo l'accuratezza.

    Queste tecniche privilegiano l'esecuzione efficiente dei modelli, rendendo PaddlePaddle un'ottima soluzione per distribuire modelli YOLO26 ad alte prestazioni. Per saperne di più sull'ottimizzazione, consulta la documentazione ufficiale di PaddlePaddle.

  • PaddlePaddle offre opzioni di distribuzione flessibili:

    • Paddle Serving: distribuisce i modelli come API RESTful ed è ideale per la produzione grazie a funzionalità come il controllo delle versioni dei modelli e i test A/B online.
    • Paddle Inference API: offre un controllo di basso livello sull'esecuzione dei modelli per applicazioni personalizzate.
    • Paddle Lite: ottimizza i modelli per i dispositivi mobili e integrati con risorse limitate.
    • Paddle.js: consente di distribuire i modelli direttamente nei browser web.

    Queste opzioni coprono un'ampia gamma di scenari di distribuzione, dall'inferenza direttamente sul dispositivo ai servizi cloud scalabili. Scopri altre strategie di distribuzione nella pagina delle opzioni di distribuzione dei modelli Ultralytics.

Commenti