Rừng ngẫu nhiên

Học có giám sát với R: Hồi quy

Nina Zumel and John Mount

Win-Vector, LCC

Random Forests

Trung bình nhiều cây quyết định đa dạng

  • Giảm overfit
  • Tăng độ linh hoạt của mô hình
  • Dự đoán chi tiết hơn
Học có giám sát với R: Hồi quy

Xây dựng mô hình Random Forest

  1. Lấy mẫu bootstrapped từ dữ liệu huấn luyện
  2. Với mỗi mẫu, tăng trưởng một cây
    • Ở mỗi nút, chọn biến tốt nhất để tách (từ một tập con ngẫu nhiên của tất cả biến)
    • Tiếp tục cho đến khi cây hoàn chỉnh
  3. Để chấm điểm một điểm dữ liệu, đánh giá bằng tất cả cây và lấy trung bình kết quả.
Học có giám sát với R: Hồi quy

Ví dụ: Dữ liệu thuê xe đạp

cnt ~ hr + holiday + workingday + 
  weathersit + temp + atemp + hum + windspeed

Học có giám sát với R: Hồi quy

Random Forests với ranger()

model <- ranger(fmla, bikesJan, 
                num.trees = 500, 
                respect.unordered.factors = "order")
  • formula, data
  • num.trees (mặc định 500) - dùng ít nhất 200
  • mtry - số biến thử tại mỗi nút
    • mặc định: căn bậc hai của tổng số biến
  • respect.unordered.factors - khuyên đặt là "order"
    • hashing "an toàn" cho biến phân loại
Học có giám sát với R: Hồi quy

Random Forests với ranger()

model
Ranger result
...
OOB prediction error (MSE):       3103.623 
R squared (OOB):                  0.7837386

Thuật toán random forest trả về ước lượng hiệu năng ngoài mẫu.

Học có giám sát với R: Hồi quy

Dự đoán với mô hình ranger()

bikesFeb$pred <- predict(model, bikesFeb)$predictions

Đầu vào của predict():

  • model
  • data

Dự đoán nằm trong phần tử predictions.

Học có giám sát với R: Hồi quy

Đánh giá mô hình

Tính RMSE:

bikesFeb %>% 
  mutate(residual = cnt - pred) %>%
  summarize(rmse = sqrt(mean(residual^2)))
      rmse
1 67.15169
Model RMSE
Quasipoisson 69.3
Random forests 67.15
Học có giám sát với R: Hồi quy

Đánh giá mô hình

Học có giám sát với R: Hồi quy

Đánh giá mô hình

Học có giám sát với R: Hồi quy

Cùng luyện tập nào!

Học có giám sát với R: Hồi quy

Preparing Video For Download...