Pruning e quantizzazione nella visione artificiale: Una guida rapida

Abirami Vina

5 minuti di lettura

11 luglio 2025

Scoprite perché il pruning e la quantizzazione sono essenziali per ottimizzare i modelli di computer vision e consentire prestazioni più veloci sui dispositivi edge.

I dispositivi edge stanno diventando sempre più comuni con il progredire della tecnologia. Dagli smartwatch che tracciano la frequenza cardiaca ai droni aerei che monitorano le strade, i sistemi edge possono elaborare i dati in tempo reale all'interno del dispositivo stesso. 

Questo metodo è spesso più veloce e sicuro dell'invio dei dati al cloud, soprattutto per le applicazioni che coinvolgono dati personali, come il rilevamento delle targhe o il tracciamento dei gesti. Questi sono esempi di computer vision, una branca dell'intelligenza artificiale (AI) che consente alle macchine di interpretare e comprendere le informazioni visive.

Figura 1. Un esempio di rilevamento delle targhe.(Fonte)

Tuttavia, una considerazione importante è che tali applicazioni richiedono modelli di IA di visione in grado di gestire calcoli pesanti, utilizzando risorse minime e operando in modo indipendente. La maggior parte dei modelli di computer vision sono sviluppati per sistemi ad alte prestazioni, il che li rende meno adatti all'implementazione diretta sui dispositivi edge. 

Per colmare questo divario, gli sviluppatori spesso applicano ottimizzazioni mirate che adattano il modello per funzionare in modo efficiente su hardware di piccole dimensioni. Questi aggiustamenti sono fondamentali per le implementazioni edge del mondo reale, dove la memoria e la potenza di elaborazione sono limitate. 

È interessante notare che i modelli di computer vision come Ultralytics YOLO11 sono già stati progettati tenendo conto dell'efficienza dei bordi, il che li rende ottimi per le attività in tempo reale. Tuttavia, le loro prestazioni possono essere ulteriormente migliorate utilizzando tecniche di ottimizzazione del modello, come il pruning e la quantizzazione, che consentono un'inferenza ancora più rapida e un minore utilizzo di risorse su dispositivi limitati.

In questo articolo esamineremo più da vicino cosa sono il pruning e la quantizzazione, come funzionano e come possono aiutare i modelli YOLO a ottenere risultati nelle implementazioni edge del mondo reale. Iniziamo!

Pruning e quantizzazione: Tecniche fondamentali per l'ottimizzazione dei modelli

Quando si preparano i modelli di Vision AI per la distribuzione su dispositivi edge, uno degli obiettivi principali è rendere il modello leggero e affidabile senza sacrificare le prestazioni. Spesso si tratta di ridurre le dimensioni del modello e le richieste di calcolo in modo che possa funzionare in modo efficiente su hardware con memoria, potenza o capacità di elaborazione limitate. Due modi comuni per farlo sono il pruning e la quantizzazione.

Il pruning è una tecnica di ottimizzazione dei modelli di intelligenza artificiale che aiuta a rendere le reti neurali più piccole ed efficienti. In molti casi, alcune parti di un modello, come alcune connessioni o nodi, non contribuiscono molto alle sue previsioni finali. Il pruning funziona identificando e rimuovendo queste parti meno importanti, riducendo così le dimensioni del modello e accelerandone le prestazioni.

D'altra parte, la quantizzazione è una tecnica di ottimizzazione che riduce la precisione dei numeri utilizzati da un modello. Invece di affidarsi a numeri in virgola mobile a 32 bit ad alta precisione, il modello passa a formati più piccoli e più efficienti, come gli interi a 8 bit. Questo cambiamento contribuisce a ridurre l'utilizzo della memoria e ad accelerare l'inferenza, il processo in cui il modello fa previsioni.

Figura 2. Uno sguardo al pruning e alla quantizzazione.(Fonte)

Come funzionano il pruning e la quantizzazione

Ora che abbiamo capito meglio cosa sono il pruning e la quantizzazione, vediamo come funzionano entrambi. 

La potatura viene effettuata mediante un processo noto come analisi della sensibilità. Essa identifica quali parti dei modelli di rete neurale, come alcuni pesi, neuroni o canali, contribuiscono meno alla previsione dell'uscita finale. Queste parti possono essere rimosse con un effetto minimo sull'accuratezza. Dopo la potatura, il modello viene solitamente riaddestrato per perfezionare le sue prestazioni. Questo ciclo può essere ripetuto per trovare il giusto equilibrio tra dimensioni e accuratezza.

La quantizzazione del modello si concentra invece sul modo in cui il modello gestisce i dati. Si inizia con la calibrazione, in cui il modello viene eseguito su dati campione per imparare la gamma di valori che deve elaborare. Questi valori vengono poi convertiti da 32 bit in virgola mobile a formati di precisione inferiore, come gli interi a 8 bit.

Figura 3. La quantizzazione aiuta a ridurre le dimensioni e la complessità del modello.(Fonte)

Esistono diversi strumenti che facilitano l'uso di pruning e quantizzazione nei progetti di IA del mondo reale. La maggior parte dei framework di IA, come PyTorch e TensorFlow, include un supporto integrato per queste tecniche di ottimizzazione, consentendo agli sviluppatori di integrarle direttamente nel processo di distribuzione dei modelli. 

Una volta ottimizzato un modello, strumenti come ONNX Runtime possono aiutare a eseguirlo in modo efficiente su varie piattaforme hardware come server, desktop e dispositivi edge. Inoltre, Ultralytics offre integrazioni che consentono di esportare i modelli YOLO in formati adatti alla quantizzazione, rendendo più facile ridurre le dimensioni del modello e aumentare le prestazioni.

Una panoramica dell'ottimizzazione del modello YOLO di Ultralytics

I modelli YOLO di Ultralytics, come YOLO11, sono ampiamente riconosciuti per la loro velocità di rilevamento degli oggetti in un unico passaggio, che li rende ideali per le attività di Vision AI in tempo reale. Sono già stati progettati per essere abbastanza leggeri ed efficienti da poter essere distribuiti su tutto il territorio. Tuttavia, gli strati responsabili dell'elaborazione delle caratteristiche visive, chiamati strati convoluzionali, possono richiedere una notevole potenza di calcolo durante l'inferenza.

Ci si potrebbe chiedere: se YOLO11 è già ottimizzato per l'uso su dispositivi edge, perché ha bisogno di ulteriori ottimizzazioni? Semplicemente, non tutti i dispositivi edge sono uguali. Alcuni funzionano con un hardware minimo, come i piccoli processori incorporati che consumano meno energia di una normale lampadina a LED. 

In questi casi, anche un modello semplificato come YOLO11 necessita di un'ottimizzazione aggiuntiva per garantire prestazioni fluide e affidabili. Tecniche come il pruning e la quantizzazione aiutano a ridurre le dimensioni del modello e a velocizzare l'inferenza senza impattare in modo significativo sull'accuratezza, rendendole ideali per ambienti così vincolati.

Per facilitare l'applicazione di queste tecniche di ottimizzazione, Ultralytics supporta diverse integrazioni che possono essere utilizzate per esportare i modelli YOLO in diversi formati come ONNX, TensorRT, OpenVINO, CoreML e PaddlePaddle. Ogni formato è progettato per funzionare bene con specifici tipi di hardware e ambienti di distribuzione. 

Ad esempio, ONNX è spesso utilizzato nei workflow di quantizzazione grazie alla sua compatibilità con un'ampia gamma di strumenti e piattaforme. TensorRT, invece, è altamente ottimizzato per i dispositivi NVIDIA e supporta l'inferenza a bassa precisione utilizzando INT8, rendendolo ideale per l'implementazione ad alta velocità sulle GPU edge.

Casi d'uso significativi dell'ottimizzazione del modello YOLO di Ultralytics

Poiché la computer vision continua a espandersi in varie applicazioni del mondo reale, i modelli YOLO ottimizzati consentono di eseguire attività come il rilevamento di oggetti, la segmentazione di istanze e il tracciamento di oggetti su hardware più piccolo e più veloce. A seguire, analizziamo un paio di casi d'uso in cui il pruning e la quantizzazione rendono più efficienti e pratici questi compiti di computer vision.

Sorveglianza intelligente guidata da YOLO11

Molti spazi industriali, così come le aree pubbliche, dipendono dal monitoraggio in tempo reale per rimanere sicuri e protetti. Luoghi come stazioni di transito, siti produttivi e grandi strutture all'aperto hanno bisogno di sistemi Vision AI in grado di rilevare persone o veicoli in modo rapido e preciso. Spesso questi luoghi sono caratterizzati da una connettività limitata e da vincoli hardware che rendono difficile l'implementazione di modelli di grandi dimensioni.

In questi casi, un modello ottimizzato di Vision AI come YOLO11 è un'ottima soluzione. Le sue dimensioni compatte e le sue prestazioni veloci lo rendono perfetto per l'esecuzione su dispositivi edge a basso consumo, come telecamere integrate o sensori intelligenti. Questi modelli possono elaborare i dati visivi direttamente sul dispositivo, consentendo di rilevare in tempo reale violazioni della sicurezza, accessi non autorizzati o attività anomale, senza dover ricorrere a un accesso costante al cloud.

Figura 4. YOLO11 può essere utilizzato per monitorare luoghi pubblici come le stazioni della metropolitana.

Aumentare la sicurezza nei cantieri con YOLO11

I cantieri sono ambienti frenetici e imprevedibili, pieni di macchinari pesanti, lavoratori in movimento e attività costante. Le condizioni possono cambiare rapidamente a causa di orari variabili, spostamenti di attrezzature o persino improvvisi cambiamenti meteorologici. In un ambiente così dinamico, la sicurezza dei lavoratori può sembrare una sfida continua.

Il monitoraggio in tempo reale svolge un ruolo fondamentale, ma i sistemi tradizionali spesso si affidano all'accesso al cloud o a un hardware costoso che potrebbe non essere pratico in loco. È qui che modelli come YOLO11 possono essere d'impatto. YOLO11 può essere ottimizzato per funzionare su dispositivi edge piccoli ed efficienti che operano direttamente sul posto senza bisogno di una connessione a Internet.

Si pensi, ad esempio, a un cantiere di grandi dimensioni, come l'ampliamento di un'autostrada che si estende per diversi ettari. In questo tipo di ambiente, seguire manualmente ogni veicolo o attrezzatura può essere difficile e richiede molto tempo. Un drone dotato di telecamera e di un modello YOLO11 ottimizzato può aiutare a rilevare e seguire automaticamente i veicoli, a monitorare il flusso del traffico e a individuare problemi di sicurezza come accessi non autorizzati o comportamenti di guida non sicuri.

Figura 5. Analisi delle immagini di un drone da un cantiere.(Fonte)

Pro e contro del pruning e della quantizzazione nella computer vision

Ecco alcuni dei principali vantaggi offerti dai metodi di ottimizzazione dei modelli di computer vision, come la potatura e la quantizzazione:

  • Implementazione economicamente vantaggiosa: Modelli più piccoli e più efficienti possono ridurre la necessità di hardware costoso e di fascia alta, rendendo l'IA più accessibile e scalabile in diversi casi d'uso.

  • Riduzione della latenza: Semplificando l'architettura del modello e riducendo l'overhead computazionale, queste tecniche possono contribuire a ottenere tempi di risposta più rapidi nelle applicazioni in tempo reale.

  • Efficienza energetica: La riduzione del carico computazionale riduce anche il consumo di energia, il che è particolarmente utile per i sistemi a batteria o mobili.

Sebbene il pruning e la quantizzazione offrano molti vantaggi, comportano anche alcuni compromessi che gli sviluppatori dovrebbero considerare quando ottimizzano i modelli. Ecco alcune limitazioni da tenere a mente:

  • Accuratezza compromessi: Se il pruning è troppo aggressivo o se si utilizza una quantizzazione a bit molto bassi, l'accuratezza del modello, misurata da metriche come mAP, può diminuire.

  • Vincoli hardware: Non tutti i dispositivi supportano ugualmente bene i formati a bassa precisione come l'INT8. Questo può limitare dove e come un modello ottimizzato può essere distribuito.

  • Complessità di implementazione: Il raggiungimento di buoni risultati spesso richiede un'attenta messa a punto specifica del modello. Gli sviluppatori potrebbero dover riqualificare il modello ed eseguire test approfonditi per mantenere le prestazioni e migliorare l'efficienza.

Punti di forza

Il pruning e la quantizzazione sono tecniche utili che aiutano i modelli YOLO a funzionare meglio sui dispositivi edge. Riducono le dimensioni del modello, diminuiscono le sue esigenze di calcolo e accelerano le previsioni, il tutto senza una sensibile perdita di accuratezza.

Questi metodi di ottimizzazione offrono inoltre agli sviluppatori la flessibilità di adattare i modelli a diversi tipi di hardware senza doverli ricostruire completamente. Con un po' di messa a punto e di test, diventa più facile applicare Vision AI in situazioni reali.

Unisciti alla nostra comunità in crescita! Esplorate il nostro repository GitHub per saperne di più sull'intelligenza artificiale. Siete pronti a iniziare i vostri progetti di computer vision? Scoprite le nostre opzioni di licenza. Scoprite l'IA in agricoltura e l'IA di visione nella sanità 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