Bucle de entrenamiento de RNN
¡Es hora de entrenar el modelo de previsión del consumo eléctrico!
Utilizarás la red LSTM que has definido anteriormente, que se ha instanciado y asignado a net, al igual que la dataloader_train que construiste antes. También tendrás que utilizar torch.nn que ya se ha importado como nn.
En este ejercicio, entrenarás el modelo solo durante tres épocas para asegurarte de que el entrenamiento progresa como se espera. ¡Manos a la obra!
Este ejercicio forma parte del curso
Aprendizaje profundo intermedio con PyTorch
Instrucciones del ejercicio
- Configura la pérdida del error promedio al cuadrado y asígnala a
criterion. - Reasigna
seqsa(batch size, sequence length, num features), que en nuestro caso es(32, 96, 1), y reasigna el resultado aseqs. - Pasa
seqsal modelo para obtener suoutputs. - A partir de las cantidades calculadas anteriormente, calcula la pérdida y asígnala a
loss.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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()}")