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. 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

2

Kilder

2
  • Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference
  • Learned Step Size Quantization