正则化是机器学习和深度学习中常用的一种方法,主要用于防止模型过拟合。
“正则化(regularization)”中的“正则”一词可以从中文的字面意思和其英文对应的词语“regular”来理解。
“正则”的字面意思
- “正”:在汉语中有“正常”、“规范”的意思,指的是符合规范或标准的状态。
- “则”:可以理解为“规则”、“法则”,指代某种原则、标准或约束。
因此,“正则”可以理解为使事物符合一定规则或标准,保持其规范性、规律性。它强调通过某种机制来使事物保持在一个“正常”或“规范”的状态。
跟正则表达式的正则区别
-
正则化的目的是通过某种惩罚机制(如L1、L2正则)让模型变得不那么复杂,防止它过度拟合数据中的噪声,使得模型更好地泛化到新数据上。
-
正则表达式用于处理字符串,通过定义符合某种规则的字符序列,能够进行匹配、查找、替换等操作。其“正则”强调的是如何根据一定的语法规则来描述字符串的结构和模式。
两者的“正则”都可以追溯到“regular”这个词,意思都是“规则”或“规范”。正则化是对模型施加某种“规则”或“约束”,而正则表达式则是用某种“规则”来匹配文本。因此,两者在词源上有相似之处,都与规则、模式相关,但具体应用和功能完全不同。
正则化的意义
在机器学习模型中,模型往往有很多参数,若不加以限制,模型可能会变得过度复杂,从而过拟合训练数据,导致在新数据上的表现变差。
正则化通过引入某种惩罚机制,约束模型参数的大小或复杂度,迫使模型变得更简单和泛化能力更强,使模型学到的规律不仅适用于训练数据,也适用于新的数据。
正则化在模型训练过程中的位置
常见的模型训练过程:
- 数据输入:输入特征数据集(如图像、文本或数值数据)。
- 前向传播:根据当前的模型参数,计算模型的预测输出。
- 计算损失函数:通过损失函数衡量预测结果与真实值之间的误差。
- 计算目标函数:将损失函数和正则化项加在一起,形成最终的目标函数。
- 优化目标函数:使用优化算法(如梯度下降),最小化目标函数,从而调整模型参数。
- 参数更新:在考虑损失和正则化项的情况下,更新模型参数。
- 循环迭代:重复该过程,直到模型收敛或达到指定的训练轮次。
正则化贯穿于这个全局过程中的目标函数计算和优化步骤,其主要作用是防止模型过拟合、平衡模型的复杂度,从而提高模型的泛化能力。
说明:在机器学习中,我们的目标是通过优化算法(如梯度下降)最小化目标函数,找到最优的模型参数,从而让模型具有较好的泛化能力。
目标函数通常由两部分组成:
- 损失函数(Loss Function):衡量模型预测与真实值之间差异的函数。
- 正则化项(Regularization Term):用来控制模型复杂度的额外约束项。
正则化项通常被添加到目标函数中,作为损失函数之外的一个附加部分,形式为:
目标函数 = 损失函数 + λ⋅正则化项
其中,λ
是正则化系数,用来控制正则化项在目标函数中所占的权重。
常见的正则化项包括:
- L1 正则化:对模型参数的绝对值进行惩罚。
- L2 正则化:对模型参数的平方和进行惩罚。
L1 正则化(Lasso)
在目标函数中加入所有权重的绝对值之和,即在损失函数中加上 \gamma {\textstyle \sum_{i}^{}\left | w_i\right | }
,其中 _
是模型参数,````是正则化系数。 通过这样,达到效果:
-
L1 正则化可以产生稀疏的权重矩阵,即很多参数会变为零,因此常用于特征选择。
-
它强制一些不重要的特征权重变为零,从而使模型更加简洁。
L2 正则化(Ridge)
作用:在目标函数中加入所有权重的平方和,即在损失函数中加上 \gamma {\textstyle \sum_{i}^{} w_i^2 }
。 通过这样,达到效果:
- L2 正则化会使权重尽可能的小,但不会让权重变为零。
- 它倾向于分布权重,使模型更加平滑,适用于防止过拟合。
总结
正则化是通过在目标函数中添加一个惩罚项来约束模型的参数,特别是模型中的权重或系数,防止模型过度拟合训练数据的一种方法。
正则化的作用是什么?
防止过拟合:模型在训练集上的表现可能很好,但如果模型过于复杂,它可能会记住训练数据中的噪声或异常点,从而在新数据上表现不佳。正则化通过惩罚大权重,使得模型无法完全拟合训练数据中的细节和噪声,减少模型的复杂度,从而提升泛化能力。
简化模型:正则化特别是在 L1 正则化的情况下,可以强迫一些权重变为零,从而使模型只依赖最重要的特征。这可以使模型更简洁。
标签:函数,模型,正则,参数,拟合,化项 From: https://www.cnblogs.com/ghj1976/p/18440492/regularization