Modell mit zwei Inputs
Jetzt, wo die Daten bereit sind, ist es Zeit, die Modellarchitektur mit zwei Inputs zu erstellen! Dafür wirst du eine Modellklasse mit den folgenden Methoden erstellen:
.__init__()
, in der du Teilnetze durch Gruppierung von Schichten definierst; hier definierst du die zwei Schichten zur Verarbeitung der beiden Inputs und den Klassifikator, der für jede Klasse einen Klassifizierungswert zurückgibt.forward()
, in der du beide Inputs durch die entsprechenden vordefinierten Teilnetze leitest, die Outputs verkettest und sie an den Klassifikator weitergibst.
torch.nn
ist bereits für dich als nn
importiert. Los geht’s!
Diese Übung ist Teil des Kurses
Deep Learning mit PyTorch für Fortgeschrittene
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
class Net(nn.Module):
def __init__(self):
super().__init__()
# Define sub-networks as sequential models
____ = ____(
nn.Conv2d(1, 16, kernel_size=3, padding=1),
nn.MaxPool2d(kernel_size=2),
nn.ELU(),
nn.Flatten(),
nn.Linear(16*32*32, 128)
)
____ = ____(
nn.Linear(30, 8),
nn.ELU(),
)
____ = ____(
nn.Linear(128 + 8, 964),
)