LoslegenKostenlos loslegen

Mehrklassen-Klassifikationsmodell

Auf Basis der Vorlage für ein binäres Klassifikationsmodell kannst du nun ein Mehrklassen-Klassifikationsmodell entwickeln. Das Modell soll über einen Parameter unterschiedliche Anzahlen von Klassen verarbeiten, sodass du es künftig an eine konkrete Mehrklassen-Aufgabe anpassen kannst.

Die Pakete torch und torch.nn als nn wurden importiert. Alle Bildgrößen sind 64x64 Pixel.

Diese Übung ist Teil des Kurses

Deep Learning für Bilder mit PyTorch

Kurs anzeigen

Anleitung zur Übung

  • Definiere die Methode __init__ mit den Parametern self und num_classes.
  • Erstelle eine voll verbundene Schicht mit Eingabegröße 16*32*32 und num_classes als Anzahl der Ausgabeklassen.
  • Erzeuge eine Aktivierungsfunktion softmax mit dim=1.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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 = ____(____)
Code bearbeiten und ausführen