机器学习——正则化

正则化(Regularization)简介

在机器学习中,正则化是用来防止模型过拟合的一种方法。通过向模型的损失函数中加入一个正则项(也叫惩罚项),约束模型的复杂度,使其更具泛化能力。

为什么需要正则化?

  • 过拟合(Overfitting)
    • 训练集的误差很小,但在测试集上的表现较差。
    • 通常是因为模型过于复杂,过度拟合训练数据的噪声或细节。
  • 正则化的作用
    • 限制模型的自由度(降低复杂度)。
    • 让模型更加平滑,从而提升对未见数据的泛化能力。

样例

下面是加入正则项的损失函数

要是的损失函数最小,就需要使 w1,w2 变得无穷小,以满足 最小

最后使得模型等同于上图第一个模型

常见的正则化方法

1. L1 正则化(Lasso Regularization)
  • 定义 : 在损失函数中加入参数绝对值的和作为正则项:
  • 特点
    • 能将某些特征的权重缩小到 0,从而实现特征选择。
    • 更适合用于稀疏数据或希望简化模型的场景。

2. L2 正则化(Ridge Regularization)
  • 定义: 在损失函数中加入参数平方和作为正则项:

  • 特点

    • 不会强制权重为零,而是让权重更趋向于较小值。
    • 常用于回归模型(如 Ridge Regression)中。
3. Elastic Net 正则化
  • 定义 : 同时结合 L1 和 L2 的正则化形式:
  • 特点
    • 结合了 L1 和 L2 的优点。
    • 在稀疏数据和多重共线性场景下效果更好。
4. Dropout(丢弃法)
  • 原理: 在训练时,随机丢弃神经网络中的一部分神经元(即将部分输出设为 0)。
  • 特点
    • 防止深度神经网络过拟合。
    • 增强网络的鲁棒性,相当于对多个子模型进行集成。

正则化中的关键参数

  • 正则化强度 (λ\lambdaλ)

    • 控制正则化项的影响力。
    • λ\lambdaλ 太大:模型可能欠拟合。
    • λ\lambdaλ 太小:正则化效果不足,可能过拟合。
    • 通常通过交叉验证选择最优 λ\lambdaλ。
  • 选择正则化方法

    • 数据稀疏:优先选择 L1 或 Elastic Net。
    • 数据规模大,特征较多:优先选择 L2。

总结

正则化是控制模型复杂度、防止过拟合的核心技术。根据具体任务需求,可以选择 L1、L2、Elastic Net、Dropout 或其他正则化方法来提升模型的泛化能力。

相关推荐
pzx_00120 分钟前
【集成学习】Boosting算法详解
人工智能·python·深度学习·算法·机器学习·集成学习·boosting
tt55555555555531 分钟前
机器学习学习笔记-20241204-注意力机制和空间归纳偏置
笔记·学习·机器学习
Channing Lewis36 分钟前
经典编程题:服务器广播
python·算法
啊波次得饿佛哥43 分钟前
4. 模型训练
人工智能·机器学习
饮啦冰美式1 小时前
人工智能及深度学习的一些题目(三)
人工智能
whaosoft-1431 小时前
w~深度学习~合集4
人工智能
Ritsu栗子1 小时前
代码随想录算法训练营day27
c++·算法
小冯的编程学习之路1 小时前
【LeetCode】:稀疏相似度【困难】
c++·算法·leetcode
羊小猪~~1 小时前
C/C++语言基础--C++STL库算法记录(质变算法、非质变算法、查找、排序、排列组合、关系算法、集合算法、堆算法等)
c语言·开发语言·数据结构·c++·算法·stl
qystca1 小时前
炸弹 (boom.c)(100分双端递推+分割线优化)
算法