Modelprestaties verbeteren

Introductie tot Deep Learning met PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Stappen om performance te maximaliseren

$$

  • Kunnen we het probleem oplossen?

  • Stel een prestatiebaseline vast

$$

  • Verhoog de performance op de validatieset

$$ $$

  • Bereik de best mogelijke performance

Stap 1

Stap 2

Stap 3

Introductie tot Deep Learning met PyTorch

Stap 1: overfit de trainingsset

  • Pas de trainingloop aan om te overfitten op één datapunt

    features, labels = next(iter(dataloader))
    for i in range(1000):
      outputs = model(features)
      loss = criterion(outputs, labels)
      optimizer.zero_grad()
      loss.backward()
      optimizer.step()
    
    • Moet 1,0 accuracy en 0 loss halen
  • Schaal daarna op naar de volledige trainingsset

    • Houd standaardhyperparameters aan
Introductie tot Deep Learning met PyTorch

Stap 2: overfitting verminderen

  • Doel: maximaliseer de validatie-accuracy

  • Experimenteer met:

    • Dropout
    • Data-augmentatie
    • Weight decay
    • Modelcapaciteit verlagen

$$

  • Houd elke hyperparameter en validatie-accuracy bij

overfitting

Introductie tot Deep Learning met PyTorch

Stap 2: overfitting verminderen

$$

Oorspronkelijk model overfit op trainingsdata oorspronkelijke prestaties

$$

Bijgewerkt model met te veel regularisatie te veel regularisatie

Introductie tot Deep Learning met PyTorch

Stap 3: hyperparameters finetunen

  • Grid search
for factor in range(2, 6):
    lr = 10 ** -factor

grid search

  • Random search
factor = np.random.uniform(2, 6)
lr = 10 ** -factor

random search

Introductie tot Deep Learning met PyTorch

Laten we oefenen!

Introductie tot Deep Learning met PyTorch

Preparing Video For Download...