Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Quantizzazione del modello

Ottimizza le prestazioni dell'IA con la quantizzazione del modello. Riduci le dimensioni, aumenta la velocità e migliora l'efficienza energetica per le implementazioni nel mondo reale.

La quantizzazione del modello è una tecnica di trasformazione apprendimento automatico, progettata per ridurre i costi costi computazionali e di memoria dell'esecuzione reti neurali. Convertendo i parametri del modello del modello, in particolare pesi e attivazioni, da numeri in virgola mobile ad alta precisione (di solito a 32 bit, noti come FP32) a formati a bassa precisione come gli interi a 8 bit (INT8), gli sviluppatori possono ridurre significativamente le dimensioni del file del modello. modello. Questo processo è essenziale per consentire efficiente dei modelli su hardware con risorse limitate, garantendo risorse limitate, assicurando che le sofisticate funzionalità di IA possano essere eseguite senza problemi su qualsiasi dispositivo, dagli smartphone ai sensori industriali. sensori industriali.

Come funziona la quantizzazione del modello

Il meccanismo centrale della quantizzazione prevede la mappatura di un'ampia gamma di valori continui in un insieme più piccolo di valori discreti. valori discreti. In un tipico modello di apprendimento profondo, i parametri sono memorizzati come numeri in virgola mobile a 32 bit per mantenere un'elevata precisione durante la fase di formazione. precisione durante la fase di addestramento. Tuttavia, durante inferenza - la fase in cui il modello fa previsioni - questo livello di precisione è spesso superfluo.

La quantizzazione comprime questi valori, riducendo la larghezza di banda della memoria necessaria per recuperare i pesi del modello e accelerando la matematica. pesi del modello e accelera le operazioni matematiche. operazioni matematiche. L'hardware moderno, comprese le CPU e gli acceleratori acceleratori specializzati come le GPU, spesso hanno set di istruzioni dedicate per l'aritmetica intera che sono più veloci e più efficienti dal punto di vista energetico rispetto alle loro controparti in virgola mobile. a virgola mobile. Questa ottimizzazione aiuta a minimizzare la latenza dell'inferenza, offrendo all'utente un'esperienza più più veloce nelle applicazioni in tempo reale.

Tipi di quantizzazione

Esistono due approcci principali all'applicazione di questa ottimizzazione, ognuno dei quali serve a diverse fasi del ciclo di vita dello sviluppo. ciclo di vita dello sviluppo:

  • Quantizzazione post-addestramento (PTQ): Questo metodo viene applicato dopo che il modello è stato completamente addestrato. Richiede un set di dati di calibrazione per richiede un set di dati di calibrazione per determinare la gamma dinamica delle attivazioni e dei pesi. Strumenti come TensorFlow Lite offrono un robusto supporto per il PTQ, rendendolo una scelta popolare per le ottimizzazioni rapide.
  • Formazione consapevole della quantizzazione (QAT): In questo approccio, il modello simula gli effetti della quantizzazione quantizzazione durante il processo di addestramento stesso. Introducendo nodi di quantizzazione "falsi", la rete impara ad adattarsi alla minore precisione. nodi di quantizzazione "falsi", la rete impara ad adattarsi alla minore precisione, ottenendo spesso una migliore conservazione dell'accuratezza rispetto al PTQ. Per saperne di più questa tecnica specifica sul nostro sito Formazione consapevole della quantizzazione (QAT) .

Applicazioni nel mondo reale

La quantizzazione è una pietra miliare dell'Edge AI, che consente di eseguire compiti complessi in di eseguire attività complesse localmente sui dispositivi senza affidarsi alla connettività cloud.

  1. Visione artificiale mobile: Le applicazioni per smartphone che offrono funzioni come la sfocatura dello sfondo in tempo reale o i filtri per i volti filtri per i volti si basano su modelli quantizzati. Ad esempio, l'esecuzione di un modello di rilevamento degli oggetti su un telefono richiede un'elevata efficienza per evitare il consumo della batteria e il surriscaldamento.
  2. IoT industriale e robotica: Nella robotica, le unità autonome spesso funzionano a batteria e utilizzano e utilizzano processori integrati come NVIDIA Jetson. I modelli quantizzati consentono a questi robot di elaborare i dati visivi per la navigazione e l'evitamento degli ostacoli con un ritardo minimo, il che è fondamentale per la sicurezza dei veicoli autonomi. nei veicoli autonomi.

Implementazione della quantizzazione con Ultralytics YOLO

Il framework Ultralytics semplifica il processo di esportazione dei modelli in formati facili da quantizzare. Il seguente esempio mostra come esportare un modello YOLO11 in TFLite con quantizzazione INT8 abilitata. Questo processo gestisce automaticamente la calibrazione utilizzando i dati specificati.

from ultralytics import YOLO

# Load the standard YOLO11 model
model = YOLO("yolo11n.pt")

# Export to TFLite format with INT8 quantization
# The 'data' argument provides calibration images
model.export(format="tflite", int8=True, data="coco8.yaml")

Quantizzazione vs. Altre tecniche di ottimizzazione

È utile distinguere la quantizzazione da altre strategie di ottimizzazione del modello, perché spesso vengono usate insieme, ma funzionano in modo diverso:

  • Quantizzazione vs. Pruning: Mentre la quantizzazione riduce la precisione dei pesi, la potatura del modello consiste nel rimuovere connessioni (pesi) non necessarie per creare una rete rada. La potatura modifica la struttura, mentre la quantizzazione cambia il tipo di dati.
  • Quantizzazione vs. Distillazione: La distillazione della conoscenza addestra un modello modello di studente per imitare un modello di insegnante più grande. La quantizzazione può essere applicata al modello dello studente per ridurne ulteriormente le dimensioni. ridurre ulteriormente le sue dimensioni.
  • Quantizzazione vs. precisione mista: La precisione mista è principalmente una tecnica di formazione che utilizza un mix di FP16 e FP32 per accelerare l'addestramento e ridurre l'uso della memoria sulle GPU, mentre la quantizzazione è tipicamente un'ottimizzazione dell'inferenza è tipicamente un'ottimizzazione in tempo di inferenza che utilizza numeri interi.

Sviluppi futuri

Man mano che gli acceleratori hardware diventano sempre più specializzati, l'importanza della quantizzazione continua a crescere. La futura Ultralytics come l'imminente YOLO26, mira a spingere ulteriormente l'efficienza progettando architetture l'efficienza progettando architetture robuste alla quantizzazione aggressiva, garantendo che visione computerizzata ad alte prestazioni ad alte prestazioni anche sui dispositivi più piccoli.

Per una più ampia compatibilità, i modelli quantizzati sono spesso distribuiti utilizzando standard interoperabili come ONNX o motori di inferenza ottimizzati ottimizzati come TensorRT e OpenVINO.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora