Zacznij terazZacznij za darmo

Studium przypadku – choroba nerek, część III: Pełny potok

Czas połączyć wszystkie transformacje wraz z XGBClassifier, aby zbudować pełny potok!

Oprócz numeric_categorical_union, który utworzyłeś(-aś) w poprzednim ćwiczeniu, potrzebne są jeszcze dwie transformacje: Dictifier() – przygotowana dla ciebie – oraz DictVectorizer().

Po utworzeniu potoku przeprowadź jego kroswalidację, aby ocenić jego skuteczność.

To ćwiczenie jest częścią kursu

Extreme Gradient Boosting with XGBoost

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz potok, korzystając z transformacji numeric_categorical_union, Dictifier() i DictVectorizer(sort=False) oraz estymatora xgb.XGBClassifier() z parametrem max_depth=3. Nadaj transformacjom nazwy "featureunion", "dictifier", "vectorizer", a estymatorowi – "clf".
  • Przeprowadź 3-krotną kroswalidację potoku pipeline za pomocą cross_val_score(). Przekaż jej potok pipeline, cechy kidney_data, wartości docelowe y, a także ustaw scoring na "roc_auc" i cv na 3.

Interaktywne ćwiczenie praktyczne

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

# Create full pipeline
pipeline = ____([
                     ("____", ____),
                     ("____", ____),
                     ("____", ____),
                     ("____", ____)
                    ])

# Perform cross-validation
cross_val_scores = ____(____, ____, ____, ____="____", ____=____)

# Print avg. AUC
print("3-fold AUC: ", np.mean(cross_val_scores))
Edytuj i uruchom kod