MATLAB | 最小二乘法的两种解读

Posted slandarer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB | 最小二乘法的两种解读相关的知识,希望对你有一定的参考价值。

最小二乘法

大部分的最小二乘法公式推导,都是使用的 代价函数偏导 的方式来求得的,在这里首先展示如何通过代价函数求偏导的方式得到最小二乘公式,再展示李扬老师讲解的如何由向量到子空间的距离得来最小二乘法公式。

代价函数与最小二乘法

假设我们的拟合结果为:

h θ ( x ) = ∑ i = 0 n θ i x i = θ 0 + θ 1 x 1 + ⋯ + θ n x n h_\\theta(x)=\\sum_i=0^n \\theta_i x_i=\\theta_0+\\theta_1 x_1+\\cdots+\\theta_n x_n hθ(x)=i=0nθixi=θ0+θ1x1++θnxn

则平方损失函数为:

J ( θ ) = ∑ j = 1 m ( h θ ( x ( j ) ) − y ( j ) ) 2 = ∑ j = 1 m ( ∑ i = 0 n θ i x i ( j ) − y ( j ) ) 2 J(\\theta)=\\sum_j=1^m\\left(h_\\theta\\left(x^(j)\\right)-y^(j)\\right)^2=\\sum_j=1^m\\left(\\sum_i=0^n \\theta_i x_i^(j)-y^(j)\\right)^2 J(θ)=j=1m(hθ(x(j))y(j))2=j=1m(i=0nθixi(j)y(j))2

其中 x ( j ) , y ( j ) x^(j),y^(j) x(j),y(j)为一组数据点, x ( j ) x^(j) x(j)是长度为 n + 1 n+1 n+1的向量, y ( j ) y^(j) y(j)是数值,而 x i → \\overrightarrowx_i xi 我们定义为长为 m m m的向量,这在之后会被用到,注意这里为了追求整齐性,我们直接定义 x 0 x_0 x0衡为常数1:
x ( j ) = ( 1 , x 1 ( j ) , … , x n ( j ) ) x i → = ( x i ( 1 ) , x i ( 2 ) , … , x i ( m ) ) \\beginaligned &x^(j)=\\left(1, x_1^(j), \\ldots, x_n^(j) \\right)\\\\ &\\overrightarrowx_i=\\left(x_i^(1), x_i^(2), \\ldots, x_i^(m)\\right) \\endaligned x(j)=(1,x1(j),,xn(j))xi =(xi(1),xi(2),,xi(m))

平方损失函数的形式只有极小值,没有极大值,我们要使代价函数最小,我们要找到其极值点,即偏导均为0的点,代价函数对于各参数偏导如下:

∂ J ( θ ) θ i = 2 ∑ j = 1 m ( h θ ( x ( j ) ) − y ( j ) ) x i ( j ) , i = 0 , 1 , 2 , . . . n \\frac\\partial J(\\theta)\\theta_i=2 \\sum_j=1^m\\left(h_\\theta\\left(x^(j)\\right)-y^(j)\\right) x_i^(j),i=0,1,2,...n θiJ(θ)=2j=1m(hθ(x(j))y(j))xi(j),i=0,1,2,...n
令偏导为0得:
∑ j = 1 m ( h θ ( x ( j ) ) − y ( j ) ) x i ( j ) = 0 , i = 0 , 1 , 2 , . . . , n ⇒ ∑ j = 1 m ( h θ ( x ( j ) ) x i ( j ) ) = ∑ j = 1 m ( y ( j ) x i ( j ) ) , i = 0 , 1 , 2 , . . . , n \\beginaligned &\\sum_j=1^m\\left(h_\\theta\\left(x^(j)\\right)-y^(j)\\right) x_i^(j)=0,i=0,1,2,...,n \\\\ \\Rightarrow &\\sum_j=1^m\\left(h_\\theta\\left(x^(j)\\right)x_i^(j)\\right)=\\sum_j=1^m\\left(y^(j)x_i^(j)\\right),i=0,1,2,...,n \\endaligned j=1m(hθ(x(j))y(j))x<

以上是关于MATLAB | 最小二乘法的两种解读的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB | 逻辑回归(Logistic Regression)+书推

MATLAB | 赠书 | 逻辑回归(Logistic Regression)

用加权最小二乘法拟合曲线matlab?

基于LS最小二乘法的无线定位matlab仿真

最小二乘法拟合非线性函数及其Matlab/Excel 实现(转)

MATLAB教程案例89通过MATLAB实现基于LS最小二乘法的系统参数辨识