首页 > 其他分享 >【机器学习】过拟合/欠拟合+正则化

【机器学习】过拟合/欠拟合+正则化

时间:2024-09-12 21:49:34浏览次数:3  
标签:机器 模型 拟合 正则 L2 L1 参数

正则化

1. 过拟合/欠拟合

正则化通过在损失函数中添加约束,防止模型参数在迭代过程中无限制增长,进而提高模型的泛化能力。

在模型训练过程中,参数的优化实际上是不断迭代,以找到一个方程 H θ ( x ) H_{\theta}(x) Hθ​(x) 来拟合训练数据。然而,拟合程度的最佳水平仍需探讨。下面的回归模型拟合图展示了不同程度的拟合效果:

请添加图片描述

  • 欠拟合:最左边的图表明模型拟合程度过低,无法有效捕捉数据中的模式,导致训练集和测试集的准确率都较低。这表明模型泛化能力不强,无法很好地适应新数据。

  • 过拟合:最右边的图显示模型对训练数据的每个点都进行了精确拟合,包括噪声。这种高度复杂的模型虽然在训练集上表现出色,但在测试集上会因过度拟合噪声而表现较差。此外,过于复杂的模型往往会产生不平滑的曲线,失去对数据的有效预测能力。

  • 适中拟合(Good Fit):中间的图展现了最佳的拟合程度,模型既不过于复杂,也不过于简单,能够合理预测数据的趋势。尽管在训练集上的准确率不如过拟合模型,但其在测试集上的表现最好,泛化能力最强。

问题原因解决办法
欠拟合(Underfitting)1. 训练数据量不足。
2. 模型的复杂度过低。
3. 模型训练过早停止,参数未充分收敛。
4. 学习率过高。
1. 增加训练数据。
2. 增加模型的参数或采用更复杂的模型结构。
3. 增加训练轮次,确保模型参数充分收敛。
4. 调整学习率。
过拟合(Overfitting)1. 数据集中的噪声过多。
2. 特征数量过多。
3. 模型过于复杂。
1. 清洗数据,去除噪声和异常值。
2. 减少不必要的特征,降低模型的复杂性。
3. 引入正则化

2. 正则化

正则化(Regularization)是在机器学习和深度学习模型训练中,通过对模型的复杂度施加约束,以防止模型过拟合的一种技术。正则化的目的是在模型的损失函数中增加一个惩罚项,该惩罚项对模型的参数施加一定的约束,从而限制模型过度拟合训练数据中的噪声和细节,提高模型在未见数据(测试集)上的泛化能力。
正则化主要通过对模型的参数(权重)添加约束项来实现,常见的正则化方法包括 L1 正则化L2 正则化,它们的主要区别在于对参数的惩罚方式不同。

L1 正则化(Lasso Regularization)

L1正则化的惩罚项是参数的绝对值之和,其形式如下:
L ( θ ) = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 + λ ∑ j = 1 m ∣ θ j ∣ L(\theta) = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 + \lambda \sum_{j=1}^{m} |\theta_j| L(θ)=n1​i=1∑n​(yi​−y^​i​)2+λj=1∑m​∣θj​∣

  • 损失函数的第一部分是模型的误差项,表示模型对训练数据的拟合程度。
  • 损失函数的第二部分是正则化项,表示所有模型参数(权重)的绝对值之和,带有正则化强度的权重 λ \lambda λ。

L1正则化的特点: L1正则化倾向于让某些参数权重( θ j \theta_j θj​) 变为零,这意味着它有助于进行特征选择,即只保留那些对模型影响较大的特征,而将不重要的特征的权重压缩到零。

L2 正则化(Ridge Regularization)

L2正则化的惩罚项是参数的平方和,其形式如下:
L ( θ ) = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 + λ ∑ j = 1 m θ j 2 L(\theta) = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 + \lambda \sum_{j=1}^{m} \theta_j^2 L(θ)=n1​i=1∑n​(yi​−y^​i​)2+λj=1∑m​θj2​

  • 损失函数的第一部分是模型的误差项。
  • 损失函数的第二部分是正则化项,表示所有模型参数的平方和,正则化强度由参数 (\lambda) 控制。

L2正则化的特点:L2正则化通过惩罚权重的平方值来限制模型的复杂度,强制所有权重变小,但不完全为零。相比L1正则化,它更加倾向于**缩小权重,**而不是直接将权重归零。L2正则化会使模型更加平滑,尤其是避免了过度拟合导致的模型过于复杂和拐来拐去的现象。它减少了模型对异常点和噪声的敏感度。

L1 与 L2 正则化的比较

特性L1 正则化L2 正则化
惩罚项参数绝对值之和参数平方和
效果产生稀疏解,部分参数会被压缩为零所有参数被缩小,但不会压缩为零
适用场景特征选择,稀疏模型避免过拟合,参数的平滑约束
模型复杂度的影响减少模型复杂度,去掉不重要的特征限制模型复杂度,防止参数过大
算法Lasso 回归Ridge 回归
数学性质非平滑优化问题平滑优化问题

L1 + L2 正则化(Elastic Net)

在实际应用中,L1 和 L2 正则化可以结合使用,这种方法称为Elastic Net,其损失函数同时包含 L1 和 L2 正则化项:
L ( θ ) = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 + λ 1 ∑ j = 1 m ∣ θ j ∣ + λ 2 ∑ j = 1 m θ j 2 L(\theta) = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 + \lambda_1 \sum_{j=1}^{m} |\theta_j| + \lambda_2 \sum_{j=1}^{m} \theta_j^2 L(θ)=n1​i=1∑n​(yi​−y^​i​)2+λ1​j=1∑m​∣θj​∣+λ2​j=1∑m​θj2​
Elastic Net 同时具有 L1 的稀疏性和 L2 的平滑性,适用于高维数据集的特征选择和防止过拟合。

总结:

  • 正则化是一种通过增加惩罚项来限制模型复杂度的技术,用于防止模型过拟合。
  • L1正则化通过惩罚权重的绝对值,产生稀疏模型,并能够进行特征选择。
  • L2正则化通过惩罚权重的平方,限制模型参数的大小,使模型更加平滑且不易过拟合。

两者各有优劣,根据具体任务需求可以选择 L1、L2 或 Elastic Net 组合正则化策略。

标签:机器,模型,拟合,正则,L2,L1,参数
From: https://blog.csdn.net/fzy2003/article/details/142179678

相关文章

  • 【机器学习】层归一化(Layer Normalization)
    LayerNormalization(层归一化)是一种用于深度学习神经网络的归一化方法,它通过对神经元的输入进行归一化,使每一层的输入保持稳定,从而减缓梯度消失或梯度爆炸问题。与批量归一化(BatchNormalization)不同,LayerNorm不依赖于mini-batch,而是对每一个样本的每一层神经元进行归一......
  • 3. 轴指令(omron 机器自动化控制器)——>MC_Home
    机器自动化控制器——第三章轴指令2MC_Home变量▶输入变量▶输出变量▶输入输出变量功能说明▶欧姆龙制伺服驱动器1S系列的设定▶欧姆龙制伺服驱动器G5系列的设定▶NX系列位置接口单元的设定▶原点复位动作模式▶正方向极限输入时动作和负方向极限输入时动作▶原点复......
  • 1. 运动控制指令概要(omron 机器自动化控制器)
    机器自动化控制器——第一章运动控制指令概要1-1运动控制指令PLCopen®运动控制用功能块运动控制指令概要▶运动控制指令的种类▶状态变化▶运动控制指令的启动和状态▶异常处理▶执行运动控制指令时输入变量的变更(指令重启)▶通过选择缓存模式执行指令多重启动......
  • 机器线程数量突然激增的原因是什么?
    机器上的线程数量突然激增可能由多种原因引起。以下是一些常见的原因及其可能的解决方法:1.应用程序或进程问题某个应用程序或进程可能创建了大量线程,这通常是由于编程错误、资源泄漏或不当的线程管理引起的。解决方法:使用系统监控工具(如任务管理器、top、htop)查看哪个......
  • 用 Python 中的量子机器学习预测股票价格
    作者:老余捞鱼原创不易,转载请标明出处及原作者。写在前面的话:    今天,我们将深入量子计算与机器学习的交叉领域,探索量子机器学习。主要目标是比较量子神经网络与简单的单层MLP在预测股票价格时间序列方面的性能。    为了促进这个项目,我们将利用Fin......
  • 机器学习之手写阿拉伯数字识别
    样本:github.com/mc6666/Kera…markdown代码解读复制代码#手写阿拉伯数字识别本项目将使用TensorFlow和Keras构建一个卷积神经网络(CNN)模型来识别手写阿拉伯数字。以下是各个步骤的详细说明。python代码解读复制代码#导入必要的库importtensorflowastfimp......
  • 【机器学习】8 ——朴素贝叶斯
    机器学习8——朴素贝叶斯特征条件独立假设朴素是指每个特征独立地影响结果,整个假设在实际应用中不成立,主要是思想输入输出的来拟合概率分布,贝叶斯定理,后验概率最大文章目录机器学习8——朴素贝叶斯前言贝叶斯定理先验概率和后验概率一、先验概率二、后验概率例......
  • 机器学习,深度学习,AGI,AI的概念和区别
    1.人工智能(AI)的定义与范围1.1AI的基本概念人工智能(AI)是指通过计算机系统模拟人类智能的技术和科学。AI的目标是创建能够执行通常需要人类智能的任务的系统,如视觉识别、语音识别、决策制定和语言翻译。AI的核心在于其能够处理和分析大量数据,从中提取有用的信息,并根据这些......
  • 机器学习 - 课程笔记
    线性回归代价函数J,也被称为平方误差函数,用来描述假设函数值与真实值的误差大小。其中乘1/2是用于减少平均误差,并且后面求导会有一个2,可以消掉。线性回归的代价函数常用平方误差函数。假设函数的参数是x,代价函数的参数是θ。梯度下降法要得到最小化代价函数的Θ0和Θ1参数,在......
  • 机器学习特征-学习篇
    一、特征概念1.什么是特征特征是事物可供识别的特殊的征象或标志在机器学习中,特征是用来描述样本的属性或观测值的变量。它们可以是任何类型的数据,包括数字、文本、图像、音频等。作用:特征是训练和评估机器学习模型的基础。好的特征选择和提取能够显著提高模型的性能......