机器学习正则化解读

一、    正则化概述
1、    最大的目标:避免过拟合
2、    手段:通过减小模型复杂度从而达到过拟合,具体的做法是将可能包含噪声的权重系数减小或者直接降为0(去掉这个特征)。
3、    方法:L1正则化和L2正则化,L1正则化会让部分权重的值为0,L2正则化会让部分权重偏向于0。

二、    正则化由来
1、    直观说明
 机器学习正则化解读_第1张图片
对于上面3个训练出来的模型,第1个欠拟合,第2个刚刚好,第3个发生了过拟合,相应的模型复杂度也逐步增加。我们希望的就是通过降低模型复杂度,将第3个模型转化为第2个模型。

 机器学习正则化解读_第2张图片


上图中的三条曲线的复杂度,y1 > y2 > y3。曲线越复杂则曲线越波动,曲线越简单则曲线越平滑。y2与y1相比,系数变小。Y3与y2相比,缺少了一个自变量,相当于从高阶转换为低阶。所以,降低自变量的系数值,或者减少函数自变量的个数(自变量的系数为0)是可以降低函数复杂度的。

通常为了模型能够更好的拟合数据都是使得模型处于过拟合,为了降低模型的过拟合就需要使得模型部分权重为0或者降低模型的权重,所以我们会为损失函数添加一个惩罚项,数学表达式如下:
 
上式中的J(θ;X,y)表示原目标函数(没有添加正则化),Ω(θ)表示模型参数的惩罚项,惩罚项系数α∈[0,∞),α越大表示正则化惩罚越大。
对应L1和L2正则化分别为:

机器学习正则化解读_第3张图片
 
三、    正则化的影响
正则化的目的是限制参数过多或者过大,为了达到这一目的,最直观的方法就是限制w的个数,但是求解该问题非常困难,所以一般的做法是寻找更宽松的限定条件,比如 。正则化后的目标函数可以理解为:在最小化原目标函数的基础上多增加一个参数的约束函数,对于约束函数的要求就是它需要小于某个常数C。

机器学习正则化解读_第4张图片
     
1、    L1正则化(二维举例):
 

机器学习正则化解读_第5张图片
如上图所示,蓝色的圆圈表示问题可能的解范围,黄色的表示正则项可能的解范围。而整个目标函数(原问题+正则项)有解当且仅当两个解范围相切。L1范数是菱形的,其相切的点更可能在坐标轴上,而坐标轴上的点有一个特点,其只有一个坐标分量不为零,其他坐标分量为零,即是稀疏的。

2、    L2正则化(二维举例)
 

机器学习正则化解读_第6张图片机器学习正则化解读_第7张图片
  
将梯度切线方向和法线方向进行分解,为了使原代价函数取得最小值,我们需要将w按切线方向进行移动,当移动到w*时,梯度方向与切线方向垂直时梯度沿切线方向的分量为0,此时原代价函数取得最小值,所以w*为最优点。
通过上图观察,此时w*的取值接近于0,因为最优点会靠近某些轴(比较小权重对应的轴),导致部分权重取值接近于0,这就是为什么L2正则化会使得部分权重趋于0的原因。
 

 

 

四、    参考文档
1、    https://www.toutiao.com/article/6765465929674392076/?app=news_article×tamp=1649864215&use_new_style=1&req_id=20220413233655010133031096242301D8&group_id=6765465929674392076&wxshare_count=1&tt_from=weixin&utm_source=weixin&utm_medium=toutiao_android&utm_campaign=client_share&share_token=a953a589-21f5-41ce-b240-80f730a500c2&wid=1649925711837
2、    https://www.cnblogs.com/liuxiaochong/p/14253397.html?share_token=8874cd35-6a65-476a-8d70-855a1e49a228
3、    https://www.jianshu.com/p/96fb22e314be?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
4、    https://zhuanlan.zhihu.com/p/464085937

你可能感兴趣的:(机器学习)