简而言之,过拟合与欠拟合相反,当模型训练过度或包含太多复杂性时就会发生过拟合,导致测试数据的错误率很高。模型过拟合比欠拟合更常见,并且欠拟合通常是为了通过称为“提前停止”的过程来避免过拟合。
如果训练不足或缺乏复杂性导致欠拟合,那么合乎逻辑的预防策略是增加训练持续时间或添加更多相关输入。但是,如果对模型训练过多或向模型添加过多特征,则可能会出现模型过拟合,从而导致低偏差但高方差(即偏差-方差权衡)。在这种情况下,统计模型与其训练数据过于紧密匹配,导致它无法很好地推广到新的数据点。值得注意的是,某些类型的模型比其他模型更容易出现过拟合现象,例如决策树或 KNN。
识别过拟合可能比欠拟合更困难,因为与欠拟合不同,训练数据在过拟合模型中的执行精度很高。为了评估算法的准确性,通常使用一种称为 k 折交叉验证的技术。
在 K 折交叉验证中,数据被拆分为 k 个大小相等的子集,这些子集也称为“折叠”。其中一个“k 折”将充当测试集,也称为留出集或验证集,其余“折叠”则用于训练模型。不断重复这个过程,直到每个“折叠”都用作留出“折叠”。每次评估后,都会保留一个分数,在完成所有迭代后,会求这些分数的平均值,用于评估整个模型的性能。
拟合模型时,理想的情况是在过拟合和欠拟合之间找到平衡。确定两者之间的“最佳平衡点”使机器学习模型能够准确地进行预测。