python模型集成知识点总结

编辑: admin 分类: python 发布时间: 2021-12-03 来源:互联网

说明

1、模型集成是指将一系列不同模型的预测结果集成在一起,从而获得更好的预测结果。

2、对于模型集成来说,模型的多样性非常重要。Diversityisstrength.用于集成的模型应尽可能好,同时应尽可能不同。

同一的网络,使用不同的随机初始化,多次独立训练,然后集成,意义不大。更好的方法是使用结构非常不同的模型进行集成,这样每个模型的偏差就会在不同的方向上相互抵消,结果就会更加稳定准确。

实例

可以用多种不同的方法来集成它们,最简单的办法是,取平均:

final_preds = 0.25 * (preds_a + preds_b + preds_c + preds_d)

由于每一个模型的性能会有差距,所以更好的办法是加权平均:

final_preds = 0.5 * preds_a + 0.25 * preds_b + 0.1 * preds_c + 0.15 * preds_d

知识点扩充:

当我们想在数据集上构建许多个模型,便可考虑使用集成的方法:

1. 挂袋法:并行进行,挂袋法集成中的每一个模型只使用训练集的一部分,它们的思路是减少对数据产生过度拟合,但前提是每个模型的差别不能太大,挂袋法对如线性回归之类的线性预测器无效。对于一些很稳定的模型,挂袋法的效果不明显,它适合那些对很小的改变也十分敏感的分类器,例如决策树,它很不稳定,未剪枝决策树就十分适合挂袋法。而KNN分类器则是一种很稳定的模型,不过我们可以使用随机子空间方法,为最近邻方法引入不稳定性。

2. 赋权重提升法:顺序进行,产生一个逐步复杂的模型序列,它按顺序基于前一个模型的错误训练新的模型,每次训练得到的模型被赋予一个权重,这个权重依据模型再给定数据的效果而定。最终的预测值产生时,这些权重值就是每个特定模型对于最终输出结果的影响力的判据。整体来说就是把错误率低的分类器赋予更大的权重。

3. 梯度提升法:由于赋权提升法使根据赋予错误实例更大的权重,然后是的下一个模型更可能选中这些错误分类的实例再次训练,而这也存在不足之处,这里梯度提升法采用梯度而不是权重来鉴别缺陷,基于调整残差(真实值y与预测值y')来完善上一个模型的缺陷。

到此这篇关于python模型集成知识点总结的文章就介绍到这了,更多相关python模型集成是什么内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!

【原URL http://www.yidunidc.com/sin.html 转载请说明出处】