Zacznij terazZacznij za darmo

Przewidywanie śmierci w GoT

Zmienna docelowa nie zawiera brakujących wartości, jednak inne cechy już tak. Ponieważ kurs nie skupia się na czyszczeniu i przetwarzaniu danych, wykonaliśmy już następujące kroki wstępne:

  • Zastąpiono wartości NA przez 0.
  • Zastąpiono ujemne wartości wieku przez 0.
  • Zastąpiono wartości NA wieku średnią.

Teraz zbudujemy model zespołowy z użyciem techniki uśredniania. Przygotowano następujące modele indywidualne:

  • Regresja logistyczna (clf_lr).
  • Drzewo decyzyjne (clf_dt).
  • Maszyna wektorów nośnych (clf_svm).

Ponieważ zmienna docelowa jest binarna, każdy z tych modeli może osiągać dobre wyniki samodzielnie. Twoim zadaniem jest połączenie ich za pomocą uśredniania. Jak wyjaśniono w filmie, jest to równoważne podejściu głosowania miękkiego (ang. soft voting), dlatego nadal należy użyć VotingClassifier().

To ćwiczenie jest częścią kursu

Metody zespołowe w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz listę krotek (string, estymator). Użyj 'lr' dla clf_lr, 'dt' dla clf_dt oraz 'svm' dla clf_svm.
  • Zbuduj klasyfikator uśredniający o nazwie clf_avg. Pamiętaj, aby podać odpowiedni argument dla parametru voting.

Interaktywne ćwiczenie praktyczne

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

# Build the individual models
clf_lr = LogisticRegression(class_weight='balanced')
clf_dt = DecisionTreeClassifier(min_samples_leaf=3, min_samples_split=9, random_state=500)
clf_svm = SVC(probability=True, class_weight='balanced', random_state=500)

# List of (string, estimator) tuples
estimators = ____

# Build and fit an averaging classifier
clf_avg = ____
clf_avg.fit(X_train, y_train)

# Evaluate model performance
acc_avg = accuracy_score(y_test,  clf_avg.predict(X_test))
print('Accuracy: {:.2f}'.format(acc_avg))
Edytuj i uruchom kod