Zacznij terazZacznij za darmo

Wizualizacja wydajności modelu klasyfikacji

W tym ćwiczeniu rozwiążesz problem klasyfikacji, w którym kolumna "popularity" w zbiorze danych music_df została przekształcona do wartości binarnych: 1 oznacza popularność większą lub równą medianie kolumny "popularity", a 0 oznacza popularność poniżej mediany.

Twoim zadaniem jest zbudowanie i zwizualizowanie wyników trzech różnych modeli klasyfikujących, czy dana piosenka jest popularna.

Dane zostały podzielone, przeskalowane i wczytane jako X_train_scaled, X_test_scaled, y_train i y_test. Zaimportowano również KNeighborsClassifier, DecisionTreeClassifier i LogisticRegression.

To ćwiczenie jest częścią kursu

Nadzorowane uczenie maszynowe z scikit-learn

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz słownik z kluczami "Logistic Regression", "KNN" i "Decision Tree Classifier", przypisując jako wartości wywołania odpowiednich modeli.
  • Przeiteruj po wartościach słownika models.
  • Utwórz obiekt KFold wykonujący 6 podziałów, ustawiając shuffle na True i random_state na 12.
  • Przeprowadź walidację krzyżową, używając modelu, przeskalowanych cech treningowych, docelowego zbioru treningowego i ustawiając cv na kf.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod