1. Learn
  2. /
  3. Courses
  4. /
  5. Chinh phục cuộc thi Kaggle bằng Python

Connected

Exercise

K-fold cross-validation

Bạn sẽ làm việc với một bài toán phân loại nhị phân trên một mẫu con từ cuộc thi Kaggle playground. Mục tiêu của cuộc thi là dự đoán liệu vận động viên bóng rổ nổi tiếng Kobe Bryant ghi điểm hay ném trượt một cú ném cụ thể.

Dữ liệu huấn luyện có sẵn trong workspace của bạn dưới dạng DataFrame bryant_shots. Nó chứa dữ liệu về 10.000 cú ném với các thuộc tính của chúng và biến target "shot\_made\_flag" — cho biết cú ném có ghi điểm hay không.

Một trong các đặc trưng trong dữ liệu là "game_id" — trận đấu cụ thể nơi cú ném được thực hiện. Có 541 trận khác nhau. Vậy là bạn đang xử lý một đặc trưng phân loại có số hạng mục rất lớn (high-cardinality). Hãy mã hóa nó bằng trung bình theo mục tiêu (target mean)!

Giả sử bạn dùng 5-fold cross-validation và muốn đánh giá đặc trưng đã được mã hóa theo trung bình mục tiêu trên tập validation cục bộ.

Instructions

100 XP
  • Để làm được điều này, bạn cần lặp lại quy trình mã hóa cho đặc trưng phân loại "game_id" riêng trong từng lần chia fold. Mục tiêu của bạn là chỉ định tất cả tham số còn thiếu cho lời gọi hàm mean_target_encoding() bên trong mỗi lần chia fold.
  • Nhớ rằng các tham số train và test kỳ vọng nhận các DataFrame train và test.
  • Trong khi đó, các tham số target và categorical kỳ vọng tên của biến mục tiêu và đặc trưng phân loại cần được mã hóa.