Ultralytics YOLO27:
Guide

Pruning e quantizzazione nella computer vision: una guida rapida

Scopri perché il pruning e la quantizzazione sono essenziali per ottimizzare i modelli di computer vision e abilitare prestazioni più rapide sui dispositivi edge.

ABAbirami Vina10 min read
Pruning e quantizzazione nella computer vision

Con il progresso della tecnologia, i dispositivi edge stanno diventando sempre più comuni. Dagli smartwatch che monitorano la frequenza cardiaca ai droni aerei che sorvegliano le strade, i sistemi edge possono elaborare i dati localmente in tempo reale, direttamente sul dispositivo.

Questo metodo è spesso più veloce e sicuro rispetto all'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, un ramo dell'intelligenza artificiale (AI) che consente alle macchine di interpretare e comprendere le informazioni visive.

Un esempio di rilevamento delle targhe

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

Tuttavia, è importante considerare che tali applicazioni richiedono modelli di IA per la visione in grado di gestire calcoli complessi, utilizzare risorse minime e funzionare in modo indipendente. La maggior parte dei modelli di computer vision è sviluppata per sistemi ad alte prestazioni, il che li rende meno adatti alla distribuzione diretta sui dispositivi edge.

Per colmare questa lacuna, gli sviluppatori applicano spesso ottimizzazioni mirate che adattano il modello affinché funzioni in modo efficiente su hardware più compatto. Questi adattamenti sono fondamentali per le distribuzioni edge nel 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à progettati tenendo conto dell'efficienza edge, il che li rende ideali per le attività in tempo reale. Tuttavia, le loro prestazioni possono essere ulteriormente migliorate utilizzando tecniche di ottimizzazione dei modelli come pruning e quantizzazione, consentendo inferenze ancora più rapide e un minore utilizzo delle risorse sui dispositivi con capacità limitate.

In questo articolo analizzeremo più da vicino cosa sono il pruning e la quantizzazione, come funzionano e in che modo possono aiutare i modelli YOLO a raggiungere migliori prestazioni nelle distribuzioni edge del mondo reale. Iniziamo!

Pruning e quantizzazione: tecniche fondamentali per l'ottimizzazione dei modelli#

Quando si preparano modelli di IA per la visione per la distribuzione sui dispositivi edge, uno degli obiettivi principali è rendere il modello leggero e affidabile senza sacrificare le prestazioni. Spesso ciò comporta la riduzione delle dimensioni e dei requisiti computazionali del modello, 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 IA che contribuisce a rendere le reti neurali più compatte ed efficienti. In molti casi, alcune parti di un modello, come determinate connessioni o nodi, contribuiscono poco alle sue predizioni finali. Il pruning individua e rimuove queste parti meno importanti, riducendo le dimensioni del modello e accelerandone le prestazioni.

La quantizzazione, invece, è una tecnica di ottimizzazione che riduce la precisione dei numeri utilizzati dal modello. Anziché basarsi su numeri in virgola mobile a 32 bit ad alta precisione, il modello passa a formati più compatti ed efficienti, come gli interi a 8 bit. Questa modifica contribuisce a ridurre l'utilizzo della memoria e ad accelerare l'inferenza, il processo durante il quale il modello formula le predizioni.

Uno sguardo al pruning e alla quantizzazione

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

Come funzionano il pruning e la quantizzazione#

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

Il pruning viene eseguito tramite un processo noto come analisi della sensibilità. Questo processo individua quali parti dei modelli di rete neurale, come determinati pesi, neuroni o canali, contribuiscono meno alla predizione dell'output finale. Queste parti possono essere rimosse con un effetto minimo sulla precisione. Dopo il pruning, il modello viene solitamente riaddestrato per ottimizzarne le prestazioni. Questo ciclo può essere ripetuto per trovare il giusto equilibrio tra dimensioni e precisione.

La quantizzazione dei modelli, invece, si concentra sul modo in cui il modello gestisce i dati. Inizia con la calibrazione, durante la quale il modello viene eseguito su dati campione per apprendere l'intervallo di valori che deve elaborare. Questi valori vengono quindi convertiti dalla rappresentazione in virgola mobile a 32 bit a formati a precisione inferiore, come gli interi a 8 bit.

La quantizzazione contribuisce a ridurre le dimensioni e la complessità del modello

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

Sono disponibili diversi strumenti che semplificano l'uso del pruning e della quantizzazione nei progetti di IA del mondo reale. La maggior parte dei framework di IA, come PyTorch e TensorFlow, include il 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 diverse piattaforme hardware, tra cui server, computer desktop e dispositivi edge. Inoltre, Ultralytics offre integrazioni che consentono di esportare i modelli YOLO in formati adatti alla quantizzazione, semplificando la riduzione delle dimensioni del modello e il miglioramento delle prestazioni.

Panoramica sull'ottimizzazione dei modelli Ultralytics YOLO#

I modelli Ultralytics YOLO, come YOLO11, sono ampiamente riconosciuti per il rilevamento degli oggetti rapido e in un'unica fase, il che li rende ideali per le attività di IA per la visione in tempo reale. Sono già progettati per essere abbastanza leggeri ed efficienti da poter essere distribuiti sui dispositivi edge. Tuttavia, i livelli responsabili dell'elaborazione delle caratteristiche visive, chiamati livelli convoluzionali, possono comunque richiedere una notevole potenza di calcolo durante l'inferenza.

Potresti chiederti: se Ultralytics YOLO11 è già ottimizzato per l'uso edge, perché ha bisogno di un'ulteriore ottimizzazione? In poche parole, non tutti i dispositivi edge sono uguali. Alcuni funzionano con hardware molto limitato, come piccoli processori embedded che consumano meno energia di una normale lampadina LED.

In questi casi, anche un modello ottimizzato come Ultralytics YOLO11 necessita di un'ulteriore ottimizzazione per garantire prestazioni fluide e affidabili. Tecniche come il pruning e la quantizzazione contribuiscono a ridurre le dimensioni del modello e ad accelerare l'inferenza senza influire significativamente sulla precisione, rendendole ideali per questi ambienti con risorse limitate.

Per semplificare l'applicazione di queste tecniche di ottimizzazione, Ultralytics supporta diverse integrazioni che possono essere utilizzate per esportare i modelli YOLO in vari 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 viene spesso utilizzato nei flussi di lavoro 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, il che lo rende ideale per la distribuzione ad alta velocità sulle GPU edge.

Casi d'uso rilevanti dell'ottimizzazione dei modelli Ultralytics YOLO#

Con la continua espansione della computer vision in varie applicazioni del mondo reale, i modelli YOLO ottimizzati consentono di eseguire attività come il rilevamento degli oggetti, la segmentazione delle istanze e il tracciamento degli oggetti su hardware più compatto e veloce. Ora analizziamo un paio di casi d'uso in cui il pruning e la quantizzazione rendono queste attività di computer vision più efficienti e pratiche.

Videosorveglianza intelligente basata su Ultralytics YOLO11#

Molti spazi industriali, così come le aree pubbliche, dipendono dal monitoraggio in tempo reale per mantenere condizioni di sicurezza. Luoghi come stazioni di transito, siti produttivi e grandi strutture all'aperto necessitano di sistemi di IA per la visione in grado di rilevare persone o veicoli in modo rapido e preciso. Spesso queste aree operano con connettività limitata e vincoli hardware, il che rende difficile distribuire modelli di grandi dimensioni.

In questi casi, un modello di IA per la visione ottimizzato come Ultralytics YOLO11 è un'ottima soluzione. Le sue dimensioni compatte e le sue prestazioni rapide lo rendono perfetto per funzionare su dispositivi edge a basso consumo, come telecamere embedded o sensori intelligenti. Questi modelli possono elaborare i dati visivi direttamente sul dispositivo, consentendo il rilevamento in tempo reale delle violazioni delle norme di sicurezza, degli accessi non autorizzati o delle attività anomale, senza dipendere da un accesso costante al cloud.

Ultralytics YOLO11 monitora luoghi pubblici come le stazioni della metropolitana

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

Migliorare la sicurezza nei cantieri con Ultralytics YOLO11#

I cantieri sono ambienti dinamici e imprevedibili, pieni di macchinari pesanti, lavoratori in movimento e attività costante. Le condizioni possono cambiare rapidamente a causa della variazione degli orari, dello spostamento delle attrezzature o persino di improvvisi cambiamenti meteorologici. In un contesto 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 dipendono dall'accesso al cloud o da hardware costoso che potrebbe non essere pratico sul posto. È qui che modelli come Ultralytics YOLO11 possono fare la differenza. YOLO11 può essere ottimizzato per funzionare su dispositivi edge piccoli ed efficienti, operando direttamente sul posto senza bisogno di una connessione Internet.

Prendiamo ad esempio un grande cantiere, come quello per l'ampliamento di un'autostrada che si estende per diversi ettari. In un contesto di questo tipo, monitorare manualmente ogni veicolo o attrezzatura può essere difficile e richiedere molto tempo. Un drone dotato di una telecamera e di un modello Ultralytics YOLO11 ottimizzato può essere d'aiuto rilevando e seguendo automaticamente i veicoli, monitorando il flusso del traffico e individuando problemi di sicurezza, come accessi non autorizzati o comportamenti di guida pericolosi.

Analisi delle immagini acquisite da un drone in un cantiere

Fig. 5. Analisi delle immagini acquisite da un drone in 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 il pruning e la quantizzazione:

  • Distribuzione conveniente: modelli più compatti ed efficienti possono ridurre la necessità di hardware costoso e di fascia alta, rendendo l'IA più accessibile e scalabile in diversi casi d'uso.
  • Minore latenza: semplificando l'architettura del modello e riducendo il carico computazionale, queste tecniche possono contribuire a ottenere tempi di risposta più rapidi nelle applicazioni in tempo reale.
  • Efficienza energetica: la riduzione del carico computazionale abbassa anche il consumo energetico, aspetto particolarmente utile per i sistemi alimentati a batteria o mobili.

Sebbene il pruning e la quantizzazione offrano molti vantaggi, comportano anche alcuni compromessi che gli sviluppatori dovrebbero considerare durante l'ottimizzazione dei modelli. Ecco alcune limitazioni da tenere presenti:

  • Compromessi in termini di precisione: se il pruning è troppo aggressivo o viene utilizzata una quantizzazione a bit molto basso, la precisione del modello, misurata da metriche come mAP, può diminuire.
  • Vincoli hardware: non tutti i dispositivi supportano allo stesso modo i formati a precisione inferiore, come INT8. Questo può limitare dove e come è possibile distribuire un modello ottimizzato.
  • Complessità di implementazione: ottenere buoni risultati richiede spesso un'attenta messa a punto specifica per il modello. Gli sviluppatori potrebbero dover riaddestrare il modello ed eseguire test approfonditi per mantenere le prestazioni migliorando al contempo l'efficienza.

Punti chiave#

Il pruning e la quantizzazione sono tecniche utili che aiutano i modelli YOLO a funzionare meglio sui dispositivi edge. Riducono le dimensioni del modello, ne abbassano i requisiti computazionali e accelerano le predizioni, il tutto senza una perdita evidente di precisione.

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

Unisciti alla nostra community in continua crescita! Esplora il nostro repository GitHub per saperne di più sull'IA. Vuoi iniziare i tuoi progetti di computer vision? Dai un'occhiata alle nostre opzioni di licenza. Scopri l'IA nell'agricoltura e l'IA per la visione nel settore sanitario visitando le nostre pagine dedicate alle soluzioni!

Explore solutions

Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo percorso verso il futuro del machine learning