Pohon keputusan sebagai base learner
Sekarang saatnya membangun model XGBoost untuk memprediksi harga rumah — bukan di Boston, Massachusetts seperti di video, melainkan di Ames, Iowa! Himpunan data harga rumah ini telah dimuat sebelumnya ke dalam DataFrame bernama df. Jika Anda mengeksplorasinya di Shell, Anda akan melihat beragam fitur tentang rumah dan lokasinya di kota.
Dalam latihan ini, tujuan Anda adalah menggunakan pohon sebagai base learner. Secara default, XGBoost menggunakan pohon sebagai base learner, jadi Anda tidak perlu menentukan bahwa Anda ingin menggunakan pohon di sini dengan booster="gbtree".
xgboost telah diimpor sebagai xgb dan array untuk fitur serta target tersedia masing-masing di X dan y.
Latihan ini adalah bagian dari kursus
Extreme Gradient Boosting dengan XGBoost
Petunjuk latihan
- Bagi
dfmenjadi himpunan pelatihan dan pengujian, sisihkan 20% untuk pengujian. Gunakanrandom_statebernilai123. - Instansiasikan
XGBRegressorsebagaixg_reg, denganseedbernilai123. Tentukan objective"reg:squarederror"dan gunakan 10 pohon. Catatan: Anda tidak perlu menentukanbooster="gbtree"karena ini adalah nilai default. - Latih
xg_regpada data pelatihan dan prediksikan label himpunan uji. Simpan prediksi dalam variabel bernamapreds. - Hitung
rmsemenggunakannp.sqrt()dan fungsimean_squared_error()darisklearn.metrics, yang telah diimpor sebelumnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create the training and test sets
X_train, X_test, y_train, y_test = ____(____, ____, ____=____, random_state=123)
# Instantiate the XGBRegressor: xg_reg
xg_reg = ____
# Fit the regressor to the training set
____
# Predict the labels of the test set: preds
preds = ____
# Compute the rmse: rmse
rmse = ____(____(____, ____))
print("RMSE: %f" % (rmse))