最小二乘法(Least Squares Method)

  最小二乘法,是机器学习中的一个基础概念——却丝毫不影响它的重要性,本文将对其作一个详细的讲解,以便更好地掌握和利用。


1、最小二乘

  最小二乘,广义上来说其实是机器学习中的平方损失函数:

L(Y,f(X))=(Yf(X))2 L ( Y , f ( X ) ) = ( Y − f ( X ) ) 2

对应于模型 f f 的线性和非线性之分,最小二乘也相应地分为线性最小二乘和非线性最小二乘。
  我们通常所讲的“最小二乘法”,其实是狭义上的“最小二乘”,指的是在线性回归下采用平方损失函数,进行线性拟合参数求解的、矩阵形式的公式方法。
  线性最小二乘有闭式解,可用最小二乘法求解,也可采用迭代法(如梯度下降)求解;非线性最小二乘没有闭式解,只能采用迭代法求解。
  关于模型f的线性和非线性,读者可前往阅读参考文献[2]和[3],这里我们只强调,有些所谓的非线性模型可以通过适当的变换将其化为标准的线性模型,但并非所有的非线性模型都可以线性化。

2、最小二乘法

  前面做完了铺垫,这一节我们进入主题,讲一讲最小二乘法。
  考虑超定方程组(超定指未知数小于方程个数):

j=1nXijβj=yi,i=1,2,3,,m ∑ j = 1 n X i j β j = y i , i = 1 , 2 , 3 , … , m

其中,m代表样本数,n代表参数维度,将上式向量化得到:
Xβ=y X β = y

X=X11X21Xm1X12X22Xm2X1nX2nXmn,β=β1β2βn,y=y1y2ym X = [ X 11 X 12 ⋯ X 1 n X 21 X 22 ⋯ X 2 n ⋮ ⋮ ⋮ X m 1 X m 2 ⋯ X m n ] , β = [ β 1 β 2 ⋮ β n ] , y = [ y 1 y 2 ⋮ y m ]

  为了求解 β β 的最佳估计值 β̂  β ^ ,可采用最小二乘法,问题转化如下:
S(β)=||Xβy|| S ( β ) = | | X β − y | |

β̂ =argmin(S(β)) β ^ = a r g m i n ( S ( β ) )

通过对 S(β) S ( β ) 进行微分求最值,可得:
XTXβ=XTy X T X β = X T y

如果矩阵 XTX X T X 非奇异,则 β β 有唯一解:
β̂ =(XTX)1XTy β ^ = ( X T X ) − 1 X T y


参考文献

[1] https://www.zhihu.com/question/20822481
[2] https://baike.baidu.com/item/非线性最小二乘法/2697652
[3] https://baike.baidu.com/item/非线性模型
[4] https://baike.baidu.com/item/最小二乘法/2522346?fr=aladdin
[5] https://zh.wikipedia.org/wiki/最小二乘法
以上为本文的全部参考文献,对原作者表示感谢。

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值