• 最小二乘(Least Square)与多项式拟合(fitted polynomial)的理解


    最小二乘(Least Square)与多项式拟合(fitted polynomial)的理解

    多项式:
    f ( x i ) = θ 0 + θ 1 x i + θ 2 x i 2 + ⋯ + θ n x i n f(x_i)=\theta_0+\theta_1x_i+\theta_2{x_i}^2+\cdots+{\theta_n}{x_i}^n f(xi)=θ0+θ1xi+θ2xi2++θnxin

    存在样本:
    ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x m , y m ) (x_1,y_1),(x_2,y_2),\cdots,(x_m,y_m) (x1,y1),(x2,y2),,(xm,ym)

    样本值代入多项式得方程组:
    { θ 0 + θ 1 x 1 + θ 2 x 1 2 + ⋯ + θ n x 1 n = y 1 θ 0 + θ 1 x 2 + θ 2 x 2 2 + ⋯ + θ n x 2 n = y 2 ⋮ θ 0 + θ 1 x m + θ 2 x m 2 + ⋯ + θ n x m n = y m \begin{dcases} \theta_0 + \theta_1x_1+\theta_2{x_1}^2+\cdots+\theta_n{x_1}^n=y_1 \\ \theta_0 + \theta_1x_2+\theta_2{x_2}^2+\cdots+\theta_n{x_2}^n=y_2 \\ \vdots \\ \theta_0 + \theta_1x_m+\theta_2{x_m}^2+\cdots+\theta_n{x_m}^n=y_m \end{dcases}

    \begin{dcases} \theta_0 + \theta_1x_1+\theta_2{x_1}^2+\cdots+\theta_n{x_1}^n=y_1 \\ \theta_0 + \theta_1x_2+\theta_2{x_2}^2+\cdots+\theta_n{x_2}^n=y_2 \\ \vdots \\ \theta_0 + \theta_1x_m+\theta_2{x_m}^2+\cdots+\theta_n{x_m}^n=y_m \end{dcases}
    θ0+θ1x1+θ2x12++θnx1n=y1θ0+θ1x2+θ2x22++θnx2n=y2θ0+θ1xm+θ2xm2++θnxmn=ym

    令 令
    θ = [ θ 0 θ 1 θ 2 ⋯ θ n ] T \theta = [θ0θ1θ2θn]

    [θ0θ1θ2θn]
    ^T θ=[θ0θ1θ2θn]T
    A i = [ 1 x i x i 2 ⋯ x i m ] A_i=[1xix2ixmi]
    [1xix2ixmi]
    Ai=[1xixi2xim]

    b i = y i b_i=y_i bi=yi
    i = 1 , ⋯ , m i=1,\cdots,m i=1m

    则方程组变换为: 则方程组变换为: 则方程组变换为:
    { A 1 θ = b 1 A 2 θ = b 2 ⋮ A m θ = b m \begin{dcases} A_1\theta=b_1 \\ A_2\theta=b_2 \\ \vdots \\ A_m\theta=b_m \\ \end{dcases}

    \begin{dcases} A_1\theta=b_1 \\ A_2\theta=b_2 \\ \vdots \\ A_m\theta=b_m \\ \end{dcases}
    A1θ=b1A2θ=b2Amθ=bm

    令 令
    A = [ A 1 A 2 A 3 ⋮ A m ] A=[A1A2A3Am]

    A= A1A2A3Am
    b = [ b 1 b 2 b 3 ⋮ b m ] b=[b1b2b3bm]
    b= b1b2b3bm

    方程组变换为矩阵方程式:
    A θ = b A\theta=b Aθ=b
    A = [ a 1 a 2 a 3 ⋯ a n ] = [ 1 x 1 x 1 2 ⋯ x 1 n 1 x 2 x 2 2 ⋯ x 2 n ⋮ ⋮ ⋮ ⋱ ⋮ 1 x m x m 2 ⋯ x m n ] , θ = [ θ 0 θ 1 θ 2 ⋮ θ n ] , b = [ y 0 y 1 y 2 ⋮ y m ] A=[a1a2a3an]

    =[1x1x21xn11x2x22xn21xmx2mxnm]
    , \theta=[θ0θ1θ2θn]
    , b=[y0y1y2ym]
    A=[a1a2a3an]= 111x1x2xmx12x22xm2x1nx2nxmn ,θ= θ0θ1θ2θn ,b= y0y1y2ym

    考虑 A θ = b 无解,需要从 A 的列空间中找出最接近 b 的向量 p ( p 可以理解为 b 在 A 的列空间中的投影,理解如下图所示:) 考虑A\theta=b无解,需要从A的列空间中找出最接近b的向量p(p可以理解为b在A的列空间中的投影,理解如下图所示:) 考虑Aθ=b无解,需要从A的列空间中找出最接近b的向量pp可以理解为bA的列空间中的投影,理解如下图所示:)

    在这里插入图片描述
    如上图所示, p 是 b 在 [ a 1 a 2 ] 列空间中的投影。 如上图所示,p是b在[a1a2]

    列空间中的投影。 如上图所示,pb[a1a2]列空间中的投影。
    令 e = b − p ,最小二乘就是找到 ∥ e ∥ 2 最小的点,最小二乘就是指向量长度的最小平方。 令e=b-p,最小二乘就是找到\parallel e \parallel^2最小的点,最小二乘就是指向量长度的最小平方。 e=bp,最小二乘就是找到e2最小的点,最小二乘就是指向量长度的最小平方。

    由上可知, p 位于 A 的列空间中,即 p 是 A 的各列的线性组合: 由上可知,p位于A的列空间中,即p是A的各列的线性组合: 由上可知,p位于A的列空间中,即pA的各列的线性组合:
    p = a 1 θ 1 ~ + a 2 θ 2 ~ + ⋯ + a n θ n ~ p=a_1\tilde{\theta_1} + a_2\tilde{\theta_2} + \cdots + a_n\tilde{\theta_n} p=a1θ1~+a2θ2~++anθn~
    即 A θ ~ = p 有解。 即A\tilde{\theta}=p有解。 Aθ~=p有解。

    e = b − p = b − A θ ~ e=b-p=b-A\tilde{\theta} e=bp=bAθ~
    e 正交于 A 的列空间,存在: e正交于A的列空间,存在: e正交于A的列空间,存在:
    e ⊥ a 1 , e ⊥ a 2 , ⋯   , e ⊥ a n e \perp a_1,e \perp a_2,\cdots,e \perp a_n ea1,ea2,,ean

    ⇒ { a 1 T ( b − A θ ~ ) = 0 a 2 T ( b − A θ ~ ) = 0 ⋮ a n T ( b − A θ ~ ) = 0 \Rarr \begin{dcases} a_1^T(b-A\tilde{\theta})=0 \\ a_2^T(b-A\tilde{\theta})=0 \\ \vdots \\ a_n^T(b-A\tilde{\theta})=0 \end{dcases}

    a1T(bAθ~)=0a2T(bAθ~)=0anT(bAθ~)=0

    ⇒ [ a 1 T a 2 T a 3 T ⋮ a n T ] ( b − A θ ~ ) = [ 0 0 0 ⋮ 0 ] \Rarr [aT1aT2aT3aTn]

    (b-A\tilde{\theta})= [0000]
    a1Ta2Ta3TanT (bAθ~)= 0000

    ⇒ A T ( b − A θ ~ ) = 0 \Rarr A^T(b-A\tilde{\theta})=0 AT(bAθ~)=0
    ⇒ A T A θ ~ = A T b \Rarr A^TA\tilde{\theta}=A^Tb ATAθ~=ATb
    ⇒ θ ~ = ( A T A ) − 1 A T b \Rarr \tilde{\theta}=(A^TA)^{-1}A^Tb θ~=(ATA)1ATb

    上述式子是 矩阵法 求解推导公式。 上述式子是\fcolorbox{red}{aqua}{矩阵法}求解推导公式。 上述式子是矩阵法求解推导公式。
    此外还有 正规方程法 , householderQr 分解法 , bdcSvd分解法 。 此外还有\fcolorbox{red}{aqua}{正规方程法},\fcolorbox{red}{aqua}{householderQr 分解法},\fcolorbox{red}{aqua}{bdcSvd分解法}。 此外还有正规方程法householderQr 分解法bdcSvd分解法
    针对最小二乘几个方法的应用情况:
    Eigen 官网在 Solving linear least squares systems 章节中讨论了 SVD 分解、QR 分解和正规方程(即使用 LDLT 解法)三种方法在求解线性最小二乘问题上的差异,并指出:SVD 分解通常精度最高但速度最慢,正规方程速度最快但精度最差,QR 分解性能介于两种方法之间。相比 SVD 分解和 QR 分解,当矩阵 病态时,正规方程解法所得结果将损失两倍精度。

    参考:
    1、https://zhuanlan.zhihu.com/p/268884807

  • 相关阅读:
    探究平台化设计的核心思想和Lattice(TMF)的设计原则
    小程序笔记1
    Java基础
    发票关键信息抽取SER
    超详细全面 spring 复习总结笔记
    Linux之V4L2驱动框架
    【学习笔记】ARC150/ARC151
    5G消息.
    3d360全景家具展厅制作的优势盘点
    AI时代你一定要知道的Agent概念
  • 原文地址:https://blog.csdn.net/xys206006/article/details/126847087