IniziaInizia gratis

Modello di classificazione multi-classe

Partendo dal modello di riferimento per la classificazione binaria, ora puoi estenderlo per progettare un modello di classificazione multi-classe. Il modello deve gestire un numero variabile di classi tramite un parametro, così potrai adattarlo a uno specifico task di classificazione multi-classe in futuro.

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

Visualizza il corso

Istruzioni dell'esercizio

  • Definisci il metodo __init__ includendo self e num_classes come parametri.
  • Crea uno strato fully connected con dimensione di input 16*32*32 e numero di classi num_classes come output.
  • Crea una funzione di attivazione softmax con dim=1.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

class MultiClassImageClassifier(nn.Module):
  
    # Define the init method
    def ____(____, ____):
        super(MultiClassImageClassifier, self).__init__()
        self.conv1 = nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1)
        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.softmax = ____(____)
Modifica ed esegui il codice