Modelo de duas entradas
Com os dados prontos, é hora de criar a arquitetura do modelo de duas entradas! Para isso, você configurará uma classe de modelo com os seguintes métodos:
.__init__()
, em que você definirá sub-redes agrupando camadas; é aqui que você define as duas camadas para processar as duas entradas e o classificador que retorna uma pontuação de classificação para cada classe.forward()
, no qual você passará ambas as entradas por sub-redes predefinidas correspondentes, concatenará as saídas e as passará para o classificador.
torch.nn
já está importado para você como nn
. Vamos lá!
Este exercício faz parte do curso
Aprendizagem profunda intermediária com PyTorch
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
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),
)