Cây quyết định làm bộ học cơ sở
Giờ là lúc bạn xây dựng một mô hình XGBoost để dự đoán giá nhà — không phải ở Boston, Massachusetts như trong video, mà ở Ames, Iowa! Bộ dữ liệu giá nhà đã được nạp sẵn vào DataFrame tên df. Nếu bạn khám phá trong Shell, bạn sẽ thấy có nhiều đặc trưng về căn nhà và vị trí của nó trong thành phố.
Trong bài tập này, mục tiêu là dùng cây làm bộ học cơ sở (base learners). Mặc định XGBoost dùng cây làm bộ học cơ sở, nên bạn không cần chỉ định booster="gbtree".
xgboost đã được import với bí danh xgb và các mảng đặc trưng và mục tiêu lần lượt có sẵn trong X và y.
Bài tập này là một phần của khóa học
Gradient Boosting Cực Mạnh với XGBoost
Hướng dẫn bài tập
- Chia
dfthành tập huấn luyện và kiểm tra, giữ lại 20% cho kiểm tra. Dùngrandom_statebằng123. - Khởi tạo
XGBRegressorlàxg_reg, dùngseedbằng123. Chỉ định objective là"reg:squarederror"và dùng 10 cây. Lưu ý: Bạn không cần chỉ địnhbooster="gbtree"vì đây là mặc định. - Fit
xg_reglên dữ liệu huấn luyện và dự đoán nhãn cho tập kiểm tra. Lưu dự đoán vào biếnpreds. - Tính
rmsebằngnp.sqrt()và hàmmean_squared_error()từsklearn.metrics, đã được import sẵn.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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))