Esportazione di Ultralytics YOLO11 tramite l'integrazione PaddlePaddle

Abirami Vina

5 minuti di lettura

16 maggio 2025

Scoprite come esportare i modelli Ultralytics YOLO come Ultralytics YOLO11 con PaddlePaddle per una distribuzione efficiente su piattaforme edge, mobile e cloud.

Con il progredire dell'intelligenza artificiale (IA), le macchine stanno migliorando la comprensione del mondo che le circonda. Un'area chiave che guida questo progresso è la computer vision, una branca dell'IA che consente alle macchine di interpretare e prendere decisioni basate su dati visivi.

Dal riconoscimento dei segnali stradali da parte delle automobili al controllo degli scaffali nei negozi, la computer vision è ormai parte integrante di molti strumenti di uso quotidiano. Queste attività si basano su modelli di IA di visione in grado di scansionare rapidamente una foto o un video e di identificare ciò che è importante.

Nel corso del tempo, questi modelli sono diventati più veloci e precisi, rendendoli utili in settori come l'agricoltura, la sanità, la sicurezza e la vendita al dettaglio. Ad esempio, Ultralytics YOLO11 è un modello costruito per gestire una serie di compiti di visione artificiale con velocità e precisione. È in grado di rilevare e classificare gli oggetti, tracciare i movimenti e stimare le pose dei corpi.

Una parte fondamentale del passaggio della computer vision dalla ricerca alle applicazioni reali è la distribuzione. Una volta addestrato un modello, il passo successivo è eseguirlo su dispositivi come telefoni, hardware edge o server cloud. 

__wf_reserved_inherit
Figura 1. L'implementazione del modello è una parte fondamentale di qualsiasi progetto di computer vision.

A questo scopo, i modelli Ultralytics YOLO come YOLO11 possono essere esportati in vari formati a seconda della piattaforma di destinazione. Uno di questi formati è PaddlePaddle, un framework di intelligenza artificiale open-source che consente un'efficiente distribuzione e inferenza dei modelli su un'ampia gamma di dispositivi e sistemi.

In questo articolo esploreremo come Ultralytics YOLO11 possa essere esportato attraverso l'integrazione PaddlePaddle supportata da Ultralytics per consentire una distribuzione efficiente su diverse piattaforme.

Che cos'è PaddlePaddle? 

L'implementazione di modelli di intelligenza artificiale al di fuori di contesti di ricerca, come i dispositivi mobili o l'hardware edge, può essere a volte complicata, soprattutto quando è necessario che funzionino in modo efficiente e utilizzino risorse minime. PaddlePaddle è un framework di deep learning progettato per aiutare proprio in questo senso.

Si tratta di una piattaforma open-source cinese, il cui nome sta per Parallel Distributed Deep Learning. Sviluppata da Baidu, un'azienda ben nota per il suo lavoro nel campo dell'intelligenza artificiale e delle infrastrutture software, PaddlePaddle è stata creata appositamente per applicazioni reali, non solo per la ricerca.

Gli sviluppatori possono eseguire modelli in formato PaddlePaddle su server, dispositivi edge e persino hardware mobile. Supporta inoltre strumenti che semplificano lo sviluppo dell'intelligenza artificiale, tra cui opzioni low-code e no-code. La piattaforma vanta una solida comunità di sviluppatori con oltre 4,7 milioni di utenti ed è utilizzata in diversi settori, tra cui sanità, agricoltura, produzione e finanza.

Caratteristiche principali di PaddlePaddle

Ecco alcune delle caratteristiche principali che aiutano PaddlePaddle a eseguire i modelli in modo più efficiente sui dispositivi del mondo reale:

  • Conversione del grafico da dinamico a statico: Questa funzione trasforma un modello flessibile in una versione fissa che funziona in modo più fluido e prevedibile. Un modello fisso è più facile da ottimizzare e più veloce nel fare previsioni.
  • Fusione di operatori: PaddlePaddle può combinare più fasi del modello in una sola. In questo modo si riduce la quantità di memoria utilizzata dal modello e se ne accelera l'esecuzione. È come combinare diverse attività in un'unica azione per risparmiare tempo.
  • Quantizzazione: Rende il modello più piccolo utilizzando numeri più semplici (come l'arrotondamento a meno cifre decimali). Consente di eseguire il modello su dispositivi con potenza limitata, come telefoni o fotocamere intelligenti, senza perdere molta precisione.
__wf_reserved_inherit
Figura 2. Vantaggi dell'uso di PaddlePaddle. Immagine dell'autore.

Una panoramica dell'utilizzo di YOLO11 con PaddlePaddle

L'integrazione di PaddlePaddle supportata da Ultralytics facilita il passaggio dalla formazione alla distribuzione. Gli sviluppatori che già utilizzano gli strumenti PaddlePaddle possono inserire YOLO11 nei loro flussi di lavoro con maggiore facilità.

Il pacchetto Ultralytics Python supporta l'esportazione diretta dei modelli YOLO11 nel formato PaddlePaddle, consentendo agli sviluppatori di distribuire modelli addestrati senza strumenti aggiuntivi o fasi di conversione manuale. 

Il processo di esportazione può essere eseguito tramite la riga di comando o il codice Python, in modo che gli sviluppatori possano scegliere il metodo che meglio si adatta al loro flusso di lavoro. Questo aiuta a mantenere le cose semplici e riduce la possibilità di problemi di configurazione. Una volta esportato, il modello può essere utilizzato per attività di computer vision come il rilevamento di oggetti, la classificazione di immagini, la stima della posa e la segmentazione di istanze.

È un'ottima opzione per gli scenari di implementazione in cui i dispositivi hanno una memoria limitata o richiedono un'elaborazione rapida. I modelli esportati sono ottimizzati per essere eseguiti in modo efficiente, anche su sistemi con risorse limitate. 

Come esportare i modelli YOLO11 nel formato PaddlePaddle

Sono sufficienti pochi passaggi per esportare YOLO11 nel formato del modello PaddlePaddle.

Il primo passo consiste nell'installare il pacchetto Ultralytics Python utilizzando un gestore di pacchetti come "pip". Per iniziare, si può eseguire il comando "pip install ultralytics" nel prompt dei comandi o nel terminale.

Il pacchetto Ultralytics fornisce strumenti per l'addestramento, la valutazione, la messa a punto, l'esportazione e la distribuzione di modelli per una serie di attività di computer vision. Se si verificano problemi durante l'installazione, consultare la guida Problemi comuni per i suggerimenti sulla risoluzione dei problemi.

Una volta impostato l'ambiente, è possibile caricare ed esportare un modello YOLO11 pre-addestrato, ad esempio "yolo11n.pt", come mostrato di seguito. È anche possibile esportare il proprio modello YOLO11 addestrato in modo personalizzato.

Dopo che il modello è stato convertito in formato PaddlePaddle, può essere distribuito in vari scenari su diversi tipi di hardware.

Per esempio, nell'esempio che segue, stiamo caricando un modello YOLO11 esportato in formato PaddlePaddle e lo stiamo usando per fare una previsione. Questo processo, noto come esecuzione di un'inferenza, significa semplicemente utilizzare il modello per analizzare nuovi dati. In questo caso, lo stiamo testando con un'immagine di due cani.

Dopo l'esecuzione del codice, l'immagine di output con le previsioni del modello verrà salvata automaticamente nella cartella "runs/detect/predict".

__wf_reserved_inherit
Figura 3. Utilizzo del modello YOLO11 esportato per rilevare gli oggetti in un'immagine. Immagine dell'autore.

Distribuzione di YOLO11 utilizzando il framework PaddlePaddle

PaddlePaddle offre diversi strumenti di distribuzione, ciascuno adatto a diversi dispositivi e casi d'uso come ambienti cloud, sistemi embedded e applicazioni web. Ecco alcune delle principali opzioni di distribuzione:

  • Paddle Serving: Aiuta a distribuire i modelli come API REST, il che lo rende una buona scelta per ambienti cloud o server che necessitano di funzionalità come il controllo delle versioni e i test online.
  • API di inferenza Paddle: Offre un maggiore controllo sull'esecuzione dei modelli, utile quando è necessario regolare le prestazioni o costruire una logica applicativa personalizzata.
  • Paddle Lite: è progettato per una distribuzione leggera su dispositivi mobili, tablet e sistemi embedded. È ottimizzato per modelli più piccoli e un'inferenza più veloce su hardware con risorse limitate.
  • Paddle.js: consente di eseguire modelli di intelligenza artificiale nei browser web utilizzando tecnologie come WebGL e WebAssembly, utili per demo interattive e strumenti basati su browser.
__wf_reserved_inherit
Figura 4. Opzioni di distribuzione abilitate da PaddlePaddle. Immagine dell'autore.

Una volta scelto lo strumento giusto per la propria configurazione, è possibile caricare il modello esportato. Il motore di PaddlePaddle si occupa delle fasi successive. Carica il modello, elabora l'immagine in ingresso e restituisce i risultati.

Quando scegliere l'integrazione PaddlePaddle?

Il pacchetto Ultralytics Python supporta anche diversi altri formati di esportazione, quindi potreste chiedervi: Quando PaddlePaddle è la scelta giusta?

PaddlePaddle è un'opzione affidabile quando si desidera distribuire modelli su dispositivi con risorse limitate, come smartphone, sistemi embedded o hardware edge. È ideale anche per le applicazioni in tempo reale che richiedono prestazioni rapide ed efficienti, come il rilevamento di oggetti nelle app mobili, il monitoraggio basato sulla visione nelle telecamere intelligenti o la stima della posa eseguita direttamente sul dispositivo senza supporto cloud.

Inoltre, se il progetto deve essere eseguito offline o in ambienti a bassa connettività, si può prendere in considerazione l'integrazione di PaddlePaddle. Applicazioni come gli strumenti di ispezione visiva nella produzione, i dispositivi palmari per i rilievi sul campo o gli scanner per la vendita al dettaglio abilitati all'intelligenza artificiale possono beneficiare del runtime leggero e delle opzioni di distribuzione flessibili di PaddlePaddle. 

Limitazioni di PaddlePaddle da considerare

Sebbene PaddlePaddle offra interessanti possibilità di impiego, è necessario tenere conto di alcuni fattori limitanti:

  • Comunità globale più piccola: Al di fuori della Cina, la base di utenti e collaboratori è relativamente piccola. Questo può rendere più difficile trovare il supporto della comunità, i problemi risolti su GitHub o le risposte di Stack Overflow.
  • Curva di apprendimento più ripida per gli strumenti non Baidu: PaddlePaddle si integra senza problemi con l'ecosistema di Baidu, ma il suo utilizzo al di fuori di questo contesto può comportare ulteriori passaggi di configurazione e impostazione.
  • Meno integrazioni con gli strumenti di ML tradizionali: PaddlePaddle ha una compatibilità limitata con strumenti comuni come Hugging Face Transformers, MLflow o i servizi AI nativi di Kubernetes.

Punti di forza

L'integrazione PaddlePaddle supportata da Ultralytics semplifica l'esportazione e la distribuzione dei modelli YOLO11 su una serie di dispositivi. È particolarmente utile per i progetti che richiedono prestazioni efficienti sul dispositivo, come le applicazioni mobili, le telecamere intelligenti o i sistemi embedded.

Con pochi passaggi, è possibile introdurre potenti modelli di visione nelle applicazioni del mondo reale. Con il continuo progresso della computer vision, strumenti come YOLO e PaddlePaddle rendono più facile che mai la creazione di sistemi veloci e intelligenti, dai dispositivi di consumo agli strumenti industriali.

Unisciti alla nostra comunità in crescita! Approfondite il tema dell'intelligenza artificiale esplorando il nostro repository GitHub. Volete creare i vostri progetti di computer vision? Esplorate le nostre opzioni di licenza. Scoprite come la computer vision nel settore sanitario sta migliorando l'efficienza ed esplorate l'impatto dell'IA nella vendita al dettaglio visitando le nostre pagine dedicate alle soluzioni!

Costruiamo insieme il futuro
dell'IA!

Iniziate il vostro viaggio nel futuro dell'apprendimento automatico

Iniziare gratuitamente
Link copiato negli appunti