如何防止堆叠模型中的过度拟合?

人工智能 机器学习
2021-11-08 04:24:50

我理解机器学习中堆叠模型背后的直觉,但即使经过彻底的交叉验证方案模型似乎也过拟合了。我在 kaggle 论坛上看到的大多数模型都是大型集合,但似乎很少过度拟合。

1个回答

将训练数据和管道划分成网络以进行独立训练的有效性,尽管对于特定情况可能是一种有效的解决方法,但并不表示在广泛的输入数据集上拟合卓越的稳健解决方案。

正如 varshaneya 在评论中所建议的那样,过度拟合可能是由于正则化元参数化不令人满意的结果,例如 StackGAN 中的 λ 正则化参数设置不佳。应仔细检查用于调整堆叠架构的所有元参数,以确定其设置是否会导致过度拟合。一些可以预先消除。例如,设计中任何网络的任何级别的学习率太高会降低收敛概率,但不太可能导致过度拟合。

H. Hutson、S. Geva 和 P. Cimiano 在2017 年提交给第 13 届 NTCIR 信息访问技术评估会议的文件中写道, “机器学习中的集成方法涉及通过诸如 bagging 等多种方法组合多个分类器(平均或投票)、提升和堆叠,以提高性能并减少过度拟合。” 然而,根据我们的经验,bagging 并没有对不同的数据集产生稳健的响应,即使经过标准化、过滤以降低噪声水平并且冗余是有限的。

周志华和季峰[中国南京大学软件新技术国家重点实验室指出]写道:“为了降低过度拟合的风险,每个森林产生的类向量是通过 k 折交叉验证生成的。 " 阅读他们的论文Deep Forest可能会给你一些评估的理由。

过度拟合通常是应用过于复杂的模型来拟合数据。在激活网络的世界中,过度复杂可能就像一个或多个堆叠网络中的网络层数量过多一样简单。

可能需要预先提取特征以从输入中消除复杂性,这不仅是不必要的,而且会适得其反,从而产生有用的输出。