一、为什么L1和L2正则化可防止过拟合?

线性模型常用来处理回归和分类任务,为了防止模型处于过拟合状态,需要用L1正则化和L2正则化降低模型的复杂度,很多线性回归模型正则化的文章会提到L1是通过稀疏参数(减少参数的数量)来降低复杂度,L2是通过减小参数值的大小来降低复杂度。下面我们从梯度角度进行分析。

1、L1正则化

L1正则化的损失函数为:

上式可知,当w大于0时,更新的参数w变小;当w小于0时,更新的参数w变大;所以,L1正则化容易使参数变为0,即特征稀疏化。

2、L2正则化

L2正则化的损失函数为:

由上式可知,正则化的更新参数相比于未含正则项的更新参数多了ηλnw\frac{\eta \lambda }{n}wnηλ​w项,当w趋向于0时,参数减小的非常缓慢,因此L2正则化使参数减小到很小的范围,但不为0。

更小的权值w,从某种意义上说,表示网络的复杂度更低,对数据的拟合刚刚好(这个法则也叫做奥卡姆剃刀)。

二、L0、L1和L2区别?

1、L0和L1之间的区别

L0范数是指向量中非0的元素的个数。如果我们用L0范数来规则化一个参数矩阵W的话,就是希望W的大部分元素都是0。

个人理解一是因为L0范数很难优化求解(NP难问题),二是L1范数是L0范数的最优凸近似,而且它比L0范数要容易优化求解。所以尽管L1范数和L0范数都可以实现稀疏,但L1因具有比L0更好的优化求解特性而被广泛应用。

2、L1和L2之间的区别及适用场景

L1在优化的时候,w在更新的时候,更偏向于收敛到0。也就是L1会趋向于产生少量的特征,而其他的特征都是0,使用L1可以得到稀疏的权值;所以L1适用于特征之间有关联的情况。
而L2在收敛的时候更偏向于收敛到到很小的参数,但一般不会是0。也就是L2会选择更多的特征,这些特征都会接近于0,使用L2可以得到平滑的权值;所以L2适用于特征之间没有关联的情况。
这个是什么缘由呢?其实就是,L2的求导后为一阶函数,对于大的w参数,惩罚作用大,对于小的w参数,惩罚作用小,很难惩罚到0,实际上起到了把大参数和小参数趋向于平均的作用;L1求导后为常数,无论对于大小参数,其惩罚作用一样,所以可以把小参数惩罚到0。

三、L1不可导的时候该怎么办?

Lasso回归的损失函数在0处不可导,因此不能直接使用梯度下降法进行求解。可以使用坐标轴下降法,即在各个坐标轴方向上进行下降。坐标轴下降法和梯度下降法具有同样的思想,都是沿着某个方向不断迭代,但是梯度下降法是沿着当前点的负梯度方向进行参数更新,而坐标轴下降法是沿着坐标轴的方向。

坐标轴下降法的数学依据为:

四、实现参数的稀疏有什么好处?

因为参数的稀疏,在一定程度上实现了特征的选择。一般而言,大部分特征对模型是没有贡献的。这些没有用的特征虽然可以减少训练集上的误差,但是对测试集的样本,反而会产生干扰。稀疏参数的引入,可以将那些无用的特征的权重置为0.

【L1正则化与L2正则化详解及为什么L1和L2正则化可防止过拟合】相关推荐

  1. 【正则化】Label Smoothing详解

    1. 概述 Label Smoothing(标签平滑),像 L1.L2 和 Dropout 一样,是一种正则化方法,通常用于分类问题,目的是防止模型在训练时过于自信地预测标签,改善泛化能力差的问题(也 ...

  2. smooth l1(huber)+binary cross entropy详解(tensorflow+pytorch)

    前言 上篇讲到yolo v2 loss中使用了两个loss分别时wh使用的smoothl1 loss以及其他的BCEloss,这里做个扩展介绍,并对比pytorch以及tensorflow的api接口 ...

  3. 【L2-020 功夫传人】天梯赛L2系列详解

    天梯赛L2-020 功夫传人 题目详情: 思路: 这个题目的看着就感觉需要深搜一下,不妨将样例画出来,思路就突然涌来了.很明显的一道深搜的题目: 题目刚开始输入的一行信息整体的信息:宗门人数,祖师爷功 ...

  4. 【L2-019 悄悄关注 】天梯赛L2系列详解

    天梯赛L2-019 悄悄关注 题目详情: 输入样例1: 10 GAO3 Magi Zha1 Sen1 Quan FaMK LSum Eins FatM LLao 8 Magi 50 Pota 30 L ...

  5. 【L2-030 冰岛人】天梯赛L2系列详解

    天梯赛L2-030 冰岛人 题目详情: 思路: 先搞清楚题目要求我们干什么? 直接看输出格式部分,四种情况:异性,同性,有无共同祖先,是否在名单内. 1.判断性别:如果是维京人那么通过性别后缀,否则通 ...

  6. 【L2-024 部落】天梯赛L2系列详解

    天梯赛L2-024 部落 题目详情: 输入样例: 4 3 10 1 2 2 3 4 4 1 5 7 8 3 9 6 4 2 10 5 3 7 输出样例: 10 2 Y N 思路: 很明显的并查集的一道 ...

  7. 【L2-026 小字辈】天梯赛L2系列详解

    天梯赛L2-026 小字辈 (25 分) 题目详情: 输入样例: 9 2 6 5 5 -1 5 6 4 7 输出样例: 4 1 9 思路: 这个题目当时写了一种递归的方法,但是递归的不好,测试数据太大 ...

  8. 【L2-031 深入虎穴】天梯赛L2系列详解

    天梯赛L2-031 深入虎穴 题目详情: 思路: DFS遍历!!! 这个题目的思路很简单,就是遍历一颗数,找到最末尾的节点,输出它就可以了. 这个题目还有一个要注意的点,就是在你遍历的时候,要注意找到 ...

  9. 特征选择方法详解Part2-卡方检验、互信息(Mutual Information)

    Content 1. 单变量分析 1.1 卡方检验 1.1.1 原理 1.1.2 使用示例 1.2 互信息(Mutual Information) 1.2.1 原理 1.2.1.1 互信息(Mutua ...

最新文章

  1. 错误时自动退出bash shell脚本[重复]
  2. 系统学习机器学习之决策树
  3. [ZigBee] 9、ZigBee之AD剖析——AD采集CC2530温度串口显示
  4. python——while 语句
  5. Ambari 2.6.0 HDP 2.6.3集群搭建
  6. 二维傅里叶变换是怎么进行的?
  7. php拖拽原理,JS拖拽效果及原理解析
  8. ASP.NET Core中借助CSRedis实现安全高效的分布式锁
  9. C++Primer学习笔记:第4章 表达式
  10. 给数据库字段增加前缀
  11. 【习题 5-8 UVA - 230】Borrowers
  12. 基于无监督深度学习的单目视觉的深度和自身运动轨迹估计的深度神经模型
  13. 阿里云提示微擎被挂图片木马详解
  14. 微软开源 TensorFlow-DirectML,为 WSL2 提供 GPU 支持
  15. 热电偶校验仪_热电偶校验方法_南昌手持热工校验仪,杭州全功能热工过程校验仪厂家...
  16. JavaWeb一些常用操作
  17. Apache常见报错问题
  18. mven2 + androMDA 初探
  19. 贵州学业水平测试信息技术软件,贵州信息技术学业水平考试系统操作手册.doc...
  20. 今日头条笔试8/23第二题

热门文章

  1. 地理空间框架基本规定
  2. 深聊性能测试,从入门到放弃之: Windows系统性能监控(二) 资源监控器介绍及使用。
  3. 运营商关闭2g服务器,中国联通正在关闭2G网络 但用户完全不必恐慌
  4. 短信认证被宣布不安全,将被何种方式取代?
  5. 直播回顾丨MeterSphere一站式开源持续测试平台的初心与方向
  6. 12亿元抄底地产股,中邮系圈“地”路线图曝光
  7. int8_t int16_t int32_t等数据类型的定义
  8. python自动操作微信_Python + Appium 自动化操作微信入门
  9. java getfield_Java 反射:通过 getField() 设置公共全局变量
  10. C++ 头文件和源文件