model compression
Samling af teknikker, der reducerer størrelsen og beregningsbehovet for en AI-model, samtidig med at præstationen bevares så godt som muligt.
Kort fortalt
Teknikker til at gøre AI-modeller mindre og hurtigere, så de kan køre på fx en mobiltelefon, uden at miste for meget nøjagtighed.
- Kategori
- teknik
- Niveau
- øvet
Betydninger
2- 1
Overordnet begreb om at reducere størrelsen og/eller beregningsomkostningerne af en AI-model, typisk ved teknikker som pruning, kvantisering og knowledge distillation.
- Modelkomprimering er essentiel for at køre state-of-the-art neurale netværk på mobile enheder.
- Forskning i modelkomprimering har muliggjort effektiv inferens på edge-enheder.
- 2
Konkret proces eller anvendelse af en eller flere komprimeringsteknikker på en given model.
- Ved at anvende kvantisering og pruning opnåede vi en 4x komprimering af modellen uden signifikant tab af nøjagtighed.
Hvornår bruges det
Modelkomprimering bruges typisk ved implementering af store neurale netværk på enheder med begrænsede ressourcer, såsom smartphones eller indlejrede systemer. Det er også relevant for at reducere latency og energiforbrug i cloud-miljøer.
Kodeeksempel
import torch
import torch.quantization
model = MyModel()
model.qconfig = torch.quantization.default_qconfig
model_prepared = torch.quantization.prepare(model)
# Calibrate with representative data
model_prepared.eval()
with torch.no_grad():
for data in calib_loader:
model_prepared(data)
model_quantized = torch.quantization.convert(model_prepared)Eksempel på post-training kvantisering i PyTorch. Modellen forberedes, kalibreres med data og konverteres til en kvantiseret version.
Oprindelse
Sammensat af 'model' (en AI-model) og 'kompression' (gøre mindre).
Afledte ord
3Kilder
1- Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman Coding (Song Han et al., 2016)