Lộ trình từ Decision Tree đến Random Forest
Vì sao phải can thiệp luật sinh trưởng của cây để bẻ gãy tương quan?
Một cây quyết định (DT) sâu có độ chệch thấp nhưng phương sai rất cao: nó học vẹt nhiễu và rất nhạy với dữ liệu huấn luyện. Bagging và Random Forest (RF) cùng dùng triết lý “sức mạnh số đông” để dập tắt phương sai, nhưng ở hai cấp độ khác nhau.
1. Bagging: Hội đồng đọc chung tài liệu
Thay vì tin 1 cây, Bagging rút mẫu bootstrap tạo $B$ tập con, trồng cây DT nguyên bản trên mỗi tập rồi lấy trung bình dự đoán:
$$ \operatorname{Var} = \rho \sigma^2 + \frac{1 - \rho}{B}\sigma^2 \xrightarrow{B \to \infty} \rho \sigma^2. $$Điểm nghẽn: Cây nguyên bản xét đủ $M$ đặc trưng ở mọi nút. Nếu có biến chi phối mạnh, 100% cây đều chọn nó ở gốc. Các cây quá giống nhau ($\rho$ cao), làm nghẽn mức giảm phương sai.
2. Random Forest: Can thiệp luật sinh trưởng của cây
Để giảm phương sai sâu hơn, RF phải bẻ gãy tương quan $\rho$ bằng cách can thiệp trực tiếp vào từng lần rẽ nhánh:
- Tại mỗi nút, cây chỉ được bốc thăm ngẫu nhiên $m \approx \sqrt{M}$ đặc trưng (ví dụ 100 chỉ lấy 10); số còn lại bị “bịt mắt”.
- Xuống nút con kế tiếp, thuật toán lại bốc thăm tập $m$ đặc trưng mới.
Do bốc thăm liên tục, biến áp đảo nhiều khi vắng mặt ở nút gốc, ép cây khai thác các tín hiệu tiềm ẩn khác. Kết quả tạo ra quần thể cây thực sự độc lập, kéo $\rho \to 0$ và triệt tiêu phương sai tối đa.
💡 Ẩn dụ trực giác:
Nếu DT là cá nhân dễ cảm tính, thì Bagging là hội đồng thảo luận chung tài liệu (dễ bị cuốn theo người nổi bật nhất), còn Random Forest là hội đồng mà mỗi người chỉ đọc trích đoạn ngẫu nhiên để không ai bị thao túng bởi ai.