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
Anleitung zur Übung
- Definiere die Methode
__init__mit den Parameternselfundnum_classes. - Erstelle eine voll verbundene Schicht mit Eingabegröße
16*32*32undnum_classesals Anzahl der Ausgabeklassen. - Erzeuge eine Aktivierungsfunktion
softmaxmitdim=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 = ____(____)