QAT
forkortelse for Quantization-Aware Training
En træningsteknik, hvor modellen lærer at kompensere for kvantiseringsfejl, så den efterfølgende kvantisering medfører minimal præcisionstab.
Kort fortalt
QAT (Quantization-Aware Training) er en metode, hvor man under træningen simulerer effekten af kvantisering, så modellen bliver robust over for den præcision, man senere reducerer den til.
- Kategori
- teknik
- Niveau
- øvet
- Udtale
- /kjuː eɪ tiː/
Betydninger
1- 1
En træningsmetode, der inkorporerer kvantiseringssimulering i forløbet, så modellen lærer at håndtere den reducerede numeriske præcision, der anvendes ved inferens.
- Ved at anvende QAT kunne vi reducere modelstørrelsen til en fjerdedel uden signifikant tab af nøjagtighed. — Intern rapport, 2024
- Sammenlignet med PTQ opnår QAT typisk højere nøjagtighed, især ved lave bitbredder som 4-bit kvantisering. — Forskning, 2023
Hvornår bruges det
QAT bruges typisk ved deployment af store sprogmodeller eller computervisionsmodeller på edge-enheder, hvor hukommelse og strøm er begrænset. Det giver ofte bedre resultater end post-training quantization (PTQ).
Kodeeksempel
import torch
import torch.ao.quantization as quant
model = MyModel()
model.qconfig = quant.get_default_qconfig('fbgemm')
model = quant.prepare_qat(model, inplace=True)
# training loop...
model = quant.convert(model, inplace=True)Sådan opsættes QAT i PyTorch med torch.ao.quantization. Først indstilles qconfig, så forberedes modellen til QAT, trænes, og til sidst konverteres til kvantiseret version.
Oprindelse
Forkortelse for engelsk Quantization-Aware Training.
Afledte ord
2Kilder
2- Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference
- Learned Step Size Quantization