Zacznij terazZacznij za darmo

Bardziej złożony model baggingu

Po zapoznaniu się z danymi dotyczącymi półprzewodników zbudujmy teraz klasyfikator baggingu, który przewiduje etykietę 'Pass/Fail' na podstawie cech wejściowych.

Wstępnie przetworzone dane są dostępne w twoim środowisku jako uci_secom, a zbiory treningowy i testowy zostały już dla ciebie przygotowane.

Ponieważ klasy docelowe są mocno niezbalansowane, użyj jako estymatora bazowego regresji logistycznej z parametrem "balanced".

Aby skrócić czas obliczeń dla LogisticRegression, użyjemy parametru solver='liblinear' – jest to szybszy optymalizator niż domyślny.

To ćwiczenie jest częścią kursu

Metody zespołowe w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz instancję regresji logistycznej, która posłuży jako klasyfikator bazowy, z następującymi parametrami: class_weight='balanced', solver='liblinear' i random_state=42.
  • Zbuduj klasyfikator baggingu, używając tej regresji logistycznej jako estymatora bazowego – określ maksymalną liczbę cech jako 10 i włącz obliczanie wyniku out-of-bag.
  • Wyświetl wynik out-of-bag, aby porównać go z dokładnością modelu.

Interaktywne ćwiczenie praktyczne

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

# Build a balanced logistic regression
clf_lr = ____

# Build and fit a bagging classifier
clf_bag = ____(____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)

# Evaluate the accuracy on the test set and show the out-of-bag score
pred = clf_bag.predict(X_test)
print('Accuracy:  {:.2f}'.format(accuracy_score(y_test, pred)))
print('OOB-Score: {:.2f}'.format(____))

# Print the confusion matrix
print(confusion_matrix(y_test, pred))
Edytuj i uruchom kod