1.1.7. Least Angle Regression
简介
求极值的算法有很多,有基于梯度的,例如:
常规梯度下降、坐标梯度下降、最速梯度下降、共轭梯度下降
也有基于样本和角度的,例如:
前向选择,前向梯度,最小角回归
其中,最小角回归是前向选择和前向梯度的优化。
为了寻找最小值,每种算法采取了不同的方式,下面是初始点到极值(最值)点间的路径:
- 纯粹梯度下降的路径是不规则的折线,每个折线的方向是梯度负方向
- 最速下降走折线,且前后两条折线必正交,因为方向可重复
- 坐标梯度下降也走正交折线(方向必延坐标轴方向),方向可重复
- 共轭梯度下降走折线,其全局正交(走的是多维空间的”边”)
- 前向选择基于样本固定了路径的方向(基于样本,每个样本都是一种特征的线性组合),用残差选择方向,有投影逼近目标
- 前向梯度基于样本方向和长度,逐步逼近
- 最小角回归在前向梯度的基础上,对样本(初始线性组合)再做组合,每次组合合并一个样本,最后在样本数次步骤内解决问题
; 优点
- 因为它的迭代是基于样本的,所以在样本数远少于特征数时,它的效率会很高
- 它与前向选择是同样的时间复杂度(样本数)
- 它会生成一个完整的分段线性解路径,这在交叉验证或类似的模型优化尝试中非常有用。
- 如果两个特征与目标几乎相等相关,则它们的系数应以大致相同的速率增加。因此,该算法的行为与直觉所期望的一样,并且也更稳定。(可以很好的解决多重共线性)
- 可用于其它模型:比如lasso
缺点
基于残差(样本):对噪声很敏感
1.1.8. LARS Lasso
LassoLars是使用LARS算法实现的套索模型,与基于坐标下降的实现不同,这产生了精确的解,该解作为其系数范数的函数是分段线性的
Lars 算法几乎免费提供沿正则化参数的系数的完整路径,因此常见的操作是使用lars_path或lars_path_gram的函数之一检索路径。
该算法类似于前向逐步回归,但不是在每个步骤中包括特征,而是在一个方向上增加,该方向与每个系数与残差的相关性相等。
LARS 解不是给出向量结果,而是由一条曲线组成,该曲线表示
参数向量的l 1 l_1 l 1 范数。完整系数路径存储在形状 coef_path_
数组中 (n_features,max_features + 1)
。第一列始终为零。
Original: https://blog.csdn.net/matrix_studio/article/details/121351803
Author: matrix_studio
Title: 1.1.7. Least Angle Regression(最小角回归)和 1.1.8. LARS Lasso
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/634212/
转载文章受原作者版权保护。转载请注明原作者出处!