Binäres Klassifikationsmodell
Als Deep-Learning-Anwender:in gehört das Training von Modellen für die Bildklassifikation zu deinen Hauptaufgaben. Häufig triffst du auf binäre Klassifikation, bei der zwischen zwei Klassen unterschieden wird. Um deinen Workflow zu vereinfachen und Wiederverwendbarkeit sicherzustellen, möchtest du eine Vorlage für ein CNN-Modell zur binären Bildklassifikation erstellen, die du in zukünftigen Projekten verwenden kannst.
Das Paket torch und torch.nn als nn wurden importiert. Alle Bildgrößen sind 64×64 Pixel.
Diese Übung ist Teil des Kurses
<Kurs>Deep Learning für Bilder mit PyTorch</Kurs>Übungsanweisungen
- Erstelle eine Convolution-Schicht mit 3 Kanälen, 16 Ausgabekanälen, Kernel-Größe 3, Stride 1 und Padding 1.
- Erstelle eine Fully-Connected-Schicht mit einer Eingangsgröße von 16x32x32 und einer Klassenanzahl von 1; verwende nur die Werte in der angegebenen Reihenfolge
(16*32*32, 1). - Erstelle eine
sigmoid-Aktivierungsfunktion.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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 = ____