Aan de slagGa gratis aan de slag

Pipeline voor het voorspellen van songpopulariteit

In de laatste oefening bouw je een pipeline om ontbrekende waarden in te vullen, features te schalen en hyperparametertuning uit te voeren voor een logistische regressie. Het doel is om de beste parameters en nauwkeurigheid te vinden bij het voorspellen van het genre van een song!

Alle modellen en objecten die je nodig hebt om de pipeline te bouwen, zijn alvast voor je ingeladen.

Deze oefening maakt deel uit van de cursus

Supervised Learning met scikit-learn

Cursus bekijken

Oefeninstructies

  • Maak de stappen voor de pipeline door een simple imputer, een standard scaler en een logistic regression-model aan te roepen.
  • Maak een pipeline-object en geef de variabele steps door.
  • Instantieer een gridsearch-object om cross-validatie uit te voeren met de pipeline en de parameters.
  • Print de beste parameters en bereken en print de nauwkeurigheidsscore op de testset voor het gridsearch-object.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Create steps
steps = [("imp_mean", ____()), 
         ("scaler", ____()), 
         ("logreg", ____())]

# Set up pipeline
pipeline = ____(____)
params = {"logreg__solver": ["newton-cg", "saga", "lbfgs"],
         "logreg__C": np.linspace(0.001, 1.0, 10)}

# Create the GridSearchCV object
tuning = ____(____, param_grid=____)
tuning.fit(X_train, y_train)
y_pred = tuning.predict(X_test)

# Compute and print performance
print("Tuned Logistic Regression Parameters: {}, Accuracy: {}".format(____.____, ____.____))
Code bewerken en uitvoeren