Rừng ngẫu nhiên

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

Sandro Raabe

Data Scientist

Rừng ngẫu nhiên

  • Phù hợp dữ liệu nhiều chiều
  • Dễ dùng
  • Hiệu quả tốt ngay cả khi mặc định
  • Có trong nhiều gói: ranger, randomForest
  • Giao diện tidymodels cho các gói này: rand_forest() (trong gói parsnip)
Machine Learning với Mô hình Dựa trên Cây trong R

Ý tưởng

  • Ý tưởng cơ bản (như bagging): huấn luyện cây trên mẫu bootstrap
  • Khác biệt chính: chọn biến dự đoán ngẫu nhiên qua các cây $\rightarrow$ rừng ngẫu nhiên
Machine Learning với Mô hình Dựa trên Cây trong R

Trực quan

phác thảo rừng ngẫu nhiên

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

Mã: Khai báo mô hình rừng ngẫu nhiên

  • Tên hàm: rand_forest()

Siêu tham số:

  • mtry: số biến xét tại mỗi nút, mặc định:
    $$\left\lfloor\sqrt\text{num predictors}\right\rfloor$$
  • trees: số cây trong rừng
  • min_n: kích thước nút nhỏ nhất cho phép
rand_forest(

mtry = 4,
trees = 500,
min_n = 10) %>%
# Set the mode set_mode("classification") %>%
# Use engine ranger or randomForest set_engine("ranger")
Machine Learning với Mô hình Dựa trên Cây trong R

Mã: Khai báo mô hình rừng ngẫu nhiên

spec <- rand_forest(trees = 100) %>%

set_mode("classification") %>%
set_engine("ranger")
Đặc tả mô hình Random Forest

(classification)
Tham số chính: trees = 100
Động cơ tính toán: ranger
Machine Learning với Mô hình Dựa trên Cây trong R

Huấn luyện rừng

spec %>% fit(still_customer ~ ., data = customers_train)
Đối tượng mô hình parsnip

Thời gian huấn luyện: 631ms 
Kết quả Ranger

Số cây:                        100 
Cỡ mẫu:                        9116 
Số biến độc lập:               19 
Mtry:                           4 
Kích thước nút mục tiêu:       10
Machine Learning với Mô hình Dựa trên Cây trong R

Tầm quan trọng biến

rand_forest(mode = "classification") %>%
    set_engine("ranger", importance = "impurity") %>%

fit(still_customer ~ ., data = customers_train) %>%
vip::vip()

biểu đồ vip

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

Hãy “trồng” một rừng ngẫu nhiên!

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

Preparing Video For Download...