Як я можу збільшити кількість дерев в scikit дізнатися «S GradientBoostingRegressor
, я отримую більше негативні прогнози, незважаючи на те, немає негативних значень в моєму навчанні або тестування набору. У мене є близько 10 функцій, більшість з яких є бінарними.
Деякі з параметрів, які я налаштовував:
- кількість дерев / ітерацій;
- глибина навчання;
- та рівень навчання.
Відсоток від’ємних значень здавався максимумом ~ 2%. Глибина навчання 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)