模型融合类型方式:

       1、简单加权融合:

               回归(分类概率):算术平均融合,几何平均融合

               分类:投票

               综合:排序融合,log融合

        2、stacking/blending

                构建多层模型,并利用预测结果再拟合

        3、boosting/bagging

                多树得提升方法

 

2)什么是stacking?

简单来说stacking就是利用初始训练数据学习出若干和学习器,将这几个学习器预测得结果作为新得训练集,

来学习一个新的学习器。

Datawhale模型融合

3)模型说明

         1、次级模型尽量选择简单得线性模型。

          2、利用K折进行交叉验证

Datawhale模型融合

 

代码示例:

   1)简单得加权平均,结果直接融合

Datawhale模型融合

 

   2)特殊加权融合形式,mean平均,median平均:

Datawhale模型融合

Datawhale模型融合

stacking融合(回归):

Datawhale模型融合

可以发现模型结果相对于之前有进一步的提升,这是我们需要注意的一点是,对于第二层Stacking的模型不宜选取的过于复杂,这样会导致模型在训练集上过拟合,从而使得在测试集上并不能达到很好的效果。

分类模型融合

    1)Voting投片机制

          voting分为软投票和硬投票,原理采用少数服从多数得思想。

from  sklearn.ensemble import VotingClassifier

Datawhale模型融合

软投票:

Datawhale模型融合

 

经验总结:

    1)结果层面得融合,有一个重要得条件就是模型得分比较近似,然后结果得差异要比较大,这样得结果融合往往有比较号得效益提升。

    2)特征层面得融合,主要是将特征进行分割给不同得模型,然后进行预测,这样得结果有时产生比较好的结果。

    3)模型层面的融合,部分模型的结果作为特征输入等,常用树模型等集成模型后面加个LR或者线性模型。最好模型层面的融合最好不同类型,有一定的差异/同种模型最好不同参数或者不同特征。

相关文章:

猜你喜欢
  • 2021-10-01
  • 2021-12-01
  • 2021-05-13
  • 2021-04-16
相关资源
相似解决方案