træningsbatch

En underopdeling af træningsdata, som anvendes i én frem- og tilbagepassage under træning af en neural netværksmodel.

Kort fortalt

Et træningsbatch er en lille gruppe af eksempler, som modellen ser på én gang for at justere sine vægte.

Kategori
teknik
Niveau
begynder
Udtale
ˈtrɛːnɪŋsˌbætʃ

Betydninger

1
  1. 1

    En delmængde af træningsdata, der behandles samlet i én iteration af modeltræning.

    • Modellen trænes med batches af størrelse 32 for at balancere hastighed og støj i gradienterne.
    • Valget af batchstørrelse påvirker både træningstiden og modelgeneralisation.

Hvornår bruges det

Træningsbatches bruges i mini-batch gradient descent, hvor modellen opdateres efter hvert batch i stedet for efter hvert enkelt eksempel (stokastisk gradient descent) eller hele datasættet (batch gradient descent). Batchstørrelsen er en hyperparameter, der påvirker træningshastighed og modelkonvergens.

Kodeeksempel

from torch.utils.data import DataLoader, TensorDataset

data = TensorDataset(inputs, labels)
loader = DataLoader(data, batch_size=32, shuffle=True)

for batch_inputs, batch_labels in loader:
    outputs = model(batch_inputs)
    loss = loss_fn(outputs, batch_labels)
    loss.backward()
    optimizer.step()

Eksempel på brug af batches i PyTorch: DataLoader opdeler datasættet i batches af størrelse 32.

Oprindelse

Begrebet stammer fra statistik og machine learning, hvor data opdeles i batches for effektiv beregning.

Afledte ord

2

Kilder

1
  • Deep Learning (Goodfellow et al., 2016)