Glossario

Formazione consapevole della quantizzazione (QAT)

Ottimizza i modelli di intelligenza artificiale per i dispositivi edge con il Quantization-Aware Training (QAT), garantendo un'elevata precisione ed efficienza in ambienti con risorse limitate.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

Il Quantization-Aware Training (QAT) è una tecnica di ottimizzazione cruciale nell'apprendimento automatico che colma il divario tra i modelli di IA ad alta precisione e la loro efficiente distribuzione su dispositivi con risorse limitate. Con l'espansione delle applicazioni di IA ai dispositivi edge come smartphone, sensori IoT e sistemi embedded, la necessità di modelli che siano allo stesso tempo accurati ed efficienti dal punto di vista computazionale diventa fondamentale. QAT affronta questa sfida simulando gli effetti della quantizzazione durante la fase di addestramento del modello, ottenendo modelli robusti e ottimizzati per l'hardware a bassa precisione.

Come funziona la formazione consapevole della quantizzazione

L'addestramento consapevole della quantizzazione affina le reti neurali per tollerare la ridotta precisione numerica inerente agli ambienti di distribuzione. A differenza della quantizzazione post-training, che viene applicata dopo che il modello è stato completamente addestrato, la QAT integra la quantizzazione nel ciclo di addestramento stesso. Ciò si ottiene simulando il processo di quantizzazione - riducendo la precisione numerica dei pesi e delle attivazioni - durante i passaggi in avanti e indietro. In questo modo, il modello impara a compensare la perdita di precisione, ottenendo un modello che mantiene un'accuratezza maggiore quando viene effettivamente quantizzato per l'impiego. Questo metodo prevede l'utilizzo di operazioni di "finta quantizzazione" che imitano l'aritmetica a bassa precisione, come l'int8, pur eseguendo i calcoli del gradiente e gli aggiornamenti dei pesi con la massima precisione. Questo approccio permette al modello di adattarsi e di diventare meno sensibile agli effetti della quantizzazione, ottenendo migliori prestazioni nell'inferenza quantizzata.

Per una comprensione più ampia delle tecniche di ottimizzazione, consulta la guida sull'ottimizzazione dei modelli, che fornisce una rapida panoramica dei metodi per migliorare l'efficienza dei modelli.

Distinzione dai concetti correlati

QAT vs. Quantizzazione del modello

Sebbene sia la QAT che la quantizzazione del modello mirino a ridurre la precisione del modello, i loro approcci e risultati differiscono in modo significativo. La quantizzazione del modello è in genere un processo di post-training che converte un modello addestrato a precisione completa in un formato a precisione inferiore (come INT8) per ridurre le dimensioni del modello e accelerare l'inferenza. Questo metodo è semplice, ma a volte può portare a un notevole calo dell'accuratezza, soprattutto nel caso di modelli complessi. QAT, invece, prepara in modo proattivo il modello per la quantizzazione durante l'addestramento, attenuando così la perdita di precisione e ottenendo spesso prestazioni superiori in ambienti a bassa precisione.

QAT vs. Precisione mista

L'addestramento a precisione mista è un'altra tecnica di ottimizzazione che mira ad accelerare il processo di addestramento e a ridurre l'ingombro della memoria durante l'addestramento. Si tratta di utilizzare numeri in virgola mobile a 16 e 32 bit all'interno della rete. Mentre la precisione mista mira principalmente all'efficienza dell'addestramento, la QAT è progettata specificamente per migliorare le prestazioni dei modelli dopo la quantizzazione, concentrandosi sull'efficienza e sull'accuratezza dell'inferenza in scenari di implementazione a bassa precisione.

Applicazioni reali del QAT

L'addestramento consapevole della quantizzazione è essenziale per l'impiego di modelli di intelligenza artificiale in applicazioni reali in cui l'efficienza delle risorse è fondamentale. Ecco un paio di esempi:

Esempio 1: Edge AI nei dispositivi intelligenti

Nei dispositivi intelligenti come gli smartphone e i dispositivi IoT, le risorse e la potenza di calcolo sono limitate. Il QAT è ampiamente utilizzato per ottimizzare i modelli per le applicazioni di intelligenza artificiale, consentendo l'elaborazione in tempo reale direttamente sul dispositivo. Ad esempio, Ultralytics YOLO , un modello di rilevamento degli oggetti all'avanguardia, può essere ottimizzato con QAT per garantire un rilevamento efficiente degli oggetti in tempo reale in applicazioni come i sistemi di sicurezza domestici intelligenti o le telecamere dotate di AI. Riducendo le dimensioni del modello e le richieste di calcolo, QAT rende possibile l'esecuzione di attività di AI complesse su dispositivi con capacità di elaborazione limitate.

Esempio 2: Veicoli autonomi e robotica

I veicoli autonomi e la robotica richiedono sistemi di intelligenza artificiale in grado di prendere decisioni rapide in condizioni di latenza e potenza limitate. La QAT svolge un ruolo fondamentale nell'ottimizzazione dei modelli da impiegare nei sistemi embedded di queste applicazioni. Ad esempio, l'applicazione della QAT ai Ultralytics YOLOv8 può migliorare significativamente l'efficienza dei sistemi di rilevamento dei veicoli e di tracciamento dei pedoni, che sono fondamentali per prendere decisioni in tempo reale nella guida autonoma. Questa ottimizzazione garantisce che l'intelligenza artificiale possa operare efficacemente entro i limiti di potenza e di calcolo dell'hardware del veicolo.

Per scoprire come le soluzioni di Ultralytics vengono applicate in vari settori, visita il sito Ultralytics Solutions.

Leggi tutto