CommencezCommencez gratuitement

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

Voir le cours

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), 
        )
Modifier et exécuter le code