Memvisualisasikan kinerja model klasifikasi
Dalam latihan ini, Anda akan menyelesaikan masalah klasifikasi di mana kolom "popularity" dalam himpunan data music_df telah diubah menjadi nilai biner, dengan 1 merepresentasikan popularitas lebih dari atau sama dengan median untuk kolom "popularity", dan 0 menunjukkan popularitas di bawah median.
Tugas Anda adalah membangun dan memvisualisasikan hasil dari tiga model berbeda untuk mengklasifikasikan apakah sebuah lagu populer atau tidak.
Data telah di-split, di-scale, dan dimuat sebelumnya untuk Anda sebagai X_train_scaled, X_test_scaled, y_train, dan y_test. Selain itu, KNeighborsClassifier, DecisionTreeClassifier, dan LogisticRegression telah diimpor.
Latihan ini adalah bagian dari kursus
Supervised Learning dengan scikit-learn
Petunjuk latihan
- Buat sebuah dictionary berisi
"Logistic Regression","KNN", dan"Decision Tree Classifier", dengan nilai dictionary diisi pemanggilan masing-masing model. - Lakukan loop melalui nilai-nilai dalam
models. - Instansiasi objek
KFolduntuk melakukan 6 split, setshufflekeTruedanrandom_stateke12. - Lakukan cross-validation menggunakan model, fitur pelatihan yang telah diskalakan, himpunan target pelatihan, dan set
cvsama dengankf.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create models dictionary
models = {"____": ____(), "____": ____(), "____": ____()}
results = []
# Loop through the models' values
for model in ____.____():
# Instantiate a KFold object
kf = ____(n_splits=____, random_state=____, shuffle=____)
# Perform cross-validation
cv_results = ____(____, ____, ____, cv=____)
results.append(cv_results)
plt.boxplot(results, labels=models.keys())
plt.show()