Blending与Stacking大致相同,只是Blending的主要区别在于训练集不是通过K-Fold的CV策略来获得预测值从而生成第二阶段模型的特征,而是建立一个Holdout集,例如说10%的训练数据,第二阶段的stacker模型就基于第一阶段模型对这10%训练数据的预测值进行拟合。说白了,就是把Stacking流程中的K-Fold CV 改成 HoldOut CV。
1、特征准备,使用模型训练出第一步数据集合: 首先使用k-fold训练集,得到k(train,test)组训练,测试数据,使用训练数据训练出的模型,test测试数据的分类概率,依次循环完所有训练数据,得到一维特征,依次n种训练模型,将模型预测最初的测试数据得出预测概率,为待测试数据集合Y,得出n维特征预测概率X。
2、模型预测,使用集成模型对第一步中训练出的X,Y进行训练,得出一个升级模型,最终使用这个模型来预测数据test。