在sklearn GradientBoostingRegressor中指定Huber损失epsilon参数

时间:2018-11-30 08:59:13

标签: python scikit-learn

我正在使用sklearn.ensemble.GradientBoostingRegressor link,选项之一是将损失函数设置为HuberHuber方法本身link,具有参数epsilon,用于指定对异常值的鲁棒性。

使用集成方法时是否无法设置epsilon参数?例如

from sklearn import ensemble
params = {'n_estimators': 300, 'max_depth': 3, 'min_samples_split': 2,
          'learning_rate': 0.01, 'loss': 'huber', 'epsilon':1.0, 'alpha':.5, 'criterion':'mse', }
clf = ensemble.GradientBoostingRegressor(**params)

给予:

Traceback (most recent call last):

  File "<ipython-input-6-875d10cdac68>", line 3, in <module>
    clf = ensemble.GradientBoostingRegressor(**params)

TypeError: __init__() got an unexpected keyword argument 'epsilon'

即使1.11.4.5.1. Loss Functions本节说要使用alpha来控制对异常值的鲁棒性,但这不同于epsilon ...

0 个答案:

没有答案