Modèle à deux entrées
Avec les données prêtes, il est temps de construire l'architecture du modèle à deux entrées ! Pour ce faire, vous allez configurer une classe de modèle avec les méthodes suivantes :
.__init__(), où vous définirez des sous-réseaux en regroupant des couches; c'est ici que vous définissez les deux couches pour traiter les deux entrées, ainsi que le classificateur qui retourne un score de classification pour chaque classe.forward(), où vous ferez passer les deux entrées dans les sous-réseaux correspondants déjà définis, concaténerez les sorties, puis les transmettrez au classificateur.
torch.nn est déjà importé pour vous sous le nom nn. Allons-y !
Cette activité fait partie du cours
Apprentissage profond intermédiaire avec PyTorch
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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),
)