MulaiMulai sekarang secara gratis

Memvisualisasikan pohon XGBoost secara individual

Sekarang setelah Anda menggunakan XGBoost untuk membangun dan mengevaluasi model regresi maupun klasifikasi, saatnya memahami cara menjelajahi model Anda secara visual. Di sini, Anda akan memvisualisasikan pohon-pohon individual dari model boosted penuh yang dibuat XGBoost menggunakan seluruh himpunan data perumahan.

XGBoost memiliki fungsi plot_tree() yang memudahkan visualisasi seperti ini. Setelah Anda melatih model menggunakan XGBoost learning API, Anda dapat memberikannya ke fungsi plot_tree() bersama dengan jumlah pohon yang ingin Anda plot menggunakan argumen num_trees.

Latihan ini adalah bagian dari kursus

Extreme Gradient Boosting dengan XGBoost

Lihat Kursus

Petunjuk latihan

  • Buat kamus parameter dengan "objective" bernilai "reg:squarederror" dan "max_depth" bernilai 2.
  • Latih model menggunakan 10 putaran boosting dan kamus parameter yang Anda buat. Simpan hasilnya dalam xg_reg.
  • Plot pohon pertama menggunakan xgb.plot_tree(). Fungsi ini menerima dua argumen — model (dalam hal ini, xg_reg) dan num_trees, yang menggunakan indeks mulai dari 0. Jadi untuk memplot pohon pertama, tentukan num_trees=0.
  • Plot pohon kelima.
  • Plot pohon terakhir (kesepuluh) secara horizontal. Untuk melakukannya, tambahkan argumen kata kunci rankdir="LR".

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Create the DMatrix: housing_dmatrix
housing_dmatrix = xgb.DMatrix(data=X, label=y)

# Create the parameter dictionary: params
params = {"objective":"reg:squarederror", "max_depth":2}

# Train the model: xg_reg
xg_reg = xgb.train(params=params, dtrain=housing_dmatrix, num_boost_round=10)

# Plot the first tree
____
plt.show()

# Plot the fifth tree
____
plt.show()

# Plot the last tree sideways
____
plt.show()
Edit dan Jalankan Kode