非线性最小二乘法

来自testwiki
跳转到导航 跳转到搜索

Template:回归侧栏 非线性最小二乘法非线性形式的最小二乘法,用包含Template:Mvar个未知参数的非线性模型拟合Template:Mvar个观测值(mn),可用于某些形式的非线性回归。该方法的基础是使用线性模型近似并通过连续迭代来优化参数。它与线性最小二乘法既有相同之处、也有一些显著差异。

理论

考虑一组(x1,y1),(x2,y2),,(xm,ym)m个数据点以及曲线(模型函数)y^=f(x,β)。该曲线同时取决于Template:Mvarβ=(β1,β2,,βn)Template:Mvar个参数(满足mn)。目标是找到在最小二乘意义上与数据点拟合最好的曲线所对应的参数β,即最小化平方和 S=i=1mri2,

其中残差Template:Math的定义为 ri=yif(xi,β),(i=1,2,,m).

Template:Mvar最小值时的梯度为零。由于模型包含Template:Mvar个参数,因此可得到Template:Mvar个梯度方程: Sβj=2iririβj=0(j=1,,n).

在非线性系统中,偏导数riβj同时是自变量Template:Mvar和参数β的函数,因此这些梯度方程通常没有封闭解。因而必须为参数选择初始值用以迭代求解。迭代表达式为 βjβjk+1=βjk+Δβj.

其中,Template:Mvar是迭代次数,Δβ则是偏移向量。每次迭代时,使用关于βk的一阶泰勒级数展开以线性化模型: f(xi,β)f(xi,βk)+jf(xi,βk)βj(βjβjk)=f(xi,βk)+jJijΔβj.

雅可比矩阵Template:Math是常数、自变量与参数的函数,因此每次迭代时的Template:Math并不固定。对线性化模型而言, riβj=Jij,

残差的表达式则为 Δyi=yif(xi,βk), ri=yif(xi,β)=(yif(xi,βk))+(f(xi,βk)f(xi,β))Δyis=1nJisΔβs.

将上述表达式代入梯度方程,可以得到 2i=1mJij(Δyis=1nJis Δβs)=0,

以上方程可化简为Template:Mvar个联立的线性方程,称为正规方程(normal equations): i=1ms=1nJijJis Δβs=i=1mJij Δyi(j=1,,n).

正规方程可用矩阵表示法写成 (𝐉𝖳𝐉)Δβ=𝐉𝖳 Δ𝐲.

上述方程是使用Template:Le求解非线性最小二乘问题的的基础。

需要注意的是雅可比矩阵定义中导数的符号约定。某些文献中的Template:Math可能与此处的定义相差一个负号。

权重扩展

不同数据点(观测结果)的可靠性并不一定相同,此时可使用加权平方和 S=i=1mWiiri2.

权重矩阵Template:Math是一个对角矩阵,理想情况下每个权重系数应等于观测误差方差的倒数。[1]此时,正规方程可扩展为 (𝐉𝖳𝐖𝐉)Δβ=𝐉𝖳𝐖 Δ𝐲.

参见

注释

Template:Reflist

参考文献

  1. 此处假定所有观测点是相互独立的。如果观测点之间相关时,加权平方和可表示为 S=kjrkWkjrj. 此时权重矩阵的理想值应为观测误差协方差矩阵的逆。