Einen Sequential-Block erstellen
Du hast dich entschieden, deine binäre CNN-Modellvorlage neu zu gestalten, indem du einen Block aus Convolutional-Layern erstellst. So kannst du mehrere Layer nacheinander stapeln. Mit diesem verbesserten Modell kannst du ganz einfach verschiedene CNN-Architekturen entwerfen.
torch und torch.nn als nn wurden importiert.
Diese Übung ist Teil des Kurses
Deep Learning für Bilder mit PyTorch
Anleitung zur Übung
- Definiere in der Methode
__init__()einen Block aus Convolutional-Layern und weise ihnself.conv_blockzu. - Leite im
forward()-Durchlauf die Eingaben durch den von dir definierten Convolutional-Block.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
class BinaryImageClassification(nn.Module):
def __init__(self):
super(BinaryImageClassification, self).__init__()
# Create a convolutional block
self.conv_block = ____(
nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1),
nn.ReLU(),
nn.Conv2d(16, 32, kernel_size=3, stride=1, padding=1),
nn.ReLU(),
)
def forward(self, x):
# Pass inputs through the convolutional block
x = ____
return x