Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Évaluation du Modèle | Réseaux Neuronaux dans PyTorch
Essentiels de Pytorch
course content

Contenu du cours

Essentiels de Pytorch

Essentiels de Pytorch

1. Introduction à PyTorch
2. Concepts Plus Avancés
3. Réseaux Neuronaux dans PyTorch

book
Évaluation du Modèle

Préparation pour l'évaluation

Avant de commencer le processus d'évaluation sur le jeu de test, vous devez vous assurer des points suivants :

  1. Mettre le modèle en mode évaluation : utilisez model.eval() pour désactiver des fonctionnalités comme le dropout et la normalisation par lot, assurant un comportement cohérent pendant l'évaluation ;

  2. Désactiver le suivi des gradients : utilisez torch.no_grad() pour économiser de la mémoire et accélérer les calculs, car les gradients ne sont pas nécessaires pendant l'évaluation.

Conversion des Prédictions

Comme nous l'avons déjà mentionné précédemment, la sortie du modèle sera des logits (scores bruts). Pour obtenir les étiquettes de classe prédites, nous utilisons torch.argmax pour extraire l'indice de la valeur maximale le long de la dimension de classe.

Calcul des Métriques

Pour les problèmes de classification, l'exactitude est une métrique de départ utile, à condition que le jeu de données soit équilibré.

Pour obtenir des informations plus approfondies sur les performances du modèle, vous pouvez calculer des métriques supplémentaires telles que la précision, le rappel et le score F1. Vous pouvez en savoir plus sur ces métriques et leurs formules dans cet article, en utilisant leurs formules respectives.

Implémentation complète

123456789101112131415161718
import torch import os os.system('wget https://staging-content-media-cdn.codefinity.com/courses/1dd2b0f6-6ec0-40e6-a570-ed0ac2209666/section_3/model_training.py 2>/dev/null') from model_training import model, X_test, y_test # Set model to evaluation mode model.eval() # Disable gradient tracking with torch.no_grad(): # Forward pass test_predictions = model(X_test) # Get predicted classes predicted_labels = torch.argmax(test_predictions, dim=1) # Calculate accuracy correct_predictions = (predicted_labels == y_test).sum().item() accuracy = correct_predictions / len(y_test) * 100 print(f"Test accuracy: {accuracy:.2f}%")
copy
Laquelle des étapes suivantes est nécessaire lors de l'évaluation d'un modèle PyTorch entraîné ?

Laquelle des étapes suivantes est nécessaire lors de l'évaluation d'un modèle PyTorch entraîné ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 3
We're sorry to hear that something went wrong. What happened?
some-alt