Aan de slagGa gratis aan de slag

Model met twee invoeren

Nu de data klaar is, is het tijd om de architectuur met twee invoeren te bouwen! Je maakt hiervoor een modelklasse met de volgende methoden:

  • .__init__(), waarin je subnetwerken definieert door lagen te groeperen; hier definieer je de twee lagen voor het verwerken van de twee inputbronnen en de classifier die een classificatiescore voor elke klasse teruggeeft.

  • forward(), waarin je beide inputs door de bijbehorende vooraf gedefinieerde subnetwerken stuurt, de outputs concateneert en deze door de classifier geeft.

torch.nn is al voor je geïmporteerd als nn. Aan de slag!

Deze oefening maakt deel uit van de cursus

Gevorderde Deep Learning met PyTorch

Cursus bekijken

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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), 
        )
Code bewerken en uitvoeren