Tránh mất cân bằng lớp
Một số dữ liệu có phân bố đầu ra rất mất cân bằng — như bộ dữ liệu về một bệnh hiếm. Khi tách ngẫu nhiên, bạn có thể gặp một lần tách rất tệ. Hãy tưởng tượng tất cả quan sát hiếm đều rơi vào tập kiểm tra và không có cái nào trong tập huấn luyện. Điều đó sẽ phá hỏng toàn bộ quá trình huấn luyện!
May mắn là hàm initial_split() có cách khắc phục. Trong bài tập này, bạn sẽ quan sát và xử lý những trường hợp gọi là hiện tượng mất cân bằng lớp này.
Đã có sẵn mã tạo đối tượng tách diabetes_split với tỉ lệ 75% huấn luyện và 25% kiểm tra.
Bài tập này là một phần của khóa học
Machine Learning với Mô hình Dựa trên Cây trong R
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.
# Preparation
set.seed(9888)
diabetes_split <- initial_split(diabetes, prop = 0.75)
# Proportion of 'yes' outcomes in the training data
counts_train <- table(training(___)$outcome)
prop_yes_train <- counts_train["___"] / sum(counts_train)
# Proportion of 'yes' outcomes in the test data
counts_test <- table(___)
prop_yes_test <- ___ / sum(___)
paste("Proportion of positive outcomes in training set:", round(prop_yes_train, 2))
paste("Proportion of positive outcomes in test set:", round(prop_yes_test, 2))