L1、L2正则化
发布时间:2020-12-14 04:25:57 所属栏目:百科 来源:网络整理
导读:当模型的参数过多时,很容易遇到过拟合的问题。这时就需要有一种方法来控制模型的复杂度,典型的做法在优化目标中加入正则项,通过惩罚过大的参数来防止过拟合。 过拟合的时候,拟合函数的系数往往非常大,而正则化是通过约束参数的范数使其不要太大,所以可
当模型的参数过多时,很容易遇到过拟合的问题。这时就需要有一种方法来控制模型的复杂度,典型的做法在优化目标中加入正则项,通过惩罚过大的参数来防止过拟合。过拟合的时候,拟合函数的系数往往非常大,而正则化是通过约束参数的范数使其不要太大,所以可以在一定程度上减少过拟合情况。
一般情况下,取p=1或p=2,分别对应L1,L2正则化,两者的区别可以从下图中看出来,L1正则化(左图)倾向于使参数变为0,因此能产生稀疏解。实际应用时,由于我们数据的维度可能非常高,L1正则化因为能产生稀疏解,使用的更为广泛一些。
上图中的模型是线性回归,有两个特征,要优化的参数分别是w1和w2,左图的正则化是L1,右图是L2。蓝色线就是优化过程中遇到的等高线,一圈代表一个目标函数值,圆心就是样本观测值(假设一个样本),半径就是误差值,受限条件就是红色边界(就是正则化那部分),二者相交处,才是最优参数。可见左边的最优参数只可能在坐标轴上,所以就会出现0权重参数,使得模型稀疏。这个图告诉我们,如果你太绝对相信那个目标了,沉迷其中,那些还没遇到的样本一来,你拔不出来就挂掉了。
正则化就是通过对模型的参数设定一个先验来防止过拟合。
如果不加正则化项,那么最优参数对应的等高线离中心点的距离可能会更近,加入正
则化项后使得训练出的参数对应的等高线离中心点的距离不会太近,也不会太远。从而避免了过拟合。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c – “:: value”在哪里获得价值?
- 数组 – Swift:如何将数组乘以数组(Math:vector by vecto
- Catalina\localhost下的xml文件配置
- flexbox input 自动清空输入框内容
- c – 在Windows上混合Qt和Objective-C
- c# – System.Data.SQLite从NuGet,interop dll不会复制到输
- oracle – ORA-00932:不一致数据类型:expected – 获取CL
- xml – 用于从平面树问题创建嵌套列表的XSL
- c# – WPF:在ListView中添加项目时提高事件
- React 相关方法(API)介绍-ReactDom、ReactDOMServer、子