L1正则化和L2正则化

这篇具有很好参考价值的文章主要介绍了L1正则化和L2正则化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在机器学习以及深度学习中我们经常会看到正则化这一名词,下面就浅谈一下什么是正则化?以及正则化的意义所在?

一、什么是正则化?

L1正则化和L2正则化
正则化项 (又称惩罚项),惩罚的是模型的参数,其值恒为非负
λ是正则化系数,是一个超参数,调节惩罚的力度,越大则惩罚力度越大。

二、正则化的目的?

L1正则化和L2正则化
先上图:
上图从左到右依次为:欠拟合、理想状态、过拟合
欠拟合从字面意思来看就是欠缺拟合程度,这一般在复杂度很低的模型中出现。从数学上来看,一元一次函数为一条直线、一元二次函数为一个曲线,以此类推。那么参数越多,其越能拟合更复杂的特征,但是一味的增加模型的复杂度就会造成过拟合现象。一旦过拟合,模型的泛化能力以及鲁棒性将特别差。那么怎么结局过拟合现象呢?
在从数学方面分析来看,为了减小过拟合,要将一部分参数置为0,最直观的方法就是限制参数的个数,因此可以通过正则化来解决,即减小模型参数大小或参数数量,缓解过拟合。
在神经网络中,激活函数(以sigmoid为例)如下图
L1正则化和L2正则化
如果我们的正则化系数(lambda)无穷大,则权重w就会趋近于0。权重变小,激活函数输出z变小。z变小,就到了激活函数的线性区域,从而降低了模型的非线性化程度。

三、L1和L2正则化

(一)L1正则化

L1正则化,又称Lasso Regression,是指权值向量w中各个元素的绝对值之和。比如 向量A=[1,-1,3], 那么A的L1范数为 |1|+|-1|+|3|。
L1正则化可以让一部分特征的系数缩小到0,所以L1适用于特征之间有关联的情况可以产生稀疏权值矩阵(很多权重为0,则一些特征被过滤掉),即产生一个稀疏模型,可以用于特征选择。L1也可以防止过拟合。
那么L1为什么会产生一个稀疏权值矩阵呢?
L1正则化是权值的 绝对值之和,所以L1是带有绝对值符号的函数,因此是不完全可微的。机器学习的任务就是要通过一些方法(比如梯度下降)求出损失函数的最小值。当我们在原始损失函数后添加L1正则化项时,相当于对损失函数做了一个约束。
L1正则化和L2正则化
此时我们的任务变成在约束下求出取最小值的解。考虑二维的情况,即只有两个权值和 ,此时对于梯度下降法,求解函数的过程可以画出等值线,同时L1正则化的函数也可以在二维平面上画出来。如下图:

(1)、从优化问题来看

L1正则化和L2正则化
上面的图不是很清楚,补充如下:
L1正则化和L2正则化

图中蓝色圆圈线是Loss中前半部分待优化项的等高线,就是说在同一条线上其取值相同,且越靠近中心其值越小。
黄色菱形区域是L1正则项限制。带有正则化的loss函数的最优解要在黄色菱形区域和蓝色圆圈线之间折中,也就是说最优解出现在图中优化项等高线与正则化区域相交处。从图中可以看出,当待优化项的等高线逐渐向正则项限制区域扩散时,L1正则化的交点大多在坐标轴上,则很多特征维度上其参数w为0,因此会产生稀疏解;而正则化前面的系数,可以控制图形的大小。越小,约束项的图形越大(上图中的黄色方框);越大,约束项的图形就越小,可以小到黑色方框只超出原点范围一点点,这是最优点的值中的可以取到很小的值。

(二)、L2正则化

L2正则化是指权值向量中各个元素的平方和然后再求平方根,对参数进行二次约束,参数w变小,但不为零,不会形成稀疏解 。它会使优化求解稳定快速,使权重平滑。所以L2适用于特征之间没有关联的情况。
L1正则化和L2正则化考虑二维的情况,即只有两个权值和 ,此时对于梯度下降法,求解函数的过程可以画出等值线,同时L1正则化的函数也可以在二维平面上画出来。如下图:

L1正则化和L2正则化

图中蓝色一圈一圈的线是Loss中前半部分待优化项的等高线,就是说在同一条线上其取值相同,且越靠近中心其值越小。图中黄色圆形区域是L2正则项限制。带有正则化的loss函数的最优解要在loss函数和正则项之间折中,也就是说最优解出现在图中优化项等高线与正则化区域相交处。从图中可以看出,当待优化项的等高线逐渐向正则项限制区域扩散时L2正则化的交点大多在非坐标轴上,二维平面下L2正则化的函数图形是个圆,与方形相比,被磨去了棱角。因此与相交时使得或等于零的机率小了许多,这就是为什么L2正则化不具有稀疏性的原因。

四、两种正则化的不同

(一)、从梯度方面来看

L1正则化和L2正则化

L1正则化和L2正则化

上图分别为(左侧)L1、(右侧)L2正则化的反向传播函数

相对于L1:比原始的更新规则多出了 η ∗ λ ∗ s g n ( w ) / n η * λ * sgn(w)/n ηλsgn(w)/n这一项。当w为正时,更新后的w变小。当w为负时,更新后的w变大——因此它的效果就是让w往0靠,使网络中的权重尽可能为0,也就相当于减小了网络复杂度,防止过拟合。
相对于L2:在不使用L2正则化时,求导结果中w前系数为1,现在w前面系数为 1 − η λ / n 1−ηλ/n 1ηλ/n ,因为η、λ、n都是正的,所以 1 − η λ / n 1−ηλ/n 1ηλ/n小于1,它的效果是减小w,这也就是权重衰减(weight decay)的由来。当然考虑到后面的导数项,w最终的值可能增大也可能减小。更小的权值w,从某种意义上说,表示模型的复杂度更低,对数据的拟合刚刚好(这个法则也叫做奥卡姆剃刀),而在实际应用中,也验证了这一点,L2正则化的效果往往好于未经正则化的效果。
综合以上两个式子:当 w w w处于 [ 1 , + ∞ ] [1, +\infty] [1,+]时,L2比L1获得更大的减小速率,而当 w w w处于 ( 0 , 1 ) (0,1) (0,1)时,L1比L2获得更快的减小速率,并且当w越小,L1更容易接近到0,而L2更不容易变化。下图反应的更为形象一些。
L1正则化和L2正则化

(二)、概率方面来看

L1正则化和L2正则化文章来源地址https://www.toymoban.com/news/detail-467028.html

到了这里,关于L1正则化和L2正则化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • L1范数,L2范数,L2,1范数(向量范数、矩阵范数、正则化)

    参考文章如下:https://blog.csdn.net/lqzdreamer/article/details/79676305                          https://blog.csdn.net/lqzdreamer/article/details/79676305         一般常用范数来衡量向量,向量的Lp范数定义为:          Lp范数示意图:         从图中可以看出,p的取值在 [0,1) 之间,范数

    2023年04月09日
    浏览(26)
  • 剪枝基础与实战(2): L1和L2正则化及BatchNormalization讲解

    CIFAR10 是深度学习入门最先接触到的数据集之一,主要用于图像分类任务中,该数据集总共有 10个 类别。 图片数量: 6w 张 图片宽高: 32x32 图片类别:10 Trainset: 5w 张,5 个训练块 Testset: 1w 张,1 个测试块 Pytorch 集成了很多常见数据集的API, 可以通过pytorch 来下载这些数据集,

    2024年02月11日
    浏览(25)
  • 深度学习——常见损失函数Loss:L1 ,L2 ,MSE ,Binary Cross ,Categorical Cross ,Charbonnier ,Weighted TV ,PSNR

    在深度学习中,损失函数是一个核心组件,它度量模型的预测结果与真实值之间的差异。通过最小化损失函数的值,模型能够在训练过程中逐渐改善其性能。损失函数为神经网络提供了一个明确的优化目标,是连接数据和模型性能的重要桥梁。 选择合适的损失函数是非常重要

    2024年01月24日
    浏览(45)
  • 【2023团体程序设计天梯赛CCCC】GPLT2023,L1~L2部分(PTA,L1-089~L1-096,L2-045~L2-048)题解代码&复盘

    概要 L1部分:L1-089~L1-096 L2部分:L2-045~L2-048 L3部分:L3-033~L3-036 L1-089 最好的文档 5 L1-090 什么是机器学习 5 L1-091 程序员买包子 10 L1-092 进化论 10 L1-093 猜帽子游戏 15 L1-094 剪切粘贴 15 L1-095 分寝室 20 L1-096 谁管谁叫爹 20 L2-045 堆宝塔 25 L2-046 天梯赛的赛场安排 L2-047 锦标赛 25 L2-048

    2024年02月01日
    浏览(32)
  • L1&L2,范数&损失

    L2 范数 = 欧几里得范数(Euclidean norm) = 欧式长度(欧氏距离) = L2距离 ,对应 ||x|| 2 L2范数损失 = L2-norm损失 = 最小平方误差(least squares error, LSE) = 最小二乘误差 。它是把目标值y与估计值f(x)的差值的平方和最小化。一般回归问题会用此损失,离群点对次损失影响较大。 L2损失

    2024年02月06日
    浏览(35)
  • 【机器学习】数据预处理 - 归一化和标准化

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 处理数据之前,通常会使用一些转换函数将 「特征数据」 转换成更适合 「

    2024年02月15日
    浏览(38)
  • 深入区块链层:L1 和 L2

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AivxuuH0-1664858847219)(htTPS://tva1.sinaimg.cn/large/e6c9d24ely1h4r0auxvmxg20tr04ojug.gif)] L2解决方案是为了解决网络吞吐量问题而创建的。然而,关于它们的设计和未来发展的问题需要更多的关注,特别是在以太坊合并

    2024年02月02日
    浏览(33)
  • 【机器学习 | 深度学习】Colab是什么?以及如何使用它?

    Colaboratory(简称为Colab)是由Google开发的一种基于云端的交互式笔记本环境。它提供了免费的计算资源(包括CPU、GPU和TPU),可让用户在浏览器中编写和执行代码,而无需进行任何配置和安装。 Colab的目标是使机器学习和数据科学的工作更加便捷、灵活和可共享。 下面是Col

    2024年02月09日
    浏览(31)
  • 2023 PTA天梯赛补题(L1 & L2)

    输入输出题 输入输出题 k == n 和 k == m 分别输出,题目怎么说就怎么做 判断一下c 等于a + b还是a*b或者都不是,分别按要求输出 针对每一群玩游戏的宝宝,枚举判断一下就好了 写的有点烦,基本就是一步一步模拟,思路在注释里写了 枚举分配方案,代码中a代表女生寝室的数

    2024年02月03日
    浏览(30)
  • 股票接口L2是什么意思?和L1有哪些区别

    股票接口L2是什么意思,L2股票指二级市场,二级报价是证券公司的高级报价功能,包括十档行情等功能,投资者可以联系其业务部门或直接通过互联网申请开业,需要一定的费用。 L1是免费,L2平台会收取一定的费用,用户买卖股票一定要选择正规的平台,在正规平台投资股

    2024年02月11日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包