Glossario

Formazione consapevole della quantizzazione (QAT)

Ottimizzate 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.

Il Quantization-Aware Training (QAT) è una tecnica avanzata di ottimizzazione del modello che prepara una rete neurale (NN) per l'impiego con una precisione numerica inferiore. A differenza dell'addestramento standard che utilizza numeri in virgola mobile a 32 bit (FP32), QAT simula gli effetti delle computazioni di numeri interi a 8 bit (INT8) durante il processo di addestramento o di messa a punto. Rendendo il modello "consapevole" degli errori di quantizzazione che incontrerà durante l'inferenza, QAT permette al modello di regolare i suoi pesi per minimizzare la potenziale perdita di precisione. Il risultato è un modello compatto ed efficiente che mantiene prestazioni elevate e che è ideale per l'impiego su hardware con risorse limitate.

Come funziona la formazione con quantizzazione

Il processo QAT inizia tipicamente con un modello FP32 pre-addestrato. Nell'architettura del modello vengono inseriti dei "falsi" nodi di quantizzazione, che simulano l'effetto della conversione dei valori in virgola mobile in interi a bassa precisione e viceversa. Il modello viene quindi riqualificato su un set di dati di addestramento. Durante questa fase di riqualificazione, il modello impara ad adattarsi alla perdita di informazioni associata alla quantizzazione attraverso la retropropagazione standard. Ciò consente al modello di trovare un insieme di pesi più robusto, meno sensibile alla riduzione della precisione. I principali framework di deep learning, come PyTorch e TensorFlow, offrono strumenti e API robusti per implementare i flussi di lavoro QAT.

QAT vs. Quantizzazione post-training

Il QAT viene spesso paragonato alla Quantizzazione post-addestramento (PTQ), un altro metodo comune di quantizzazione del modello. La differenza fondamentale sta nel momento in cui viene applicata la quantizzazione.

  • Quantizzazione post-addestramento (PTQ): Questo metodo viene applicato dopo che il modello è stato completamente addestrato. È un processo più semplice e veloce che non richiede una riqualificazione o l'accesso ai dati di addestramento originali. Tuttavia, a volte può portare a un calo significativo dell'accuratezza del modello, soprattutto per i modelli sensibili.
  • Formazione consapevole della quantizzazione (QAT): Questo metodo integra la quantizzazione nel ciclo di addestramento. Sebbene sia più intensivo dal punto di vista computazionale e richieda l'accesso ai dati di addestramento, il QAT produce quasi sempre un'accuratezza maggiore per il modello quantizzato finale rispetto al PTQ. È il metodo preferito quando la massimizzazione delle prestazioni è fondamentale.

Applicazioni reali del QAT

L'addestramento consapevole della quantizzazione è fondamentale per l'implementazione di modelli di intelligenza artificiale sofisticati in ambienti con risorse limitate, dove l'efficienza è fondamentale.

  1. Computer Vision su dispositivo: Esecuzione di modelli di computer vision complessi come Ultralytics YOLOv8 direttamente sugli smartphone per applicazioni come il rilevamento di oggetti in tempo reale nelle app di realtà aumentata o la classificazione delle immagini negli strumenti di gestione delle foto. QAT consente di eseguire questi modelli in modo efficiente, senza scaricare la batteria o la latenza.
  2. L'intelligenza artificiale nel settore automobilistico e nella robotica: Distribuzione di modelli per attività come il rilevamento di pedoni o l'assistenza al mantenimento della corsia nei veicoli autonomi o per la manipolazione di oggetti nella robotica. QAT consente a questi modelli di essere eseguiti su hardware specializzato come le TPU di Google Edge o NVIDIA Jetson, garantendo una bassa latenza di inferenza per le decisioni critiche in tempo reale. Questo è fondamentale per applicazioni come i sistemi di allarme di sicurezza o la gestione dei parcheggi.

Rapporto con altre tecniche di ottimizzazione

La QAT è una delle varie tecniche per l'ottimizzazione della distribuzione dei modelli e viene spesso utilizzata insieme ad altre per ottenere la massima efficienza.

  • Model Pruning: Consiste nel rimuovere dalla rete le connessioni ridondanti o non importanti. Un modello può essere prima sfrondato e poi sottoposto a QAT per ottenere una compressione ancora maggiore.
  • Distillazione della conoscenza: Addestra un modello "studente" più piccolo a imitare un modello "insegnante" più grande. Il modello studente risultante può essere ulteriormente ottimizzato con QAT.

Ultralytics supporta l'esportazione di modelli in vari formati come ONNX, TensorRT e TFLite, che sono compatibili con i flussi di lavoro QAT e consentono una distribuzione efficiente su diversi hardware di aziende come Intel e NVIDIA. È possibile gestire e distribuire i modelli ottimizzati per QAT utilizzando piattaforme come Ultralytics HUB. La valutazione delle prestazioni del modello mediante metriche pertinenti dopo QAT è essenziale per garantire il rispetto dei requisiti di accuratezza.

Unitevi alla comunità di Ultralytics

Entrate a far parte del futuro dell'IA. Connettetevi, collaborate e crescete con gli innovatori globali.

Iscriviti ora
Link copiato negli appunti