文章来源于SAMshare ,作者flora
🚙正则项
正则项的作用—防止模型过拟合,正则化可以分为L1范数正则化与L2范数正则化
🚙L1 AND L2范数
范数:
-
范数其实在 [0,∞)范围内的值,是向量的投影大小
-
在机器学习中一般会用于衡量向量的距离。一般会用||x||
简单来说也就是范数其实在 [0,∞)范围内的值,是向量的投影大小,在机器学习中一般会勇于衡量向量的距离。范数有很多种,我们常见的有L1-norm和L2-norm,其实还有L3-norm、L4-norm等等,所以抽象来表示,我们会写作Lp-norm,一般表示为 :
对于上面这个抽象的公式,如果我们代入p值,
若p为1,则就是我们常说的L1-norm:
若p为2,则是我们常说的L2-norm:
我们引用文章里的图片,L2-norm的距离就是两个黑点之间的绿线,而另外的3条线,都是L1-norm的大小。
✍️ L1 and L2正则项
在上面我们有提及到,L1、L2范数可以用于损失函数里的一个正则化项,作用就是降低模型复杂度,减小过拟合的风险。这里的正则化项,存在的目的就是作为一个“惩罚项”,对损失函数中的某一些参数做一些限制,是结构风险最小化策略的体现,就是选择经验风险(平均损失函数)和模型复杂度同时较小的模型。
针对线性回归模型,假设对其代价函数里加入正则化项,其中L1和L2正则化项的表示分别如下所示,其中λ >= 0,是用来平衡正则化项和经验风险的系数。
(1)使用L1范数正则化,其模型也被叫作Lasso回归(Least Absolute Shrinkage and Selection Operator,最小绝对收缩选择算子)。
(2)使用L2范数正则化,其模型被叫做Ridge回归,中文为岭回归。
🚙 机器学习中一般怎么选择正则项
1)因为L1范数正则化项的“稀疏解”特性,L1更适合用于特征选择,找出较为“关键”的特征,而把一些不那么重要的特征置为零。
2)L2范数正则化项可以产生很多参数值很小的模型,也就是说这类的模型抗干扰的能力很强,可以适应不同的数据集,适应不同的“极端条件”。
🚙 如何作为Loss Function
讲完了作为正则化项的内容了,那么讲讲L1、L2范数作为损失函数的情况。假设我们有一个线性回归模型,我们需要评估模型的效果,很常规的,我们会用“距离”来衡量误差!
若使用L1-norm来衡量距离,那就是我们的LAD(Least Absolute Deviation,最小绝对偏差),其优化的目标函数如下:
实际意义上的解释就是预测值与真实值之间的绝对值。
若使用L2-norm,那就是我们的LSE(Least Squares Error,最小二乘误差),其优化的目标函数如下:
针对两者的差异,可以看下表:
L1损失函数的结果更具鲁棒性,也就是说对于异常值更加不敏感。而根据其范数“天性”,L2的求解更为简单与“唯一”。