Regresi dengan fitur kategorikal
Sekarang Anda telah membuat music_dummies yang berisi fitur biner untuk setiap genre lagu, saatnya membangun model ridge regression untuk memprediksi popularitas lagu.
music_dummies telah dimuat untuk Anda, bersama dengan Ridge, cross_val_score, numpy sebagai np, dan objek KFold yang disimpan sebagai kf.
Model akan dievaluasi dengan menghitung rata-rata RMSE, tetapi terlebih dahulu, Anda perlu mengubah skor untuk setiap lipatan menjadi nilai positif dan mengambil akar kuadratnya. Metrik ini menunjukkan rata-rata galat dari prediksi model kita, sehingga dapat dibandingkan dengan simpangan baku nilai target—"popularity".
Latihan ini adalah bagian dari kursus
Supervised Learning dengan scikit-learn
Petunjuk latihan
- Buat
Xyang berisi semua fitur dalammusic_dummies, danyyang berupa kolom"popularity". - Instansiasi model ridge regression dengan menetapkan
alphasama dengan 0.2. - Lakukan cross-validation pada
Xdanymenggunakan model ridge, tetapkancvsama dengankf, dan gunakan negative mean squared error sebagai metrik penilaian. - Cetak nilai RMSE dengan mengonversi
scoresnegatif menjadi positif dan mengambil akar kuadratnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create X and y
X = ____
y = ____
# Instantiate a ridge model
ridge = ____
# Perform cross-validation
scores = ____(____, ____, ____, cv=____, scoring="____")
# Calculate RMSE
rmse = np.____(____)
print("Average RMSE: {}".format(np.mean(rmse)))
print("Standard Deviation of the target array: {}".format(np.std(y)))