Tek tek XGBoost ağaçlarını görselleştirme
Artık XGBoost'u hem regresyon hem de sınıflandırma modelleri kurup değerlendirmek için kullandığına göre, modellerini görsel olarak nasıl keşfedeceğini öğrenme zamanı. Burada, XGBoost'un tüm konut veri kümesini kullanarak oluşturduğu tam güçlendirilmiş modeldeki tek tek ağaçları görselleştireceksin.
XGBoost, bu tür görselleştirmeyi kolaylaştıran bir plot_tree() işlevine sahiptir. XGBoost öğrenme API'sini kullanarak bir model eğittikten sonra, num_trees bağımsız değişkeniyle çizdirmek istediğin ağaç sayısını belirterek modeli plot_tree() işlevine verebilirsin.
Bu egzersiz
XGBoost ile Aşırı Gradyan Artırma
kursunun bir parçasıdırEgzersiz talimatları
"objective"değeri"reg:squarederror"ve"max_depth"değeri2olan bir parametre sözlüğü oluştur.- Modeli
10güçlendirme (boosting) turu ve oluşturduğun parametre sözlüğüyle eğit. Sonucuxg_regiçinde sakla. - İlk ağacı
xgb.plot_tree()ile çiz. Bu fonksiyon iki argüman alır — model (bu durumdaxg_reg) ve 0'dan indekslenennum_trees. Yani ilk ağacı çizmek içinnum_trees=0belirt. - Beşinci ağacı çiz.
- Son (onuncu) ağacı yatay olarak çiz. Bunu yapmak için ek anahtar argüman olarak
rankdir="LR"belirt.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# 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()