私は木の数を増やすと学ぶscikitさんGradientBoostingRegressor
、私は私のトレーニングやテストセットには負の値が存在しないにもかかわらず、多くの負の予測を取得します。私は約10の機能を持っていますが、そのほとんどはバイナリです。
私が調整していたパラメーターのいくつかは次のとおりです。
- 木/反復の数;
- 深さを学ぶ;
- そして学習率。
負の値のパーセンテージは、最大で2%のようです。学習深度1(切り株)は、負の値の最大の%を持っているように見えました。このパーセンテージは、ツリーが多く、学習率が小さいほど増加するように見えました。データセットは、kaggle遊び場コンテストの1つからのものです。
私のコードは次のようなものです:
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)