Backpropagation là thuật toán tính gradient của hàm mất mát theo mọi trọng số một cách hiệu quả, để gradient descent cập nhật chúng.
Hai lượt:
1. Forward pass: đưa đầu vào qua mạng, tính đầu ra từng lớp và loss cuối cùng.
2. Backward pass: áp dụng quy tắc dây chuyền từ đầu ra ngược về — tính gradient của loss ở lớp ra, rồi lan ngược qua từng lớp, tái sử dụng các activation đã lưu, để ra ∂L/∂w cho mọi trọng số.
Điểm mấu chốt: nó tái sử dụng kết quả trung gian (giống quy hoạch động trên đồ thị tính toán) nên chi phí chỉ khoảng một lượt forward, không bùng nổ. Sau đó một optimizer (SGD/Adam) dùng các gradient này để cập nhật trọng số.
Hình dung: backprop chỉ tính gradient; nó không phải là bộ tối ưu — cập nhật trọng số là việc của optimizer.