岭回归&Lasso回归
转自:https://blog.csdn.net/dang_boy/article/details/78504258
https://www.cnblogs.com/Belter/p/8536939.html
https://www.cnblogs.com/Belter/p/8536939.html (这个也写的很好,只不过还没看)
1.最小二乘法则
假设我们有n个样本数据,每个数据有p个特征值,然后p个特征值是线性关系。
即对应的线性模型

写成矩阵的形式即是Y=XA,误差B矩阵:即B=Y-XA。【Y和A是列向量,X是矩阵】
误差的平方的计算公式
Xi为行向量,A为列向量。
最小二乘法的目标就是取得最小的e对应的A,由于方差的计算是一个二次函数,即抛物线,对应存在一个最小值,即导数为0对应的A。所以对e求A的偏导数,再使其等于0,求解方程即可以获得A。
误差的平方e写成矩阵形式即为
对矩阵E取迹(迹就是矩阵对角线上所有元素的累加)且对迹求导后结果为一个矩阵。
即为
展开为
求导化简结果为
注:这个计算的过程是涉及到向量的求导运算,看了好长时间实在是看不懂。也不知道这个结果是怎么计算出来的,暂且记住吧。。
参考:https://blog.csdn.net/lipengcn/article/details/52815429
当A的维数比Y的维数多,即样本数量n少于特征值p的时候存在多个解,可能导致结果很不稳定,所以要确保n>p。
X矩阵不存在广义逆(即奇异性)的情况:
1)X本身存在线性相关关系(即多重共线性),即非满秩矩阵。
当采样值误差造成本身线性相关的样本矩阵仍然可以求出逆阵时,此时的逆阵非常不稳定,所求的解也没有什么意义。
2)当变量比样本多,即p>n时.
这时,回归系数会变得很大,无法求解。在统计学上,可证明A的最小二乘解为无偏估计,即多次得到的采样值X而计算出来的多个系数估计值向量 的平均值将无限接近于真实值向量β。
2.岭回归
那么解决不存在矩阵广义逆:
在误差矩阵加上一个对A的L2范数控制系数矩阵,

而LASSO回归是加上的L1范数作为正则项。
反映到矩阵上,就是在原先的A的最小二乘估计中加一个小扰动λI,

变为满秩矩阵,可以求稳定的逆。
具体推导过程就不贴了,贴了也看不懂。
3.LASSO回归

只是在于正则项的不同。
4.对于偏差与方差的理解
看到这个图觉得很不错:

偏差:预测出来的数据与真实值的差距
方差:预测出来的数据的分散程度
岭回归&Lasso回归的更多相关文章
- 笔记︱范数正则化L0、L1、L2-岭回归&Lasso回归(稀疏与特征工程)
机器学习中的范数规则化之(一)L0.L1与L2范数 博客的学习笔记,对一些要点进行摘录.规则化也有其他名称,比如统计学术中比较多的叫做增加惩罚项:还有现在比较多的正则化. -------------- ...
- 【机器学习】正则化的线性回归 —— 岭回归与Lasso回归
注:正则化是用来防止过拟合的方法.在最开始学习机器学习的课程时,只是觉得这个方法就像某种魔法一样非常神奇的改变了模型的参数.但是一直也无法对其基本原理有一个透彻.直观的理解.直到最近再次接触到这个概念 ...
- 线性回归——lasso回归和岭回归(ridge regression)
目录 线性回归--最小二乘 Lasso回归和岭回归 为什么 lasso 更容易使部分权重变为 0 而 ridge 不行? References 线性回归很简单,用线性函数拟合数据,用 mean squ ...
- 机器学习之五 正则化的线性回归-岭回归与Lasso回归
机器学习之五 正则化的线性回归-岭回归与Lasso回归 注:正则化是用来防止过拟合的方法.在最开始学习机器学习的课程时,只是觉得这个方法就像某种魔法一样非常神奇的改变了模型的参数.但是一直也无法对其基 ...
- 机器学习:模型泛化(LASSO 回归)
一.基础理解 LASSO 回归(Least Absolute Shrinkage and Selection Operator Regression)是模型正则化的一定方式: 功能:与岭回归一样,解决 ...
- 多元线性回归模型的特征压缩:岭回归和Lasso回归
多元线性回归模型中,如果所有特征一起上,容易造成过拟合使测试数据误差方差过大:因此减少不必要的特征,简化模型是减小方差的一个重要步骤.除了直接对特征筛选,来也可以进行特征压缩,减少某些不重要的特征系数 ...
- 机器学习--Lasso回归和岭回归
之前我们介绍了多元线性回归的原理, 又通过一个案例对多元线性回归模型进一步了解, 其中谈到自变量之间存在高度相关, 容易产生多重共线性问题, 对于多重共线性问题的解决方法有: 删除自变量, 改变数据形 ...
- 通俗易懂--岭回归(L2)、lasso回归(L1)、ElasticNet讲解(算法+案例)
1.L2正则化(岭回归) 1.1问题 想要理解什么是正则化,首先我们先来了解上图的方程式.当训练的特征和数据很少时,往往会造成欠拟合的情况,对应的是左边的坐标:而我们想要达到的目的往往是中间的坐标,适 ...
- 岭回归和Lasso回归以及norm1和norm2
norm代表的是距离,两个向量的距离:下图代表的就是p-norm,其实是对向量里面元素的一种运算: 最简单的距离计算(规范)是欧式距离(Euclidean distance),两点间距离是如下来算的, ...
随机推荐
- JavaScript正则表达式1
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码. 正则表达式可以: •数据有效性验证.可以 ...
- input 监听输入事件
$("#" + inputId).on("input", function () { var checkboxId = $("#" + in ...
- php开n次方
php有开平方函数 sqrt,但没开n次方的函数 网上用根据什么数字原理,可用次方(pow)弄开方,格式为:pow(number, 1/ 开方数) 例如: 4的开平方,可以写成 pow(4, 1/2) ...
- Python 处理命令行参数
optparse模块用于从命令行直接读取参数,用法基本与 argparse模块 一致,如下: #!/usr/bin/env python #-*- coding:utf-8 -*- from optp ...
- Java Integer常量池
public class IntegerExample { public static void main(String[] javalatte) { Integer i = 10; Integer ...
- PHP实现IP–数字互相转换
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Python学习之k-近邻算法
1. K-近邻算法 # coding=utf-8 from numpy import * import operator def createDataSet(): group = array([[1. ...
- 服务器报错 500,请确保 ASP.NET State Service(ASP.NET 状态服务)已启动
报错信息: 解决方案: 开启此服务
- ZoomIt v4.5
https://technet.microsoft.com/en-us/sysinternals/bb897434.aspx zoomIt: 演示必备辅助软件 ZoomIt(主页|介绍)是一款非常实用 ...
- js的delete和void关键字
delete关键字 delete关键字的作用: 删除对象的属性 语法:delete 对象.属性 可以删除没有使用var关键字声明的全局变量(直接定义在window上面的属性) delete关键字的 ...