CommencezCommencez gratuitement

Modèle de classification binaire

En tant que spécialiste du deep learning, l'une de vos principales tâches consiste à entraîner des modèles de classification d'images. Vous rencontrez souvent des problèmes de classification binaire, où il faut distinguer deux classes. Pour optimiser votre flux de travail et favoriser la réutilisation, vous avez décidé de créer un gabarit de modèle CNN pour la classification binaire d'images, réutilisable dans vos projets futurs.

Les modules torch et torch.nn sous le nom nn ont été importés. Toutes les images ont une taille de 64x64 pixels.

Cette activité fait partie du cours

Deep Learning pour les images avec PyTorch

Voir le cours

Instructions de l’exercice

  • Créez une couche de convolution avec 3 canaux d'entrée, 16 canaux de sortie, une taille de noyau de 3, un pas (stride) de 1 et un remplissage (padding) de 1.
  • Créez une couche entièrement connectée avec une taille d'entrée de 16x32x32 et un nombre de classes égal à 1; incluez seulement les valeurs dans l'ordre fourni (16*32*32, 1).
  • Créez une fonction d'activation sigmoid.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

class BinaryImageClassifier(nn.Module):
    def __init__(self):
        super(BinaryImageClassifier, self).__init__()
        
        # Create a convolutional layer
        self.conv1 = ____(____)
        self.relu = nn.ReLU()
        self.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)
        self.flatten = nn.Flatten()
        
        # Create a fully connected layer
        self.fc = ____(____)
        
        # Create an activation function
        self.sigmoid = ____
Modifier et exécuter le code