StackingRegressor: как определить мета-функции?
У меня возникли некоторые трудности со StackingRegressor. На самом деле я тренировал много регрессоров и получаю хорошие результаты.
Я думаю, что я, вероятно, получу лучший результат, если я использую StackingRegressor, но я этого не сделал. И я думаю, что мне чего-то не хватает...
Вот мой код:
regressors=[rf, knn]
stregr = StackingRegressor(regressors=regressors, meta_regressor=LinearRegression())
Вот что я понимаю о суммировании: если randomforest лучше, чем knn, когда (например, obs - женщина), а knn лучше, чем randomforest, когда obs - мужчина, то стекирование будет использовать эту информацию и прогнозировать случайный лес для женщин и с кнн для мужчин.
Секс - это мета-функция, которая будет использоваться моделью стекирования.
Но, в моем примере, как я могу определить список мета-объектов? Какая мета-функция будет использоваться StackingRegressor, если я не укажу явно, какую из них использовать? Все доступные переменные? Никто?
Я также пытаюсь составить пакет со всеми своими регрессорами, но получаю очень и очень плохие результаты!!! То же самое, что и выше, я думаю, что мне нужно определить мета-функцию для использования, но я не знаю, как....
regressors=[rf, knn, gb, lasso, ridge, lr, svm_rbf, svm_lin, ada, xgb]
stregr = StackingRegressor(regressors=regressors, meta_regressor=LinearRegression())
Если кто-то поймет, как это работает, или получит какую-либо ссылку на ноутбук Python или что-нибудь, что поможет, это было бы здорово.
Заранее спасибо!