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
<Kurs>Deep Learning für Bilder mit PyTorch</Kurs>Übungsanweisungen
- 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 praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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