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