Bắt đầu ngayBắt đầu miễn phí

Lấy mẫu thiếu (undersampling) trên tập huấn luyện

Trong video, bạn đã thấy để khắc phục vấn đề dữ liệu mất cân bằng, bạn có thể dùng undersampling hoặc oversampling. Tập huấn luyện đã được lấy mẫu thiếu sẵn cho bạn, sao cho 1/3 tập huấn luyện là các khoản vỡ nợ (default) và 2/3 là không vỡ nợ. Bộ dữ liệu thu được có sẵn trong workspace của bạn với tên undersampled_training_set, và chứa ít quan sát hơn (6570 thay vì 19394). Trong bài tập này, bạn sẽ tạo một cây quyết định bằng bộ dữ liệu đã lấy mẫu thiếu.

Bạn sẽ nhận ra rằng các cây trong bài này và bài tiếp theo rất lớn, đến mức bạn khó có thể đọc được. Đừng lo lắng về điều đó lúc này, chúng tôi sẽ hướng dẫn cách làm cho chúng dễ quản lý hơn trong video tiếp theo!

Bài tập này là một phần của khóa học

Mô hình hóa rủi ro tín dụng bằng R

Xem khóa học

Hướng dẫn bài tập

  • Gói rpart đã được cài đặt sẵn cho bạn. Hãy nạp gói vào workspace.
  • Sửa đoạn mã được cung cấp để xây dựng một cây quyết định bằng tập huấn luyện đã lấy mẫu thiếu thay vì training_set. Đồng thời, thêm đối số control = rpart.control(cp = 0.001). cp (complexity parameter) là ngưỡng cho mức giảm tổng thể của độ không phù hợp khi tách. Nếu không đạt cp, quá trình tách tiếp sẽ không được thực hiện. Giá trị mặc định của cp là 0.01, nhưng với các bài toán phức tạp, nên nới lỏng cp.
  • Vẽ cây quyết định bằng hàm plot với tên đối tượng cây. Thêm đối số thứ hai uniform = TRUE để có các nhánh có kích thước bằng nhau.
  • Lệnh trước chỉ tạo cây với các nút và cạnh, nhưng không có văn bản (các "label"). Dùng hàm text() với đối số duy nhất tree_undersample để thêm label.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Load package rpart in your workspace.


# Change the code provided in the video such that a decision tree is constructed using the undersampled training set. Include rpart.control to relax the complexity parameter to 0.001.
tree_undersample <- rpart(loan_status ~ ., method = "class",
                          data =  training_set)

# Plot the decision tree


# Add labels to the decision tree
Chỉnh sửa và Chạy Mã