Bài 3.2: Gradient là gì? – Dạy mạng “leo dốc ngược chiều sai số”
Mục tiêu bài học:
- Hiểu gradient là gì trong ngữ cảnh mạng nơ ron
- Thấy rõ mối liên hệ giữa gradient và việc giảm mất mát
- Minh họa bằng ví dụ cực kỳ đơn giản và quen thuộc
1. Học là gì? Là tìm cách sai ít hơn
Trong Bài 3.1, ta đã biết rằng:
- Mạng dự đoán đầu ra y^=w⋅x+b
- Nếu sai → ta đo sai số qua hàm mất mát (MSE)
- Mạng cần điều chỉnh w và b để giảm mất mát
Nhưng câu hỏi là:
Mạng phải thay đổi w và b như thế nào để mất mát nhỏ hơn?
Đây chính là lúc gradient xuất hiện.
2. Gradient là gì?
Gradient là một khái niệm trong toán học, nghĩa là đạo hàm – biểu diễn độ dốc của hàm tại một điểm.
Ta có thể hiểu nôm na:
Trường hợp | Ý nghĩa |
---|---|
Gradient > 0 | Hàm đang tăng → giảm biến để tối ưu |
Gradient < 0 | Hàm đang giảm → tăng biến để tối ưu |
Gradient = 0 | Đang ở điểm bằng phẳng / cực trị |
3. Gradient trong mạng nơ ron
Trong mạng, ta quan tâm tới:
- Gradient của hàm mất mát theo w
- Gradient của hàm mất mát theo b
Chúng cho ta biết:
- Nên tăng hay giảm w, b
- Mức độ thay đổi bao nhiêu
Mạng sẽ cập nhật như sau:
\[ w \leftarrow w – \alpha \cdot \frac{\partial \text{Loss}}{\partial w} \] \[ b \leftarrow b – \alpha \cdot \frac{\partial \text{Loss}}{\partial b} \]Trong đó:
4. Minh họa bằng ví dụ cụ thể
Giả sử chỉ dùng 1 điểm dữ liệu duy nhất:
- x=2, y=5
- Mạng dự đoán: y^=w⋅x+b
- Hàm mất mát:
Tính gradient theo từng biến:
- Gradient theo w:
- Gradient theo b:
5. Áp dụng: Mạng điều chỉnh thế nào?
Giả sử:
- w=1.0. b=0.0
- Với x=2, y=5
- y^=1.0⋅2+0=2.0
- Sai số e=y^−y=2.0−5.0=−3.0
Tính gradient:
\[ \frac{\partial \text{Loss}}{\partial w} = -(-3.0) \cdot 2 = 6.0 \] \[ \frac{\partial \text{Loss}}{\partial b} = -(-3.0) = 3.0 \]Cập nhật (với tốc độ học α=0.1):
\[ w \leftarrow 1.0 – 0.1 \cdot 6.0 = 0.4 \] \[ b \leftarrow 0.0 – 0.1 \cdot 3.0 = -0.3 \]→ Mạng đã giảm w và b để dự đoán tốt hơn ở lần sau.
6. Hình ảnh dễ hiểu: “Leo ngược dốc”
Bạn tưởng tượng một người đang leo núi ngược chiều dốc, và mỗi bước chân chính là một lần giảm mất mát. Gradient cho ta biết:
- Dốc cao hay thấp → bước to hay nhỏ
- Đi lên hay đi xuống → tăng hay giảm tham số
7. Kết luận
- Gradient là cách mạng nơ ron biết cần điều chỉnh bao nhiêu và theo hướng nào để giảm sai số.
- Đây là nền tảng của thuật toán gradient descent – phương pháp phổ biến nhất để huấn luyện mạng.
- Nhờ gradient, mạng biết cách cải thiện chính mình sau mỗi lần dự đoán sai.