Можно ли использовать StackRegressor на предварительно обученных моделях? - PullRequest
0 голосов
/ 11 февраля 2020

Я хочу использовать StackedRegressor от scikit-learn для создания ансамбля, но я хочу использовать предварительно подготовленные модели керас. По сути, я хочу использовать метарегрессор, чтобы наилучшим образом использовать каждую из базовых моделей, но мне не нужно их обучать. Что-то вроде

regressor_1 = KerasRegressor(build_fn)
regressor_2 = KerasRegressor(build_fn)
regressor_3 = KerasRegressor(build_fn)
regressors = [('r1', regressor_1),
              ('r2', regressor_2),
              ('r3', regressor_3)]

xgboost = XGBRegressor(learning_rate=0.01, n_estimators=3460,
                       max_depth=3, min_child_weight=0,
                       gamma=0, subsample=0.7,
                       colsample_bytree=0.7,
                       objective='reg:linear', nthread=-1,
                       scale_pos_weight=1, seed=27,
                       reg_alpha=0.00006)
stack_gen = StackingRegressor(estimators=regressors,
                                final_estimator=xgboost,
                                n_jobs=-1)

Но опять же без примерки подходящих базовых моделей.

1 Ответ

0 голосов
/ 11 февраля 2020

Я думаю, вам не нужно stackingRegressor для этого.

сделать что-то вроде этого:

prediction =[]
for reg in regressors:
     predictions.append(reg.predict(X))

xgboost.fit_predict(prediction)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...