Regressão logística e seleção de recursos
Neste exercício, realizaremos a seleção de recursos no conjunto de dados de sentimento de resenhas de filmes usando a regularização L1. Os recursos e as metas já estão carregados para você em X_train
e y_train
.
Buscaremos o melhor valor de C
usando o GridSearchCV()
do scikit-learn, que foi abordado no curso de pré-requisito.
Este exercício faz parte do curso
Classificadores lineares em Python
Instruções de exercício
- Instanciar um objeto de regressão logística que usa a regularização L1.
- Encontre o valor de
C
que minimiza o erro de validação cruzada. - Imprima o número de recursos selecionados para esse valor de
C
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Specify L1 regularization
lr = LogisticRegression(solver='liblinear', ____)
# Instantiate the GridSearchCV object and run the search
searcher = GridSearchCV(lr, {'C':[0.001, 0.01, 0.1, 1, 10]})
searcher.fit(X_train, y_train)
# Report the best parameters
print("Best CV params", searcher.best_params_)
# Find the number of nonzero coefficients (selected features)
best_lr = searcher.best_estimator_
coefs = best_lr.____
print("Total number of features:", coefs.size)
print("Number of selected features:", np.count_nonzero(coefs))