机器学习——正则化

正则化(Regularization)简介

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

为什么需要正则化?

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

样例

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

loss_{r}=loss_{f}+\lambda w_{3}^{2}+\lambda w_{4}^{2}

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

w_{3}x^{3}\rightarrow 0

w_{4}x^{4}\rightarrow 0

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

常见的正则化方法

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 或其他正则化方法来提升模型的泛化能力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值