随着我在scikit learn中增加树的数量,GradientBoostingRegressor
我得到更多的负面预测,即使我的训练或测试集中没有负值。我有大约 10 个功能,其中大部分是二进制的。
我正在调整的一些参数是:
- 树/迭代的数量;
- 学习深度;
- 和学习率。
负值的百分比似乎最大约为 2%。1(树桩)的学习深度似乎具有最大百分比的负值。这个百分比似乎也随着更多的树和更小的学习率而增加。该数据集来自 kaggle 游乐场比赛之一。
我的代码是这样的:
from sklearn.ensemble import GradientBoostingRegressor
X_train, X_test, y_train, y_test = train_test_split(X, y)
reg = GradientBoostingRegressor(n_estimators=8000, max_depth=1, loss = 'ls', learning_rate = .01)
reg.fit(X_train, y_train)
ypred = reg.predict(X_test)