開始使用免費開始

梯度提升模型

現在我們要訓練一個梯度提升(GB)模型。有人打趣地說,線性模型像是 Toyota Camry,而 GB 則像 Black Hawk 直升機。GB 有機會表現優於隨機森林,但並非總是如此。這呼應了所謂的「no free lunch 定理」,意思是每個問題都應該嘗試多種不同的模型。

GB 和隨機森林模型相似,但差別在於樹是逐步建構的。每一次迭代,下一棵樹會去擬合前一棵樹的殘差,藉此改善整體擬合效果。

目前我們不會搜尋超參數——這些已經幫你事先調好。

本練習屬於課程

Python 金融 Machine Learning

檢視課程

練習說明

  • 使用已為你設定好的超參數,建立一個 GradientBoostingRegressor 物件。
  • gbr 模型擬合到 train_featurestrain_targets
  • 列印訓練與測試的特徵與目標分數。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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))
____
編輯並執行程式碼