Centralização e escalonamento para classificação
Agora você deve combinar o escalonamento e a criação de um modelo em um pipeline para validação cruzada.
Sua tarefa é criar um pipeline para fazer o escalonamento das variáveis independentes do conjunto de dados music_df e realizar a validação cruzada com pesquisa em grade usando um modelo de regressão logística com diferentes valores do hiperparâmetro C. A variável dependente aqui é "genre", que contém valores binários em que rock é igual a 1 e qualquer outro gênero é igual a 0.
StandardScaler, LogisticRegression e GridSearchCV já foram importados para você.
Este exercício faz parte do curso
Aprendizado Supervisionado com o scikit-learn
Instruções do exercício
- Crie as etapas do pipeline: um objeto
StandardScaler()chamado"scaler"e um modelo de regressão logística chamado"logreg". - Crie os parâmetros (
parameters), buscando 20 floats igualmente espaçados que variam de0.001a1.0para o hiperparâmetroCdo modelo de regressão logística dentro do pipeline. - Instancie o objeto de pesquisa em grade.
- Ajuste o objeto de pesquisa em grade aos dados de treinamento.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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_)