開始使用免費開始

RNN 訓練迴圈

是時候來訓練電力消耗預測模型了!

你將使用先前定義的 LSTM 網路,已經實例化並指派給 net,先前建立的 dataloader_train 也已就緒。此外,你也需要使用 torch.nn,已經匯入為 nn

在這個練習中,你只會訓練 3 個 epoch,用來確認訓練能如預期進行。開始吧!

本練習屬於課程

Intermediate Deep Learning with PyTorch

檢視課程

練習說明

  • 設定均方誤差(Mean Squared Error)損失,並指派給 criterion
  • seqs 重新塑形為(batch size、sequence length、num features),在本例為 (32, 96, 1),並將結果重新指派給 seqs
  • seqs 傳入模型以取得 outputs
  • 根據先前計算的量,計算損失並指派給 loss

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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()}")
編輯並執行程式碼