了解如何识别、预防和解决机器学习中的过拟合问题。探索提高模型泛化和实际性能的技术。
机器学习(ML)中的过拟合是指模型对训练数据的学习效果太好,捕捉到的是噪音和随机波动,而不是基本模式。这会导致模型在训练数据集上表现出色,但对未见过的新数据的泛化能力却很差。从本质上讲,模型变得过于复杂,专门为训练示例量身定制,类似于记忆答案而不是理解概念。这是训练人工智能模型时经常遇到的难题,尤其是像Ultralytics YOLO 用于物体检测和图像分割等任务的神经网络这样的复杂算法。
过度拟合之所以会出现,是因为 ML 模型的目标是尽量减少训练数据的误差。如果模型拥有过高的复杂度(例如,深度学习模型中参数或层数过多),它甚至可以拟合训练集中存在的随机噪声。这种噪声并不代表真正的潜在模式,也不太可能出现在新的数据集中。试想一下,在某一天根据某人的精确测量量身定制一套西装,如果他的体重稍有波动或有其他人试穿,这套西装可能就不太合身了。在人工智能中,这种训练数据上的 "完美契合 "会导致在真实世界数据上缺乏灵活性和性能低下,这通常被称为泛化能力差。
与此相反的问题是拟合不足,即模型过于简单,无法捕捉数据的潜在结构。拟合不足的模型在训练数据和新数据上的表现都很差,因为它还没有学到足够的知识。我们的目标是找到一个最佳平衡点(通常在偏差-方差权衡的背景下进行讨论),创建一个能很好地泛化到未见数据的模型。高方差是过拟合的特征,而高偏差则是欠拟合的特征。理解这一权衡概念对模型开发至关重要。
通常通过比较模型在训练数据集和单独验证数据集上的性能来识别过度拟合。
有几种技术可以帮助减轻过度拟合,提高模型的泛化能力:
通过了解和解决过拟合问题,开发人员可以建立更可靠、更有效的人工智能模型。Ultralytics HUB等工具可协助进行实验跟踪和模型评估,在模型开发生命周期内帮助检测和缓解过度拟合问题。