赞
踩
最小二乘法是回归问题中的一种数学优化工具,它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便的求得位置的数据,使得求得的数据与真值之间误差的平方和最小。
最小二乘,广义来说就是机器学习中的平方损失函数:
L(Y,f(X)))=(Y−f(X)))2
根据模型函数f 的线性和非线性之分,最小二乘也相应地被分为线性最小二乘法和非线性最小二乘法。
(参考:最小二乘法)
(1)曲线拟合,即拟合模型参数(如最简单的 y=kx+b)
(2)求解方程组的解(如 AX=Y)
(参考:什么是最小二乘法?)
假设有一个样本集合 (xi,yi), i=1,2,...,n是 y=kx+b 直线上的 n 个点,试用这个样本集合拟合出这条直线,也就是求解该线性方程的参数解。
目标函数:
J(k,b)=∑ni=1(kxi+b−yi)2
利用目标函数在极值点处各个参数的偏导数为 0 的性质,即可解得模型参数:
(参考:最小二乘法的本质是什么?)
上述三是线性最小二乘法一个特例,使用的是最简单的代数法解法,下面介绍更方便计算的矩阵法解法。
如下为线性最小二乘法求解模型参数更一般的形式,其中 d 为参数维度,n 为样本个数。
∑dj=1(bj∗xij)=yi,i=1,2,...,n
上述一般形式的最小二乘法公式可用矩阵法表示:
XB=Y
采用 LS 法,问题转换为:
J(B)=‖XB−Y‖
ˆB=argmin(J(B))
通过对 J(B) 进行微分求最值,可得:
XTXB=XTY(称该式为正规方程)
当XTX 为非奇异矩阵时,B 有唯一解:
ˆB=(XTX)−1XTY
(参考:最小二乘法(Least Squares Method))
如下为线性最小二乘法求解线性方程组更一般的形式, 其中 d 为参数维度,n 为样本个数。
yj=∑ni=1(bij∗xi),j=1,2,...,d
用矩阵方式表示:
BX=Y
则有:
XLS=(BTB)BTY
(参考:一般线性最小二乘法)
(参考:线性回归原理及实现(一):最小二乘法)
(1)原理简单,容易实现;
(2)最优解唯一。
(参考:最小二乘法不永远是最优的方法)
(1)需要计算 XTX 的逆矩阵,而 XTX 可能非奇异,即它的逆矩阵不存在,这样就没有办法直接用正规方程求解;
(2)另一方面,当样本特征很大时,求解逆矩阵非常耗时;
(3)如果拟合函数不是线性函数,那么无法使用最小二乘法,需要通过某种技巧转换为线性才能使用。(这种情况可以使用梯度下降法)
(参考:最小二乘法(least sqaure method))
(1)当样本的数量小于参数维度时;
(2)当 不是满秩时(在机器学习里表示:特征矩阵中至少存在某一个特征向量和其他特征线性相关)。
(1)增加样本量;
(2)做特征选择,保证特征矩阵满秩;
(3)正则化。
(参考:机器学习十大经典算法之最小二乘法)
闭式解:又称解析解,是通过严格的公式推导,计算出来的函数解(有严格的、具体的函数形式);
数值解:采用某种计算方法,近似计算出来的一个数值,它不是严格的函数解,只是一个近似解。
(参考:闭式解(解析解))
(参考:什么是闭式解)
称式 XTXB=XTY 为正规方程。一般情况下,求解线性回归模型通常使用正规方程的方式。使用正规方程求解,只需要构造模型参数矩阵、自变量矩阵、因变量矩阵,构造出矩阵之后就可以交给计算机进行矩阵运算了。
正规方程只适用于线性模型,不适用于逻辑回归等其他模型。梯度下降法适用于各种类型的模型。
(参考:正规方程(标准方程)法---笔记)
(参考:线性回归与最小二乘法)
(参考:正规方程的推导过程)
如果样本数据是一个时序序列,那么随着时间推移,数据会不断的过来,在这种情况下,不停的使用 LS 方法求解是非常消耗资源和内存的,所以需要采用一种递推/序贯的方式实现解的不断更新。
RLS 目标:从 LS 的解 推导出 的形式,其中 为修正量。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。