Architectuur voor model met twee outputs
In deze oefening bouw je een neuraal netwerk met meerdere outputs dat zowel het teken als het alfabet kan voorspellen.
Herinner je de algemene structuur: in de .__init__()-methode definieer je de lagen die je later in de forward-pass gebruikt. In de forward()-methode stuur je de invoerafbeelding eerst door een paar lagen om een embedding te krijgen. Die embedding voer je vervolgens in twee afzonderlijke classifier-lagen, één voor elke output.
torch.nn is al geïmporteerd onder de gebruikelijke alias, dus laten we een model bouwen!
Deze oefening maakt deel uit van de cursus
Gevorderde Deep Learning met PyTorch
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
class Net(nn.Module):
def __init__(self):
super().__init__()
self.image_layer = nn.Sequential(
nn.Conv2d(1, 16, kernel_size=3, padding=1),
nn.MaxPool2d(kernel_size=2),
nn.ELU(),
nn.Flatten(),
nn.Linear(16*32*32, 128)
)
# Define the two classifier layers
____ = ____
____ = ____