Quantisierung eines DistilBERT Humor NLP-Modells
Die Quantisierung ist eine Modellkomprimierungstechnik, die hilft, die Inferenzzeit zu reduzieren. Die Quantisierung vom 32-Bit-Gleitkommatyp (FP32) zum 8-Bit-Integertyp (INT8) verbessert die Leistung bei nur geringfügigem Genauigkeitsverlust. Im Allgemeinen kann die Modellgröße um das 4–5-fache schrumpfen und die Inferenzzeit um mehr als das 3-fache reduziert werden ( Quelle ).
Wir müssen zuerst ein paar weitere Bibliotheken für die Quantisierung importieren, einschließlich neural_compressorund optimum.intel:
Ich stelle das torchGerät auf cpu:
Wir können jetzt die Quantisierung anwenden. Werfen Sie einen Blick auf die Textklassifizierungsbeispiele im optimum.intel GitHub-Repository , um mehr zu erfahren. Lassen Sie uns ein zuvor trainiertes Modell laden:
Ich habe den Trainer so eingerichtet, dass er die IncTraineroder die Intel® Neural Compressor Trainer-Klasse verwendet:
Alles ist jetzt bereit, um die Quantisierung auszuführen. Beachten Sie, dass ich eine Konfigurationsdatei namens aus dem GitHub - Repository quantization.yml heruntergeladen verwende. Sie können die Konfigurationsparameter in dieser Datei ändern, um anzupassen, wie das Modell quantisiert wird. Hier wende ich die dynamische Quantisierung nach dem Training an, eine Technik, die kein erneutes Training erfordert, aber normalerweise ein wenig Genauigkeit opfert:optimum.intel
Wir können dann fortfahren und die Quantisierung mit ausführen optimizer.fit():
Da wir nun ein optimiertes Modell haben, können wir es mit dem Basismodell vergleichen:
Wir können das quantisierte Modell auf der Festplatte speichern und haben sowohl das FP32- als auch das neu quantisierte INT8-Modell zur Verfügung:
Wenn wir die Auswertung mit dem FP32-Modell ausführen, erhalten wir:
Und für INT8:
Die Genauigkeit ist ungefähr gleich, aber das INT8-Modell ist 1,5-mal schneller als das FP32-Modell. Den vollständigen Code finden Sie hier auf GitHub .
Sie können Intel Neural Compressor eigenständig oder als Teil des Intel AI Analytics Toolkit installieren . Um mehr über die KI-Hardware- und -Softwarelösungen von Intel zu erfahren, besuchen Sie hier .

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































