Quantizzazione di un modello PNL umoristico DistilBERT
La quantizzazione è una tecnica di compressione del modello che aiuta a ridurre il tempo di inferenza. La quantizzazione dal tipo a virgola mobile a 32 bit (FP32) al tipo intero a 8 bit (INT8) migliora le prestazioni con solo un leggero calo della precisione. In generale, la dimensione del modello può ridursi di 4-5 volte e il tempo di inferenza può essere ridotto di oltre 3 volte ( fonte ).
Dobbiamo prima importare alcune altre librerie per la quantizzazione, incluse neural_compressore optimum.intel:
Sto impostando il torchdispositivo su cpu:
Possiamo ora applicare la quantizzazione. Dai un'occhiata agli esempi di classificazione del testo nel optimum.intel repository GitHub per saperne di più. Carichiamo un modello precedentemente addestrato:
Ho impostato il trainer per utilizzare la IncTrainero la classe Intel® Neural Compressor Trainer:
Ora è tutto pronto per eseguire la quantizzazione. Nota che sto usando un file di configurazione chiamato quantization.yml scaricato dal repository optimum.intel GitHub . È possibile modificare i parametri di configurazione in questo file per regolare la modalità di quantizzazione del modello. Qui sto applicando la quantizzazione dinamica post-addestramento, una tecnica che non richiede riaddestramento, ma di solito sacrifica un po' di precisione:
Possiamo quindi andare avanti ed eseguire la quantizzazione con optimizer.fit():
Ora che abbiamo un modello ottimizzato, possiamo confrontarlo con il modello di base:
Possiamo salvare il modello quantizzato su disco e avere a disposizione sia il modello FP32 che il nuovo modello INT8 quantizzato:
Eseguendo la valutazione con il modello FP32, otteniamo:
E per INT8:
La precisione è più o meno la stessa, ma il modello INT8 è 1,5 volte più veloce del modello FP32. Il codice completo può essere trovato su GitHub qui .
Puoi installare Intel Neural Compressor in modalità autonoma o come parte di Intel AI Analytics Toolkit . Per saperne di più sulle soluzioni hardware e software AI di Intel, visita qui .

![Che cos'è un elenco collegato, comunque? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































