一文看懂L1正则化使得学习模型稀疏化(拉格朗日)

正则化是指通过对学习模型的参数进行限制,对学习模型的算法思想进行修改从而有效减小学习模型的泛化误差而非训练误差的方法。我们知道训练学习模型的意义并不在与其在训练数据上的表现,而在于实际面对未知数据时模型的表现能否令人满意。当使用结构十分复杂的模型结构进行训练时,可能会出现在训练数据上模型表现正常但在未知的新数据上模型表型不佳的情况,导致模型的泛化能力下降。此时我们就要使用正则化来降低模型的复杂度。L1正则化是通过对学习模型的损失函数添加L1范数项来实现系统的正则化。使用L1正则化可以使得学习模型变得稀疏化,模型有效参数及规模减少和缩小使得学习模型的泛化误差减小,泛化能力增强。

拉格朗日角度:

L1正则化是通过对学习模型的损失函数添加L1正则项来实现模型参数的限制以及特征选择的作用。

先给出带L1正则项的损失函数数学表达式如下:

                           (1)

其中X,y分别为学习模型的训练样本数据以及相对应的标签,w为权重参数向量,b为偏置项;J()为模型原损失函 数,λ为正则化系数,与正则化力度正相关且λ值大于等于零。\Omega \left ( \omega \right )正则项。

在机器学习中权重参数向量的取值直接影响着学习模型最后的效果曲线的形状,而偏置项只牵扯到曲线的平移并且由于模型在学习过程中不仅会迭代修正权重参数向量,还会将偏置项一同进行修正,故最终总能得到合适的偏执项满足模型的误差要求。基于此我们只需要对权重参数向量进行L1正则化就可以得到满足要求的模型效果。故以下所有论证公式中省略偏置项。

我们为了控制权重参数向量的大小,将上式改写为如下优化方程形式:

控制权重参数向量的L1范数最大值为C,此时可将其改写成类似于(2)式形式的拉格朗日函数: 

 假设损失函数为均方误差MSE

此时问题转化为了一个带有约束条件的凸优化问题,即可通过求解拉格朗日方程得到函数的最优解。设最优解为(\omega^{*}\, \lambda ^{*})也可以根据KKT(Karush-Kuhn-Tucke)条件求解得到: 

我们假设只有两个权重参数,且原损失函数最优解为(w1*,w2*)位于可行解域之外,此时解空间是一个二维平面。如图下图,其中以(w1*,w2*)为圆心形成原损失函数的等值面且距离圆心越远的点对应的损失函数值越大,绿色的等直面为L1正则项所生成的,并且菱形等值面以及内部区域为方程的可行解域,在外侧的绿色菱形等值面对应的参数C要大于位于内侧的绿色菱形等值面。

此时以A'点为例,A'点处与两种等值面的交点处,根据拉格朗日乘子法的定义,我们可以最终可以得到如下结论:

                                                                        (2)

即L1正则项关于w的导数与正则化系数λ的乘积等于原损失函数关于w的偏导数。如上图,-J表示原损失函数关于w的偏导数所构成的向量的反向向量,dΩ(w)表示L1正则项关于w的导数所构成的向量,由于最优解位于可行域外,退而求其次,次优解一定会出现在可行域的边界上。根据 (2) 式, -J会将A'点向圆心拉去,并且想要使得-J 与λdΩ(w)大小相等,故最终学习模型只能沿着图中所示的红色虚线箭头达到A点,此时A点对应的坐标就为(0,w2a),A点就是在正则化参数C确定时对应的模型最优解。其中横向的权重参数为0,即实现了学习模型的稀疏化,并且通过L1正则项限制了参数的大小从而在一定程度上也减小了过拟合情况的发生。 

接着通过解空间讨论一种特殊情况当|w1*/w2*|的值接近于1时:

如上图对于最外侧的菱形解空间来说,当|w1*/w2*|≈1时,无论起始点在何处最后都会搜索到可行域中的最优解点A(w1A,w2A),而这时L1正则项并没有产生稀疏解,只对参数的大小进行了限制,减少了模型对特征的灵敏度,一定程度上抑制了模型的过拟合。从另一个角度也很好理解:当最优权重参数比值的绝对值接近于1时,说明这些权重对学习模型的训练效果影响是相当的,如果强制将其中某些特征的权重参数置零会对训练效果产生较大的影响,容易造成模型的过拟合。

以上整体是从拉格朗日求解的视角分析的,通过示意图以及 (2) 式我们不难得出结论:当模型的原损失函数形式确定时正则化系数λC呈负相关,且可以相互求得,正则化系数越大,正则化的惩罚力度越大,对应的拉格朗日函数可行域缩小,从而最终得到的权重参数向量越小,越容易产生欠拟合;反之则容易产生过拟合,因此在实际应用中要十分注意正则化参数的选取。同时当最优权重参数比值的绝对值接近于1时,正则化并不会使得特征权重向量稀疏化。

实际学习模型的训练中最多使用的方法中是没有参数C的,而是类似于 (1) 式的样子,因为两个式子的目标值是相同的,故在参数设定时只需要人为设定一个正则化系数λ就可以对学习模型进行正则化处理得到稀疏的权重参数向量,而对应的C也就包含其中。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值