1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Phân tích Nhân sự (HR Analytics): Dự đoán nghỉ việc bằng Python

Connected

Bài tập

Thiết lập tham số cho GridSearch

Một hyperparameter là một tham số bên trong hàm. Ví dụ, max_depth hoặc min_samples_leaf là các hyperparameter của hàm DecisionTreeClassifier(). Điều chỉnh hyperparameter (hyperparameter tuning) là quá trình thử các giá trị khác nhau của hyperparameter để tìm ra giá trị tối ưu: giá trị cho dự đoán tốt nhất theo mục tiêu của bạn. Trong sklearn, bạn có thể dùng GridSearch để thử các tổ hợp hyperparameter khác nhau. Thậm chí tốt hơn, bạn có thể dùng GridSearchCV() để vừa thử các tổ hợp vừa chạy cross-validation trong cùng một hàm!

Trong bài tập này, bạn sẽ chuẩn bị các giá trị khác nhau muốn thử cho max_depth và min_samples_leaf. Sau đó, bạn sẽ đưa chúng vào một từ điển, vì đó là định dạng mà GridSearchCV() yêu cầu:

  • khóa của từ điển sẽ là tên các hyperparameter
  • giá trị của từ điển sẽ là các thuộc tính (các giá trị hyperparameter) bạn muốn thử

Thay vì viết tay tất cả giá trị, bạn sẽ dùng hàm range(), hàm này cho phép tạo dãy giá trị tăng dần. Ví dụ, range(1, 10, 2) sẽ tạo một danh sách chứa các giá trị từ 1 (bao gồm) đến 10 (không bao gồm), với bước nhảy 2. Kết quả cuối cùng sẽ là [1, 3, 5, 7, 9].

Hướng dẫn

100 XP
  • Theo định dạng ví dụ ở trên, tạo các giá trị cho độ sâu tối đa từ 5 đến 20 với bước tăng 1
  • Làm tương tự cho kích thước mẫu tối thiểu với các giá trị từ 50 đến 450 với bước tăng 50
  • Tạo từ điển bằng cách chỉ định các giá trị max_depth và min_samples_leaf cần thử, sử dụng đúng các biến bạn vừa tạo