我在使用 StackingRegressor 时遇到了一些困难。实际上,我训练了很多回归器并获得了不错的结果。
我认为如果我使用 StackingRegressor 可能会得到更好的结果,但我没有。而且我认为我错过了一些东西......
这是我的代码:
regressors=[rf, knn]
stregr = StackingRegressor(regressors=regressors, meta_regressor=LinearRegression())
以下是我对堆叠的理解:如果(例如)obs 是女性时 randomforest 比 knn 好,而当 obs 是男性时 knn 比 randomforest 好,则堆叠将使用此信息并使用随机森林预测女性和与男人的 knn。
性是 Stacking 模型将使用的元特征。
但是,在我的示例中,如何定义元功能列表?如果我没有明确告诉 StackingRegressor 使用哪个元功能,它将使用什么元功能?所有可用的变量?没有任何?
我也尝试与我所有的回归量进行堆叠,但我得到了非常非常糟糕的结果!!!与上面相同,我认为我需要定义一些要使用的元功能,但我不知道如何....
regressors=[rf, knn, gb, lasso, ridge, lr, svm_rbf, svm_lin, ada, xgb]
stregr = StackingRegressor(regressors=regressors, meta_regressor=LinearRegression())
如果有人了解它的工作原理或获得任何指向 python 笔记本的链接或任何帮助它会很棒。
提前致谢!