Améliorer les performances du modèle

Introduction au deep learning avec PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Étapes à suivre pour maximiser les performances

$$

  • Pouvons-nous résoudre le problème ?

  • Fixer un niveau de performance de référence

$$

  • Améliorer les performances sur l’ensemble de validation

$$ $$

  • Atteindre les meilleures performances possibles

Étape 1

Étape 2

Étape 3

Introduction au deep learning avec PyTorch

Étape 1 : surajustement de l’ensemble d’entraînement

  • Modifier la boucle d’entraînement pour surajuster un seul point de données

    features, labels = next(iter(dataloader))
    for i in range(1000):
      outputs = model(features)
      loss = criterion(outputs, labels)
      optimizer.zero_grad()
      loss.backward()
      optimizer.step()
    
    • La précision devrait être de 1,0 et la perte de 0
  • Passez ensuite à l’ensemble complet d’entraînement

    • Conserver les hyperparamètres par défaut
Introduction au deep learning avec PyTorch

Étape 2 : réduction du surajustement

  • Objectif : maximiser la précision de la validation

  • Expérimentez avec :

    • Dropout
    • Augmentation des données
    • Décroissance des poids
    • Réduction de la capacité du modèle

$$

  • Suivez chaque hyperparamètre et la précision de validation

surajustement

Introduction au deep learning avec PyTorch

Étape 2 : réduction du surajustement

$$

Le modèle original surajuste les données d’entraînement performances initiales

$$

Modèle actualisé avec une régularisation excessive régularisation excessive

Introduction au deep learning avec PyTorch

Étape 3 : affiner les hyperparamètres

  • Recherche par grille
for factor in range(2, 6):
    lr = 10 ** -factor

recherche par grille

  • Recherche aléatoire
factor = np.random.uniform(2, 6)
lr = 10 ** -factor

recherche aléatoire

Introduction au deep learning avec PyTorch

Passons à la pratique !

Introduction au deep learning avec PyTorch

Preparing Video For Download...