Wizualizacja ważności cech: które cechy są najważniejsze w moim zbiorze danych
Innym sposobem analizy modeli XGBoost jest sprawdzenie, jak duże znaczenie ma każda kolumna cech z oryginalnego zbioru danych w kontekście modelu.
Jedna z prostych metod polega na zliczeniu, ile razy każda cecha posłużyła jako punkt podziału we wszystkich rundach boostingu (drzewach) w modelu, a następnie przedstawieniu wyników jako wykres słupkowy – cechy są uszeregowane według częstotliwości występowania. XGBoost udostępnia funkcję plot_importance(), która robi dokładnie to. W tym ćwiczeniu sam ją wypróbujesz!
To ćwiczenie jest częścią kursu
Extreme Gradient Boosting with XGBoost
Instrukcje do ćwiczenia
- Utwórz
DMatrixzXiytak jak wcześniej. - Utwórz słownik parametrów z odpowiednim
"objective"("reg:squarederror") oraz"max_depth"równym4. - Wytrenuj model przez
10rund boostingu, dokładnie tak samo jak w poprzednim ćwiczeniu. - Użyj funkcji
xgb.plot_importance()i przekaż do niej wytrenowany model, aby wygenerować wykres ważności cech.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create the DMatrix: housing_dmatrix
housing_dmatrix = ____
# Create the parameter dictionary: params
params = ____
# Train the model: xg_reg
xg_reg = ____
# Plot the feature importances
____
plt.show()