Một mô hình gradient boosting
Bây giờ chúng ta sẽ huấn luyện một mô hình gradient boosting (GB). Có người ví von mô hình tuyến tính giống như một chiếc Toyota Camry, còn GB thì như trực thăng Black Hawk. GB có tiềm năng vượt trội so với random forests, nhưng không phải lúc nào cũng vậy. Điều này được gọi là định lý no free lunch, nghĩa là với mỗi bài toán bạn nên thử nhiều mô hình khác nhau.
GB giống với các mô hình random forest, nhưng điểm khác là cây được xây dựng tuần tự. Ở mỗi vòng lặp, cây tiếp theo sẽ khớp vào phần dư (residual) của cây trước đó để cải thiện độ khớp.
Hiện tại chúng ta sẽ không dò tìm hyperparameter — phần này đã được làm sẵn cho bạn.
Bài tập này là một phần của khóa học
Machine Learning cho Tài chính bằng Python
Hướng dẫn bài tập
- Tạo một đối tượng
GradientBoostingRegressorvới các hyperparameter đã được thiết lập sẵn. - Fit mô hình
gbrvớitrain_featuresvàtrain_targets. - In ra điểm số cho tập đặc trưng và mục tiêu của cả huấn luyện và kiểm tra.
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
# Create GB model -- hyperparameters have already been searched for you
gbr = ____(max_features=4,
learning_rate=0.01,
n_estimators=200,
subsample=0.6,
random_state=42)
gbr.fit(____)
print(gbr.score(train_features, train_targets))
____