Vòng lặp huấn luyện PyTorch
Trung bìnhPyTorchautogradtối ưu4 test · 25 giây · sai số 0.001
Viết vòng lặp huấn luyện chuẩn của PyTorch cho mô hình ŷ = Xw + b với hàm mất mát MSE (trung bình):
```python
w = w0.clone().requires_grad_(True)
b = torch.tensor(b0, requires_grad=True)
opt = torch.optim.SGD([w, b], lr=lr)
for _ in range(steps):
opt.zero_grad()
loss = ((X @ w + b - y) ** 2).mean()
loss.backward()
opt.step()
```
Trả về [w₁, …, w_d, b] sau steps bước (dùng cả tập dữ liệu mỗi bước).
Viết hàm
train_linear(X, y, w0, b0, lr, steps)Tham số
X: tensor (n, d)y: tensor (n,)w0: tensor (d,) khởi tạob0: số thực khởi tạolr: tốc độ họcsteps: số bước
Trả về
Danh sách/tensor (d + 1,).
Ví dụ
Tham số
X = [[1],[2]] y = [2,4] w0 = [0] b0 = 0 lr = 0.1 steps = 1
Kết quả
[1.0,0.6]
Tham số
X = [[0],[1],[2]] y = [1,3,5] w0 = [0.5] b0 = 0 lr = 0.1 steps = 100
Kết quả
[1.999877113,1.000170496]
Bài tiếp theo: Causal attention theo lô bằng PyTorch →
Python · PyTorch
Bấm “Chạy thử” để gọi train_linear() với 2 ví dụ trong đề và so sánh kết quả. Dùng print() thoải mái để gỡ lỗi.