Ciclo de treinamento de RNN
É hora de treinar o modelo de previsão de consumo de eletricidade!
Você usará a rede LSTM que definiu anteriormente, que foi instanciada e atribuída a net
, assim como o dataloader_train
que você criou anteriormente. Você também precisará usar o torch.nn
, que já foi importado como nn
.
Neste exercício, você treinará o modelo por apenas três épocas para garantir que o treinamento progrida conforme o esperado. Vamos lá!
Este exercício faz parte do curso
Aprendizagem profunda intermediária com PyTorch
Instruções do exercício
- Configure a perda de erro quadrático médio e atribua-o a
criterion
. - Remodele
seqs
para(batch size, sequence length, num features)
, que no nosso caso é(32, 96, 1)
, e reatribua o resultado paraseqs
. - Passe
seqs
para o modelo para obter seuoutputs
. - Com base nas quantidades computadas anteriormente, calcule a perda, atribuindo-a a
loss
.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
net = Net()
# Set up MSE loss
criterion = ____
optimizer = optim.Adam(
net.parameters(), lr=0.0001
)
for epoch in range(3):
for seqs, labels in dataloader_train:
# Reshape model inputs
seqs = ____
# Get model outputs
outputs = ____
# Compute loss
loss = ____
optimizer.zero_grad()
loss.backward()
optimizer.step()
print(f"Epoch {epoch+1}, Loss: {loss.item()}")