Post-training quantization
Post-training quantization er en teknik, hvor vægte og aktiveringer i en allerede trænet model konverteres til en lavere præcision (fx 8-bit heltal) for at reducere modelstørrelse og øge inferenshastighed uden yderligere træning.
Kort fortalt
Efter modellen er trænet, gøres tal i modellen mindre præcise for at gøre den hurtigere og mindre i hukommelsen.
- Kategori
- teknik
- Niveau
- øvet
Betydninger
1- 1
Kvantisering af en allerede trænet models vægte og/eller aktiveringer til en lavere numerisk præcision, typisk 8-bit heltal, for at reducere modelstørrelse og accelerere inferens.
- Vi anvendte post-training quantization for at reducere modellens størrelse fra 500 MB til 125 MB.
- Post-training quantization kan føre til et lille præcisionstab, men forbedrer inferenshastigheden markant.
Hvornår bruges det
Bruges typisk når en model skal deployes på edge-enheder eller i miljøer med begrænset hukommelse og beregningskraft. Det er en populær teknik fordi den ikke kræver gen-træning, men kan medføre et mindre kvalitetstab.
Kodeeksempel
converter = tf.lite.TFLiteConverter.from_saved_model(model_path)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_quant_model = converter.convert()Eksempel på post-training quantization med TensorFlow Lite. Modellen konverteres til kvantiseret TFLite-format.
Oprindelse
Termen stammer fra behovet for at optimere neurale netværk til inferens efter træning, hvor 'post-training' angiver at processen sker efter træning, og 'quantization' henviser til kvantisering (diskretisering) af kontinuerte værdier.