Gradient boosting

Machine Learning với Mô hình Dựa trên Cây trong R

Sandro Raabe

Data Scientist

Ôn tập: boosting

  • Dùng bộ học yếu (ví dụ cây quyết định chỉ một lần tách) có hiệu năng nhỉnh hơn ngẫu nhiên
  • Cộng dồn các bộ học yếu và lọc các dự đoán đúng
  • Mỗi bước xử lý các quan sát còn khó

 

  • AdaBoost: thuật toán boosting phổ biến đầu tiên
  • Gradient Boosting: cải tiến của AdaBoost
Machine Learning với Mô hình Dựa trên Cây trong R

So sánh

Adaboost
  • Dùng decision stump làm bộ học yếu
  • Gán trọng số cho quan sát:
    • Trọng số cao cho quan sát khó
    • Trọng số thấp cho dự đoán đúng
Gradient boosting
  • Dùng cây nhỏ làm bộ học yếu
  • Dùng hàm mất mát thay cho trọng số
  • Tối ưu hàm mất mát bằng gradient descent
Machine Learning với Mô hình Dựa trên Cây trong R

Ưu & nhược điểm của boosting

 

Ưu điểm

  • Nằm trong nhóm mô hình máy học hiệu quả nhất
  • Tốt cho dữ liệu mất cân bằng

 

Nhược điểm

  • Dễ quá khớp
  • Huấn luyện có thể chậm (phụ thuộc siêu tham số learning rate)
  • Nhiều siêu tham số cần tinh chỉnh
Machine Learning với Mô hình Dựa trên Cây trong R

Siêu tham số cho gradient boosting

Đã biết từ cây quyết định đơn giản
  • min_n: số điểm dữ liệu tối thiểu trong nút để được tách tiếp
  • tree_depth: độ sâu tối đa của cây / số lần tách
Đã biết từ rừng ngẫu nhiên và bagged trees:
  • sample_size: lượng dữ liệu đưa vào quá trình fitting
  • trees: số cây trong tập hợp
Machine Learning với Mô hình Dựa trên Cây trong R

Siêu tham số cho gradient boosting

Đã biết từ rừng ngẫu nhiên:
  • mtry: số biến dự báo được chọn ngẫu nhiên tại mỗi lần tách
Riêng cho boosted trees:
  • learn_rate: tốc độ thuật toán boosting điều chỉnh qua từng vòng lặp
  • loss_reduction: mức giảm hàm mất mát cần có để tiếp tục tách
  • stop_iter: số vòng lặp không cải thiện trước khi dừng
Machine Learning với Mô hình Dựa trên Cây trong R

Ayo berlatih!

Machine Learning với Mô hình Dựa trên Cây trong R

Preparing Video For Download...