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
Istruzioni dell'esercizio
- Definisci il metodo
__init__includendoselfenum_classescome parametri. - Crea uno strato fully connected con dimensione di input
16*32*32e numero di classinum_classescome output. - Crea una funzione di attivazione
softmaxcondim=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 = ____(____)