限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410
微信公众号
关键字全网搜索最新排名
【机器学习算法】:排名第一
【机器学习】:排名第二
【】:排名第三
【算法】:排名第四
线性回归及L2正则
大家对于线性回归以及带有二范数正则的线性回归已经比较熟悉了,其权值可以采用正规方程求解1范数,亦可采用基于梯度下降的迭代求解。本文首先带大家回顾一下线性回归,然后主要介绍Lasso回归以及其求解方式。
回顾线性回归
回顾Ridge回归
由于直接套用线性回归可能产生过拟合,需要加入正则化项,如果加入的是L2正则化项,就是Ridge回归,有时也翻译为脊回归。它和一般线性回归的区别是在损失函数上增加了一个L2正则化的项,和一个调节线性回归项和正则化项权重的系数α。损失函数表达式如下:
Ridge回归的解法和一般线性回归大同小异。如果采用梯度下降法,则每一轮θ迭代的表达式是:
如果用最小二乘法,则θ的结果是:
Ridge回归在不抛弃任何一个变量的情况下,缩小了回归系数,使得模型相对而言比较的稳定,但这会使得模型的变量特别多,模型解释性差。有没有折中一点的办法呢?即又可以防止过拟合,同时克服Ridge回归模型变量多的缺点呢?这就是下面说的Lasso回归。
Lasso回归
Lasso回归有时也叫做线性回归的L1正则化,和Ridge回归的主要区别就是在正则化项,Ridge回归用的是L2正则化,而Lasso回归用的是L1正则化。Lasso回归的损失函数表达式如下:
Lasso回归使得一些系数变小,甚至还是一些绝对值较小的系数直接变为0,因此特别适用于参数数目缩减与参数的选择1范数,因而用来估计稀疏参数的线性模型。
但是Lasso回归有一个很大的问题,导致需要把它单独拎出来讲,就是它的损失函数不是连续可导的,由于L1范数用的是绝对值之和,导致损失函数有不可导的点。也就是说,我们的最小二乘法,梯度下降法,牛顿法与拟牛顿法对它统统失效了。那我们怎么才能求有这个L1范数的损失函数极小值呢?
OK,本文总结了两种全新的求极值解法坐标轴下降法( )和最小角回归法( Least Angle , LARS)。PS:主要是为了告诉大家这类问题该如何求解,所以不会详细的叙述求解算法的原理,想详细了解可以查看相关文档,后期会统一给大家一份推荐阅读的博客清单。
坐标下降法
坐标轴下降法顾名思义,是沿着坐标轴的方向去下降,这和梯度下降不同。梯度下降是沿着梯度的负方向下降。不过梯度下降和坐标轴下降的共性就都是迭代法,通过启发式的方式一步步迭代求解函数的最小值。
坐标轴下降法的数学依据主要是这个结论(此处不做证明):一个可微的凸函数J(θ), 其中θ是nx1的向量,即有n个维度。如果在某一点θ¯,使得J(θ)在每一个坐标轴θ¯i(i = 1,2,…n)上都是最小值,那么J(θ¯i)就是一个全局的最小值。
于是我们的优化目标就是在θ的n个坐标轴上(或者说向量的方向上)对损失函数做迭代的下降,当所有的坐标轴上的θi(i = 1,2,…n)都达到收敛时,我们的损失函数最小,此时的θ即为我们要求的结果。
下面我们看看具体的算法过程:
限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410