Menghindari ketidakseimbangan kelas
Beberapa data memiliki keluaran yang sangat tidak seimbang—misalnya himpunan data penyakit langka. Jika membagi secara acak, Anda bisa mendapatkan pembagian yang sangat merugikan. Bayangkan semua observasi langka masuk ke set uji dan tidak ada di set latih. Itu akan merusak seluruh proses pelatihan Anda!
Untungnya, fungsi initial_split() menyediakan solusinya. Pada latihan ini, Anda akan mengamati dan mengatasi apa yang disebut sebagai ketidakseimbangan kelas.
Kode telah disediakan untuk membuat objek split diabetes_split dengan 75% data latih dan 25% data uji.
Latihan ini adalah bagian dari kursus
Machine Learning dengan Model Berbasis Pohon di R
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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))