过拟合与欠拟合:找到平衡点

2024 年 12 月 11 日

阅读时间

作者

Tim Mucci

Writer

Gather

过拟合与欠拟合

数据科学家和工程师在训练机器学习 (ML) 模型时,有可能会使用过于简单的算法来捕捉数据中的潜在模式,从而导致欠拟合;或者使用过于复杂的算法,从而导致过拟合。管理过拟合欠拟合数据科学工作流和开发可靠的人工智能 (AI) 系统的核心挑战。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

机器学习中的偏差和方差

偏差和方差解释了工程师需要取得的平衡,以帮助确保机器学习模型的良好拟合。因此,偏差-方差权衡是解决欠拟合和过拟合问题的核心。

有偏差的模型会对训练数据做出强有力的假设,以简化学习过程,从而忽略其无法解释的细微差别或复杂性。方差是指模型对训练数据中学习波动的敏感度。

高偏差模型的例子包括线性回归算法或浅层决策树,它们假设简单的线性或二元关系,即使数据模式更为复杂。

对具有二次关系的数据使用线性回归模型会导致欠拟合,因为线性模型无法捕捉到固有的曲率。因此,该模型在训练集和未知的测试数据上的表现都很差,因为它不能很好地泛化到新数据上。

泛化是指模型理解所学模式并将其应用于未见数据的能力。方差小的模型也往往拟合不足,因为它们过于简单,无法捕捉复杂的模式。然而,低偏差模型如果过于灵活,则可能会过拟合。

高方差表示模型可能捕捉到训练数据中的噪声、特异性和随机细节。高方差模型过于灵活,导致训练误差较低,但在对新数据进行测试时,学习到的模式无法泛化,导致测试误差较高。

试想一下,在考试时只记住答案,而不是自己去理解获取答案所需的概念。如果考试内容与所学内容不同,你将很难回答问题。在差异和偏差之间取得平衡是机器学习模型实现最佳性能的关键。

如何识别过拟合和欠拟合

规则

  • 过拟合:训练误差较低,但测试误差明显更高。
  • 欠拟合:训练和测试数据集的误差始终很高。

过拟合模型会导致模型在训练数据上的准确率很高,但在新数据上的准确率却很低,原因在于记忆而非泛化。当工程师使用的机器学习模型参数或层数过多(例如深度学习神经网络),使其对训练数据具有很强的适应性时,就会出现过拟合现象。

在小数据集或噪声数据集上进行训练时,模型可能会记住特定的数据点和噪声,而不是学习一般模式。如果数据包含错误或不一致之处,模型可能会错误地将其作为有意义的模式来学习。

工程师会寻找训练和测试之间的性能差距,但他们也能从学习曲线中发现过拟合的情况,即训练损失降至零,而验证损失增加,这表明泛化效果不佳。

过拟合模型的另一个标志是其决策边界,即模型学习到的数据点分类规则。在过拟合模型中,判定边界会变得过于复杂和不稳定,因为它会适应训练集中的噪声,而不是捕捉真正的潜在结构,这进一步表明了过拟合。

此外,由于“维度诅咒”,高维数据集可能导致过拟合。随着特征数量的增加,数据点变得稀疏,使得模型更难找到有意义的模式,从而增加了方差和过拟合的风险。

欠拟合模型在训练数据和测试数据上的表现不佳,因为它未能捕捉到数据集中的主要模式。工程师通常会通过两个数据集上持续较差的性能来识别欠拟合。

欠拟合模型还往往在学习曲线中显示出较高的误差,返回次优的评估指标,并表现出系统性的残差模式,所有这些都表明模型无法有效地学习数据中的潜在关系。

机器学习中的欠拟合现象通常是由于模型过于简单、特征工程不完善或过度正则化而导致模型的灵活性受到限制。同样,特征选择不当,例如省略交互项或多项式特征,也会妨碍模型理解数据中的隐藏关系。预处理不充分、训练时间不足或缺乏足够的数据来训练模型也会导致欠拟合。

过拟合和欠拟合的示例

过拟合

医学诊断模型
对机器学习模型进行训练,以便在小型数据集上将医学图像分类为“健康”或“疾病”。该模型可以记忆训练图像,达到近乎完美的准确度,但在新图像上的表现却很差,因为它学习了训练数据中的特定噪声或伪影,而不是一般的疾病特征。

金融模型使用具有许多参数的复杂神经网络预测股票价格。它不是学习趋势或模式,而是捕捉历史数据中的随机波动,从而得出高度准确的训练预测,但在对未来股票价格进行测试时却表现不佳。

客户流失预测
用户留存包含太多特定特征,例如非常详细的人口统计数据,导致其过拟合训练数据。当应用于更广泛的客户群时,它很难概括和识别不同人口统计的模式。

欠拟合

房价预测
线性回归模型仅根据平方英尺数预测房价。该模型未能考虑其他重要特征,例如房屋的位置、卧室数量或房龄,因此在训练和测试数据上表现不佳。

天气预报
模型使用一小套简单的特征,例如平均温度和湿度来预测降雨量。它无法捕捉到更复杂的关系,例如季节模式或多种大气因素之间的相互作用,因此准确性始终不佳。

图像识别
浅层决策树用于对猫和狗的图像进行分类。由于其简单性,它无法区分两种物种,在训练图像和未知的新图像上表现不佳。

如何避免过拟合和欠拟合

机器学习算法可以训练模型识别数据中的模式,使工程师能够利用它们来预测未知输入的未来结果。超参数调整在平衡过拟合和欠拟合方面发挥着重要作用,可确保预测模型有效泛化到未知的数据。

通过使用超参数,工程师可以对学习率、正则化强度、神经网络的层数或决策树的最大深度进行微调。适当的调整可以防止模型过于僵化或适应性过强。

过拟合

正则化

回归模型的正则化或神经网络中的信息漏失,是机器学习中使用的一种技术,通过防止模型过于依赖任何单个特征或拟合训练数据中的噪声。

常见的正则化类型包括 L1(通过将一些系数缩减为零来促进稀疏性)和 L2(缩小所有系数的大小,使模型更简单、更具泛化性)。正则化有助于模型专注于底层模式,而不是记住数据。

数据增强

数据增强是另一种有效的策略,尤其是在计算机视觉等任务中,通过翻转、旋转或裁剪图像人为地扩展训练数据,有助于模型更好地进行泛化。通过减少神经网络中参数或层的数量来简化模型,也会限制其记忆训练数据详细信息的能力。

K 折交叉验证

工程师还可以使用 K 倍交叉验证等技术来评估模型的泛化程度。K 倍交叉验证将数据分成若干子集,在其中一些子集上进行训练,然后在剩余的子集上进行测试。

同样,工程师也可以使用保留集,即从训练集中保留作为未知数据的信息,作为另一种评估泛化性能的方法。然后对结果进行平均,得出总体性能得分。

评估框架

除了这些技术之外,稳健的模型评估框架对于确保机器学习模型的良好泛化也至关重要。嵌套交叉验证是一种先进的评估技术,对超参数调整特别有用。在嵌套交叉验证中,外循环将数据分成训练子集和测试子集,以评估模型的泛化能力。

同时,内循环对训练数据进行超参数调整,以帮助确保调整过程不会过拟合验证集。这种方法将超参数优化与模型评估分离开来,从而更准确地估计模型在未知数据上的性能。

另一个有效的框架是将训练-测试分割与提前停止相结合,以监控训练过程中的验证损失。通过评估模型在专用验证集上的性能,工程师可以在验证性能趋于平稳或下降时停止训练,从而防止过拟合。

对于不平衡数据集的分类问题,评估框架应包括分层抽样,以帮助确保每个数据拆分都能保持与原始数据集相同的类别分布。这样既能防止对多数类的过拟合,又能对少数类的性能进行公平评估。

集成方法

集合方法(例如 bagging 和 boosting)将多个模型组合在一起,以减轻单个模型的弱点,提高整体泛化效果。例如,随机森林是一种流行的集成技术,它通过汇总来自多个决策树的预测来减少过拟合,从而有效平衡偏差和方差。

欠拟合

更复杂的模型

为了解决欠拟合的问题,工程师通常会提高模型的复杂性,以便更好地捕捉数据中的潜在模式。例如,从简单的线性回归转换到多项式回归,在关系特征和目标变量是非线性的情况下就会有所帮助。虽然更复杂的模型可以解决欠拟合的问题,但如果正则化不当,就有可能出现过拟合的情况。

正则化

减少正则化惩罚也可以让模型更灵活地拟合数据,而不会受到过多限制。例如,L1 和 L2 参数是用于检查模型复杂性的正则化类型。L1 (lasso) 添加了惩罚以鼓励模型仅选择最重要的特征。L2 (ridge) 有助于使模型在各个特征之间实现更均匀的分布。

特征工程

特征工程和选择在创建或转换特征方面发挥作用,例如添加交互项、多项式特征或编码分类变量,从而为模型提供更多相关信息。

训练时间

通过增加历元次数,为模型提供更多的训练时间,有助于确保模型有足够的机会从数据中学习。一个历元代表训练数据集的一次完整传递,多个历元可以让模型更有效地学习模式。

为了让模型更有效地学习数据中的模式,通常会使用多个历元。此外,增加训练数据集的大小也有助于模型识别更多样化的模式,从而降低过度简化的风险,提高泛化能力。

数据质量

总体而言,工程师应全面评估训练数据的准确性、完整性和一致性,并与可靠来源进行交叉验证,以解决任何差异。归一化(将数值在 0 和 1 之间进行缩放)或标准化(将平均值缩放为 0,标准偏差缩放为 1)等技术有助于确保模型不会因缩放比例不同而偏向某些变量。

随着时间的推移,输入数据的分布可能会发生变化(这种现象被称为数据漂移),这会导致模型对新数据欠拟合或过拟合。为了应对这种情况,定期监控和使用更新的数据集进行定期再训练至关重要。删除异常值也有助于防止结果偏差,提高模型的稳健性。

AutoML 等工具可以通过自动调整超参数、选择特征和创建模型评估框架,从而进一步简化流程,使工程师能够专注于更高层次的洞察分析和决策。

专家荟萃 | 播客

解码 AI:每周新闻摘要

加入我们的世界级专家团队,包括工程师、研究人员、产品负责人等,他们将穿透 AI 的喧嚣,为您带来最新的 AI 新闻和见解。

实现最佳模型拟合

良好的模型拟合是欠拟合和过拟合之间的最佳平衡。它所描述的模型既能准确捕捉数据中的基本模式,又不会对噪声或随机波动过于敏感。

  • 在模型的复杂性和泛化之间进行权衡,就是要在模型过于简单或过于复杂之间找到适当的平衡。
  • 工程师必须平衡偏差和方差,以达到最佳模型性能。其中一种方法是跟踪学习曲线,它将显示随时间变化的训练和验证误差。
  • 分析准确率、精确度、召回率或均方误差等验证指标有助于评估模型对未知数据的泛化程度。
  • 一个拟合良好的模型会仔细平衡模型的复杂性、训练数据和正则化技术,以便很好地泛化到新数据并提供准确的预测。

欠拟合和过拟合中的特定领域考虑因素

领域知识在解决欠拟合和过拟合问题中发挥着重要作用,因为它能帮助工程师根据当前问题的具体特征来定制模型。实际的数据集往往包含噪声、不平衡或不一致之处。

高效的后勤工作,例如适当的数据分割和预处理,有助于减少拟合问题。理解数据的背景有助于工程师在预处理、特征选择和设计方面做出明智决策,从而构建出训练有素的模型。例如:

  • 数据预处理:领域专业知识可帮助工程师确定哪些数据清理步骤是必要的,例如去除无关特征、处理缺失值或对数据进行归一化处理。例如,在医疗保健领域,确保准确反映患者的人口统计数据和病史可以使模型更加有效。
  • 特征选择:了解领域知识可以指导哪些特征与任务最相关,从而减少噪声并提高模型性能。例如,在金融领域,利率或市场趋势等关键指标比原始交易日志更具预测性。
  • 模型设计:对特定领域的深入了解可以为算法或架构的选择提供参考。例如,在图像识别任务中, 卷积神经网络 (CNN) 是理想的选择,而在时间序列分析中, 递归神经网络 (RNN) 或转换器可能效果更好。

在过拟合和欠拟合之间取得平衡,可以让工程师确定机器学习模型从僵化简单过渡到有意义的泛化的最佳范围,而不会变得过于复杂。一个平衡良好的模型可以预测不同人群的客户流失率,在数据质量存在差异的情况下对医学影像进行有效分类,以及通过捕捉市场趋势预测股票价格,而不会过拟合随机波动。

有效地管理偏差或方差权衡,可以产生准确学习数据模式的模型,同时保持适应未知情况所需的灵活性。通过实现这种平衡,数据科学家可以创建技术上合理且在实际应用中具有影响力的解决方案。

相关解决方案
IBM watsonx.ai

使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。

了解 watsonx.ai
人工智能 (AI) 解决方案

借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。

深入了解人工智能解决方案
AI 咨询与服务

通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。

深入了解人工智能服务
采取后续步骤

一站式访问跨越 AI 开发生命周期的功能。利用用户友好型界面、工作流并访问行业标准 API 和 SDK,生成功能强大的 AI 解决方案。

深入了解 watsonx.ai 预约实时演示