Modèle de classification binaire
En tant que praticien du deep learning, l'une de vos principales tâches consiste à former des modèles pour la classification d'images. Vous rencontrez souvent la classification binaire, où vous devez distinguer deux classes. Afin de rationaliser votre flux de travail et de garantir la réutilisabilité, vous avez décidé de créer un modèle pour un modèle CNN de classification d'images binaires, qui pourra être appliqué à de futurs projets.
Les paquets torch
et torch.nn
ont été importés en tant que nn
. Toutes les images ont une taille de 64 x 64 pixels.
Cet exercice fait partie du cours
Deep learning pour les images avec PyTorch
Instructions
- Créez une couche convolutive avec 3 canaux, 16 canaux de sortie, une taille de noyau de 3, un pas de 1 et un remplissage 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 uniquement les valeurs dans l'ordre fourni :
(16*32*32, 1)
. - Veuillez créer une fonction d'activation d'
sigmoid
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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 = ____