Centrado y escalado para la clasificación

Ahora reunirás el escalado y la construcción de modelos en una canalización para la validación cruzada.

Tu tarea consiste en construir una canalización para escalar características en el conjunto de datos music_df y realizar una validación cruzada de búsqueda en cuadrícula utilizando un modelo de regresión logística con diferentes valores para el hiperparámetro C. La variable objetivo aquí es "genre", que contiene valores binarios para el rock como 1 y cualquier otro género como 0.

StandardScaler, LogisticRegression, y GridSearchCV han sido importados para ti.

Este ejercicio forma parte del curso

Aprendizaje supervisado con scikit-learn

Ver curso

Instrucciones de ejercicio

  • Construye los pasos para la canalización: un objeto StandardScaler() llamado "scaler", y un modelo de regresión logística llamado "logreg".
  • Crea el parameters, buscando 20 valores flotantes igualmente espaciados que van de 0.001 a 1.0 para el hiperparámetro C del modelo de regresión logística dentro de la canalización.
  • Instanciar el objeto de búsqueda de la rejilla.
  • Ajusta el objeto de búsqueda de cuadrícula a los datos de entrenamiento.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

# Build the steps
steps = [("____", ____()),
         ("____", ____())]
pipeline = Pipeline(steps)

# Create the parameter space
parameters = {"____": np.____(____, ____, 20)}
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, 
                                                    random_state=21)

# Instantiate the grid search object
cv = ____(____, param_grid=____)

# Fit to the training data
cv.____(____, ____)
print(cv.best_score_, "\n", cv.best_params_)