Batch inference

Batch inference er processen med at udføre modelinferens på en gruppe af input samples på én gang for at udnytte hardwareparallelisme og øge gennemløb.

Kort fortalt

I stedet for at behandle én anmodning ad gangen, samler man mange anmodninger og behandler dem samlet for at spare tid og ressourcer.

Kategori
teknik
Niveau
begynder

Betydninger

1
  1. 1

    Udførelse af modelinferens på en samling af inputdata på én gang, ofte for at optimere hardwareudnyttelse og gennemløb.

    • Vi bruger batch inference til at klassificere alle billeder i databasen natligt.
    • Batch inference reducerer overhead ved at mindske antallet af API-kald.

Hvornår bruges det

Batch inference bruges typisk i offline-scenarier, hvor latency ikke er kritisk, fx ved daglig scoring af store datasæt, i datapipelines eller ved massegenerering af embeddings. Det reducerer overhead fra modelinitialisering og dataoverførsel.

Kodeeksempel

import torch
import torch.nn as nn

model = nn.Linear(10, 2)  # eksempelmodel
batch_input = torch.randn(32, 10)  # 32 samples
with torch.no_grad():
    batch_output = model(batch_input)
print(batch_output.shape)  # (32, 2)

Eksempel på batch inference i PyTorch med en lineær model, der behandler 32 input samples på én gang.

Oprindelse

Fra engelsk 'batch' (gruppe) og 'inference' (slutning, inferens).

Afledte ord

2

Kilder

2