Zacznij terazZacznij za darmo

Regresja logistyczna i selekcja cech

W tym ćwiczeniu przeprowadzisz selekcję cech na zbiorze danych z opiniami o filmach, korzystając z regularyzacji L1. Cechy i etykiety są już wczytane do zmiennych X_train i y_train.

Najlepszą wartość parametru C znajdziesz przy użyciu funkcji GridSearchCV() z biblioteki scikit-learn, którą omawialiśmy w kursie wymagającym.

To ćwiczenie jest częścią kursu

Liniowe klasyfikatory w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz obiekt regresji logistycznej z regularyzacją L1.
  • Znajdź wartość C, która minimalizuje błąd walidacji krzyżowej.
  • Wyświetl liczbę wybranych cech dla tej wartości C.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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))
Edytuj i uruchom kod