机器学习中的欠拟合

当模型不能够准确地表达输入与输出的关系时,就是欠拟合。它在训练集和未见过的数据都会产生高误差率。过度拟合则在训练集表现出低误差率,只有对未见过的数据表现出高误差率。

当模型太过于简单时,它需要更多的训练时间、更多的输入特征、更少的正则化,此时欠拟合就可能会发生。当模型太过于复杂,随着更多的训练时间、更多的输入特征、更少的正则化处理,过度拟合就可能会发生。

欠拟合和过度拟合一样,不能够在数据中建立主导趋势,导致模型训练错误、性能低。模型当然就也很难很好地泛化到其他新的数据上(如果一个模型没有泛化的能力,那么这个模型几乎是没有用的)。这样的模型也就不能够用来做分类或预测的任务。

我们以前也提到过,高偏差和低方差是模型出现欠拟合的信号。低偏差、高方差则是出现过度拟合的信号。高偏差、低方差在训练数据集中就可以看出来,所以欠拟合比过度拟合好发现。当模型被过度训练或者太复杂,在测试数据集中就会体现出高误差率。 一般来说,过度拟合比欠拟合常见。有时,我们为了避免过度训练模型导致过度拟合,会提前停止模型训练,但是这个提前有时太早了,反而在这个情况下导致了欠拟合的问题。这里也引出另一种情况也会导致欠拟合,那就是训练不足,解决之道就是增加训练时间,这个又要考虑如何避免训练时间太长造成过度拟合的问题。训练时间的把握就是要权衡好这两者。

模型太简单,也会导致欠拟合,解决之道就是增加相关特征的输入。特征太少的话,在现实世界中,可能会对应很多可能的输出,这样的模型就像在胡说八道,实际上,是我们自己想得太简单了,增加相关的特征输入,就可以收窄这扇------更容易定位到我们期望的结果上。注意,如果增加太多长特征输入,又增加了模型过度拟合的可能性,造成模型低偏差、高方差。所以我们训练模型时,总要在欠拟合和过度拟之间找一个平衡点,就是要我们根据需求来权衡。这就是所谓的偏差方差平衡(bias-variance tradeoff)。

有一些机器学习模型更加容易出现过度拟合的问题,如决策树、KNN。要识别出过度拟合会比识别欠拟合更困难些。过度拟合在训练数据集就表现出高准确性,为了更好地评价模型是否真的有这些高的准确性,通常使用k-folds交叉验证。

在k-folds交叉验证中,数据集会被分成k个大小相关的子集(fold),接着把第一个子集充当测试集(验证集、留出集、抵抗组),剩下的数据都用作训练。然后,由二个子集充当测试集,剩下的数据都用作训练。依次类推,直到这k个子集都做过一次测试集为止。每一交迭代都会得到一个关于模型准确性的分数,当迭代完所有子集,将所得的分数取平均值,将其作为评价模型准确性的最终分数。我们可以根据这个分数,了解我们的模型的拟合情况。

相关推荐
MatpyMaster几秒前
液体神经网络LNN-Attention创新结合——基于液体神经网络的时间序列预测(PyTorch框架)
人工智能·pytorch·神经网络·时间序列预测
jndingxin6 分钟前
OpenCV 图形API(69)图像与通道拼接函数------将一个 GMat 类型的对象转换为另一个具有不同深度GMat对象函数convertTo()
人工智能·opencv·计算机视觉
带娃的IT创业者7 分钟前
《AI大模型应知应会100篇》第39篇:多模态大模型应用:文本、图像和音频的协同处理
人工智能·microsoft·音视频
算AI13 分钟前
LLM用于科学假设生成:探索与挑战
人工智能·算法
冷水鱼20 分钟前
docker部署MinerU web api
人工智能
一点.点22 分钟前
简单分析自动驾驶发展现状与挑战
人工智能·自动驾驶
山重水复疑无路@23 分钟前
NVIDIA --- 端到端自动驾驶
人工智能·机器学习·自动驾驶
落樱弥城33 分钟前
光流法:从传统方法到深度学习方法
人工智能·深度学习
乙真仙人43 分钟前
从困局到破局的AI+数据分析
人工智能·数据挖掘·数据分析
量子位1 小时前
阿里 Qwen3 问鼎开源王座!8 款模型全面开放,最大杯全方位超越 R1/o1,网友:让开源再次伟大
人工智能·开源·通义灵码