关于模型融合,方法依旧在网上有一大堆,近几年也没有太大的创新,
主要说一下的就是模型融合前应该画一画误差曲线,确定模型之间是否有融合的需要,比如一个模型完爆另外一个模型,那融合价值就很低。
kaggle ensembling guide(Kaggle中常用融合技术 )
计算了我们所有提交的皮尔逊相关系数,然后选择一些表现好但又相互不太相关的模型。通过多个结果的平均融合,我们获得了50名的进步。不相关的结果明显比相关的结果融合得来的要好。
1)平均
平均在一系列任务上有重要的作用。在分类和回归中,以及在不同的度量中如AUC,均方误差,和对数损失中都有重要作用。
平均可以减少过拟合。你希望在两个类之间获得一个平滑的分割平面。但是一个单一的模型的预测结果在边界上可能是粗糙的。
2)排序平均
有时候平均多个模型可能会有一些问题。不是所有的预测模型都能够完美的标准化。有时候预测的结果可能会在低概率和高概率处过于集中,或者集中再一个比较小的范围内。
当与其他模型融合的时候它可能根本不会改变融合的结果。我们的策略是先把预测转换为排名,然后平均他们的排序。然后将平均后的结果规范化到0,1区间内,你就能够获得一个平滑的预测。
3)特征加权线性堆叠
特征加权线性堆叠利用模型的预测结果堆积工程化的原始特征。这样做的目的是为堆积模型中的基本模型学习一个确定的特征值。线性算法用来保证获得结果迅速和简单。