LoslegenKostenlos starten

RNN-Trainingsschleife

Es ist Zeit, das Stromverbrauchsvorhersagemodell zu trainieren!

Du wirst das LSTM-Netz verwenden, das du zuvor definiert hast. Es wurde initialisiert und net zugewiesen, genau wie dataloader_train, das du zuvor erstellt hast. Du wirst außerdem torch.nn benötigen, das bereits als nn importiert wurde.

In dieser Aufgabe wirst du das Modell nur für drei Epochen trainieren, um sicherzustellen, dass das Training wie erwartet verläuft. Los geht’s!

Diese Übung ist Teil des Kurses

<Kurs>Deep Learning mit PyTorch für Fortgeschrittene</Kurs>
Kurs ansehen

Übungsanweisungen

  • Richte den Mean-Squared-Error-Verlust ein und weise ihn criterion zu.
  • Forme seqs zu (batch size, sequence length, num features) um, was in unserem Fall (32, 96, 1) ist, und weise das Ergebnis seqs zu.
  • Übergib seqs an das Modell, um seine outputs zu erhalten.
  • Berechne den Verlust basierend auf den zuvor berechneten Werten und weise ihn loss zu.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

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()}")
Code bearbeiten und ausführen