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

3

Kilder

1
  • Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman Coding (Song Han et al., 2016)