stack多个xgboost效果并不理想

  统计/机器学习 监督式学习    浏览次数: 732
2

我在尝试那个汽车保险的练习赛,我train了五个不同的xgboost的模型(模型参量不同)。然后我把这几个模型stack在一起之后的预测roc auc反而不如单个最好的那个xgboost。是我哪里做错了吗?还是有什么隐藏的技巧?


补充:我说的stack就是把五个xgboost的预测结果取均值。

 

Robin峰   2017-09-22 23:40



   3个回答 
4

如果每个xgboost都是用一样的数据、一样的特征训练出来的,那么它们会具有更高的相关性。用多个相关性高的模型进行组装,通常效果不会很好,一般来说是不会超过这几个模型最好的那个的。


蓝色北方   2017-09-24 10:03

1

stack多个模型就好比街头采访,采访的人越多越好,但同时被采访对象越多样性,越容易得到接近真实的反馈信息。

1、相关性高的模型stack在一起通常效果不好的。因为它们没有足够的多样性,彼此之间并不能提供很多不同的信息。

2、你也可以试试加权取平均,而不是等权重的平均。


ljljlj   2017-09-26 21:13

0

题主的方法准确地说应该是bagging,而不是stack吧

dzzxjl   2018-03-08 12:54

stacking和bagging的区别:http://sofasofa.io/forum_main_post.php?postid=1001591 - 派大星   2018-03-08 12:57
想说averaging的,打错了,不好意思。看了你给的链接,averaging应该还是属于stacking的 谢谢 - dzzxjl   2018-03-08 13:02
所以也并不是真正意义的stacking,也不是bagging - 派大星   2018-03-08 13:02


  相关主题

相比xgboost,GBDT有什么优势   2回答

xgboost是怎么做到regularization的?   2回答

xgboost怎么调参?   8回答

为什么lightgbm比xgb快?   2回答

xgboost展开到二阶导数有什么好处啊   1回答

xgboost中的参数min_child_weight是什么意思?   1回答

xgboost的FIT问题   1回答

把XGBRegressor保存到本地文件并调用   1回答

训练值都是正的,xgboost regression却预测出负数?   4回答

为啥Xgboost比GradientBoost好那么多?   5回答

xgboost可以做回归预测吗?   2回答

XGBClassifier设置random_state报错   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!