Aan de slagGa gratis aan de slag

Classificatiemodelprestaties visualiseren

In deze oefening los je een classificatieprobleem op waarbij de kolom "popularity" in de gegevensset music_df is omgezet naar binaire waarden: 1 betekent populairder dan of gelijk aan de mediaan van de kolom "popularity", en 0 betekent minder populair dan de mediaan.

Jouw taak is om drie verschillende modellen te bouwen en de resultaten te visualiseren om te classificeren of een nummer populair is of niet.

De data is voor je opgesplitst, geschaald en vooraf geladen als X_train_scaled, X_test_scaled, y_train en y_test. Daarnaast zijn KNeighborsClassifier, DecisionTreeClassifier en LogisticRegression al geïmporteerd.

Deze oefening maakt deel uit van de cursus

Supervised Learning met scikit-learn

Cursus bekijken

Oefeninstructies

  • Maak een dictionary met "Logistic Regression", "KNN" en "Decision Tree Classifier", waarbij de values van de dictionary een aanroep van elk model zijn.
  • Loop door de values in models.
  • Instantier een KFold-object om 6 splits te maken, met shuffle op True en random_state op 12.
  • Voer cross-validatie uit met het model, de geschaalde trainingsfeatures, de doeltrainingsset, en stel cv gelijk aan kf.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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()
Code bewerken en uitvoeren