Bắt đầu ngayBắt đầu miễn phí

Vòng lặp huấn luyện RNN

Đến lúc huấn luyện mô hình dự báo điện năng tiêu thụ rồi!

Bạn sẽ dùng mạng LSTM đã định nghĩa trước đó, hiện đã được khởi tạo và gán vào net, cùng với dataloader_train bạn đã xây dựng. Bạn cũng sẽ cần dùng torch.nn (đã được import sẵn là nn).

Trong bài này, bạn sẽ huấn luyện mô hình chỉ trong ba epoch để đảm bảo quá trình huấn luyện diễn ra như kỳ vọng. Bắt đầu thôi!

Bài tập này là một phần của khóa học

Deep Learning nâng cao với PyTorch

Xem khóa học

Hướng dẫn bài tập

  • Thiết lập hàm mất mát Mean Squared Error và gán vào criterion.
  • Đổi hình dạng seqs thành (batch size, sequence length, num features), trong trường hợp này là (32, 96, 1), và gán lại kết quả cho seqs.
  • Truyền seqs vào mô hình để lấy outputs.
  • Dựa trên các giá trị đã tính trước đó, tính toán loss và gán vào loss.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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()}")
Chỉnh sửa và Chạy Mã