Exécution d’une passe avant

Introduction au deep learning avec PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Qu’est-ce qu’une passe avant ?

$$

  • Les données d’entrée circulent à travers les couches
  • Calculs effectués à chaque couche
  • La couche finale génère des sorties

$$

  • Résultats produits sur la base des poids et des biais
  • Utilisé pour l’entraînement et la réalisation de prédictions

Représentation de la passe avant

Introduction au deep learning avec PyTorch

Qu’est-ce qu’une passe avant ?

$$

Sorties possibles :

  • Classification binaire
  • Classification multi-classes
  • Régressions

Représentation de la passe avant avec mise en évidence de la sortie finale

Introduction au deep learning avec PyTorch

Classification binaire : passe avant

Bloc de codage avec commentaires ajoutés

# Create binary classification model
model = nn.Sequential(
  nn.Linear(6, 4), # First linear layer
  nn.Linear(4, 1), # Second linear layer
  nn.Sigmoid() # Sigmoid activation function
)
Introduction au deep learning avec PyTorch

Classification binaire : passe avant

# Pass input data through model
output = model(input_data)
print(output)
tensor([[0.5188], [0.3761], [0.5015], [0.3718], [0.4663]], 
    grad_fn=<SigmoidBackward0>)
  • Sortie : cinq probabilités comprises entre 0 et 1, une pour chaque animal

  • Classification (seuil à 0,5) :

    • Classe = 1 (mammifère) pour des valeurs ≥ 0,5 (0.5188, 0.5015)
    • Classe = 0 (non mammifère) pour les valeurs < 0,5 (0.3761, 0.3718, 0.4633)
Introduction au deep learning avec PyTorch

Classification multi-classes : passe avant

  • Classe 1 : mammifère, classe 2 : oiseau, classe 3 : reptile
n_classes = 3


# Create multi-class classification model model = nn.Sequential( nn.Linear(6, 4), # First linear layer nn.Linear(4, n_classes), # Second linear layer
nn.Softmax(dim=-1) # Softmax activation )
# Pass input data through model output = model(input_data) print(output.shape)
torch.Size([5, 3])
Introduction au deep learning avec PyTorch

Classification multi-classes : passe avant

multiclass.jpg

  • La somme de chaque ligne est égale à un
  • Étiquette prédite = classe ayant la probabilité la plus élevée
  • Ligne 1 = classe 1 (mammifère), ligne 2 = classe 1 (mammifère), ligne 3 = classe 3 (reptile)
Introduction au deep learning avec PyTorch

Régression : passe avant

# Create regression model
model = nn.Sequential(
  nn.Linear(6, 4), # First linear layer
  nn.Linear(4, 1) # Second linear layer
)

# Pass input data through model
output = model(input_data)

# Return output
print(output)
tensor([[0.3818],
        [0.0712],
        [0.3376],
        [0.0231],
        [0.0757]], 
        grad_fn=<AddmmBackward0>)
Introduction au deep learning avec PyTorch

Passons à la pratique !

Introduction au deep learning avec PyTorch

Preparing Video For Download...