Trộn mô hình (Model blending)
Bạn sẽ bắt đầu tạo các tổ hợp mô hình bằng kỹ thuật blending.
Mục tiêu của bạn là huấn luyện 2 mô hình khác nhau trên dữ liệu cuộc thi New York City Taxi. Thực hiện dự đoán trên dữ liệu kiểm tra rồi trộn chúng bằng trung bình cộng đơn giản.
Các DataFrame train và test đã có sẵn trong không gian làm việc của bạn. features là danh sách các cột dùng để huấn luyện và cũng đã có sẵn. Tên biến mục tiêu là "fare_amount".
Bài tập này là một phần của khóa học
Chinh phục cuộc thi Kaggle bằng Python
Hướng dẫn bài tập
- Huấn luyện một mô hình Gradient Boosting trên dữ liệu train sử dụng danh sách
features, và cột "fare_amount" làm biến mục tiêu. - Huấn luyện một mô hình Random Forest theo cách tương tự.
- Tạo dự đoán trên dữ liệu test bằng cả mô hình Gradient Boosting và Random Forest.
- Tính trung bình dự đoán của cả hai mô hình.
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.
from sklearn.ensemble import GradientBoostingRegressor, RandomForestRegressor
# Train a Gradient Boosting model
gb = GradientBoostingRegressor().____(____[features], ____.fare_amount)
# Train a Random Forest model
rf = RandomForestRegressor().____(____[features], ____.fare_amount)
# Make predictions on the test data
test['gb_pred'] = ____.____(test[features])
test['rf_pred'] = ____.____(test[features])
# Find mean of model predictions
test['blend'] = (____[____] + ____[____]) / 2
print(test[['gb_pred', 'rf_pred', 'blend']].head(3))