Modello di classificazione binaria
Come professionista del deep learning, uno dei tuoi compiti principali è addestrare modelli per la classificazione di immagini. Ti capita spesso la classificazione binaria, in cui devi distinguere tra due classi. Per rendere il tuo flusso di lavoro più snello e garantire riutilizzabilità, hai deciso di creare un modello base (template) per una CNN di classificazione binaria di immagini, da applicare ai progetti futuri.
I pacchetti torch e torch.nn come nn sono già stati importati. Tutte le immagini hanno dimensioni 64x64 pixel.
Questo esercizio fa parte del corso
Deep Learning per Immagini con PyTorch
Istruzioni dell'esercizio
- Crea un livello convoluzionale con 3 canali in input, 16 canali in output, kernel size 3, stride 1 e padding 1.
- Crea un livello completamente connesso con dimensione di input 16x32x32 e numero di classi pari a 1; includi solo i valori nell'ordine fornito
(16*32*32, 1). - Crea una funzione di attivazione
sigmoid.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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 = ____