线性拟合3-戴明回归


上一篇是用正交回归算法来拟合直线。本文将正交回归一般化,当原始点的横纵坐标都有噪声和误差,并且噪声不同时,就可以考虑在目标函数中假如权值。这样看起来就像是斜投影,所以也可以说是优化的斜距离。

戴明回归

正交方法考虑的是自变量 x x x和因变量 y y y有相同方差的情况。但是更一般的,可能自变量和因变量的测量方式是不一样的,这样会造成两个方差的不同,因此应该给与不同的考虑。戴明回归就相当于求加权的正交回归,是正交回归向一般化方向的推导。
总结一下:

  • 最小二乘法优化的是竖直距离;
  • 正交回归优化的垂直距离;
  • 戴明回归优化的是斜距离。

对比如下图所示:

在这里插入图片描述在这里插入图片描述在这里插入图片描述
最小二乘正交回归戴明回归

目标函数

假设 ϵ i \epsilon_i ϵi η i \eta_i ηi都符合正态分布且相互独立,其方差分别为: s x x \bm{s}_{xx} sxx s y y \bm{s}_{yy} syy。定义方差比 δ \delta δ为:
δ = s y y s x x \delta=\dfrac{\bm{s}_{yy}}{\bm{s}_{xx}} δ=sxxsyy
在大部分情况下,测量一组数据的环境和方法基本是不变的,所以同一组数据的方差应该不会变化。在后面的计算中,我们都假设它们的方差为常值,所以它们的方差比 δ \delta δ也为常值。
同样使用直线方程 y = a x + b y=ax+b y=ax+b来进行拟合。假设最后拟合直线的参数为 a ^ \hat{a} a^ b ^ \hat{b} b^,则有:
y ^ i = a ^ x ^ i + b ^ \hat{y}_i=\hat{a}\hat{x}_i+\hat{b} y^i=a^x^i+b^
目标函数可以写成:
J 3 = ∑ ( ϵ i 2 s y y + η i 2 s x x ) = 1 s y y ∑ ( ( y i − y i ⋆ ) 2 + δ ( x i − x i ⋆ ) 2 ) \bm{J}_3=\sum(\dfrac{\epsilon^2_i}{\bm{s}_{yy}}+\dfrac{\eta^2_i}{\bm{s}_{xx}})=\dfrac{1}{\bm{s}_{yy}}\sum((y_i-y^{\star}_i)^2+\delta(x_i-x^{\star}_i)^2) J3=(syyϵi2+sxxηi2)=syy1((yiyi)2+δ(xixi)2)
因为 s y y \bm{s}_{yy} syy为常数,所以可以将目标函数写成:
J 3 = ∑ [ ( y i − a x i ⋆ − b ) 2 + δ ( x i − x i ⋆ ) 2 ] \bm{J}_3=\sum[(y_i-ax^{\star}_i-b)^2+\delta(x_i-x^{\star}_i)^2] J3=[(yiaxib)2+δ(xixi)2]
所以最终目的是求 a a a b b b x i ⋆ x^{\star}_i xi的值,使得目标函数 J 3 \bm{J}_3 J3最小。

求解结果

为了求目标函数的最小值,应该将目标函数 J 3 \bm{J}_3 J3分别对 x i ⋆ x_i^{\star} xi a a a b b b求导。然后令三个式子等于0,应该就能解出三个参数的值。
推导过程有些复杂,如果感兴趣可以看文章最后的详细推导过程
这里直接写出求解结果:
{ a ^ = s y y − δ s x x + ( s y y − δ s x x ) 2 + 4 δ s x y 2 2 s x y b ^ = y ˉ − a ^ x ˉ x ^ i = x i + a ^ a ^ 2 + δ ( y i − b ^ − a ^ x i ) \left\{ \begin{aligned} &\hat{a} = \dfrac{\bm{s}_{yy}-\delta\bm{s}_{xx}+\sqrt{(\bm{s}_{yy}-\delta\bm{s}_{xx})^2+4\delta\bm{s}^2_{xy}}}{2\bm{s}_{xy}} \\ &\hat{b}=\bar{y}-\hat{a}\bar{x} \\ &\hat{x}_i=x_i+\dfrac{\hat{a}}{\hat{a}^2+\delta}(y_i-\hat{b}-\hat{a}x_i) \end{aligned} \right. a^=2sxysyyδsxx+(syyδsxx)2+4δsxy2 b^=yˉa^xˉx^i=xi+a^2+δa^(yib^a^xi)
所以最后拟合曲线的斜率为 a ^ \hat{a} a^,与 y y y轴的截距为 b ^ \hat{b} b^,而且第 i i i个点的横坐标的估计值为 x ^ i \hat{x}_i x^i
其中 s x x \bm{s}_{xx} sxx s y y \bm{s}_{yy} syy x x x y y y的样本方差, s x y \bm{s}_{xy} sxy x x x y y y的协方差。

验证正交回归

因为戴明回归是正交回归的一般化推导,所以在特殊情况下,一般回归就变为正交回归,这个特殊情况就是方差比 δ = 1 \delta=1 δ=1
所以当 δ = 1 \delta=1 δ=1时,最后结果可以化简为:
{ a 2 ( s x y ) + a ( − s y y + s x x ) − s x y = 0 b = y ˉ − a x ˉ \left\{ \begin{aligned} &a^2(\bm{s}_{xy})+a(-\bm{s}_{yy}+\bm{s}_{xx})-\bm{s}_{xy}=0 \\ &b=\bar{y}-a\bar{x} \end{aligned} \right. {a2(sxy)+a(syy+sxx)sxy=0b=yˉaxˉ
这与正交回归的结果一致。

附录:详细推导过程

x i ⋆ x_i^{\star} xi求导:

首先对 x i ⋆ x_i^{\star} xi求导。因为是要求目标函数的最小值,应该是对任意 i i i,目标函数都取最小值,所以目标函数对 x i ⋆ x_i^{\star} xi求导时,可以推导其中一个 i i i
∂ J 2 i x i ⋆ = ∂ ∂ x i ⋆ [ ( y i − a x i ⋆ − b ) 2 + δ ( x i − x i ⋆ ) 2 ] = − 2 a ( y i − a x i ⋆ − b ) − 2 δ ( x i − x i ⋆ ) = 2 ( − a y i + a 2 x i ⋆ + a b − δ x i + δ x i ⋆ ) \begin{aligned} \dfrac{\partial \bm{J}_2^i}{x_i^{\star}} &= \dfrac{\partial}{\partial x_i^{\star}}[(y_i-ax_i^{\star}-b)^2+\delta(x_i-x_i^{\star})^2] \\ &=-2a(y_i-ax_i^{\star}-b)-2\delta(x_i-x_i^{\star}) \\ &=2(-ay_i+a^2 x_i^{\star}+ab-\delta x_i+\delta x_i^{\star}) \end{aligned} xiJ2i=xi[(yiaxib)2+δ(xixi)2]=2a(yiaxib)2δ(xixi)=2(ayi+a2xi+abδxi+δxi)
∂ J 2 i x i ⋆ = 0 \dfrac{\partial \bm{J}_2^i}{x_i^{\star}}=0 xiJ2i=0,得:
− a y i + a 2 x i ⋆ + a b − δ x i + δ x i ⋆ = 0 -ay_i+a^2 x_i^{\star}+ab-\delta x_i+\delta x_i^{\star}=0 ayi+a2xi+abδxi+δxi=0
解得:
x i ⋆ = a y i + δ x i − a b a 2 + δ x_i^{\star}=\dfrac{ay_i+\delta x_i-ab}{a^2+\delta} xi=a2+δayi+δxiab

b b b求导:

将目标函数 J 2 \bm{J}_2 J2 b b b求导:
∂ J 2 ∂ b = ∂ ∂ b ∑ [ ( y i − a x i ⋆ − b ) 2 + δ ( x i − x i ⋆ ) 2 ] = ∑ ( − 2 y i + 2 a x i ⋆ + 2 b ) \begin{aligned} \dfrac{\partial \bm{J}_2}{\partial b}&=\dfrac{\partial}{\partial b}\sum[(y_i-ax^{\star}_i-b)^2+\delta(x_i-x^{\star}_i)^2] \\ &=\sum(-2y_i+2ax_i^{\star}+2b) \end{aligned} bJ2=b[(yiaxib)2+δ(xixi)2]=(2yi+2axi+2b)
∂ J 2 ∂ b = 0 \dfrac{\partial \bm{J}_2}{\partial b}=0 bJ2=0,得:
− ∑ y i + a ∑ x i ⋆ + n b = 0 -\sum y_i+a\sum x_i^{\star}+nb=0 yi+axi+nb=0
解得:
b = 1 n ∑ ( y i − a x i ⋆ ) b=\dfrac{1}{n}\sum(y_i-ax_i^{\star}) b=n1(yiaxi)
将上面求得的 x i ⋆ = a y i + δ x i − a b a 2 + δ x_i^{\star}=\dfrac{ay_i+\delta x_i-ab}{a^2+\delta} xi=a2+δayi+δxiab带入,得:
b = 1 n ∑ ( y i − a x i ⋆ ) = 1 n ∑ ( y i − a a y i + δ x i − a b a 2 + δ ) = 1 n ∑ ( y i − a a y i + δ x i a 2 + δ + a 2 b a 2 + δ ) \begin{aligned} b&=\dfrac{1}{n}\sum(y_i-ax_i^{\star}) \\ &=\dfrac{1}{n}\sum (y_i-a\dfrac{ay_i+\delta x_i -ab}{a^2+\delta}) \\ &=\dfrac{1}{n}\sum(y_i-a\dfrac{ay_i+\delta x_i}{a^2+\delta}+\dfrac{a^2b}{a^2+\delta}) \end{aligned} b=n1(yiaxi)=n1(yiaa2+δayi+δxiab)=n1(yiaa2+δayi+δxi+a2+δa2b)
继续化简得:
b ( 1 − a 2 a 2 + δ ) = 1 n ∑ ( y i − a a y i + δ x i a 2 + δ ) = 1 n ∑ [ y i ( 1 − a 2 a 2 + δ ) − x i a δ a 2 + δ ] \begin{aligned} b(1-\dfrac{a^2}{a^2+\delta})&=\dfrac{1}{n}\sum(y_i-a\dfrac{ay_i+\delta x_i}{a^2+\delta})\\ &=\dfrac{1}{n}\sum[y_i(1-\dfrac{a^2}{a^2+\delta})-x_i\dfrac{a\delta}{a^2+\delta}] \end{aligned} b(1a2+δa2)=n1(yiaa2+δayi+δxi)=n1[yi(1a2+δa2)xia2+δaδ]
最后解得:
b = 1 n ∑ ( y i − x i a ) = y ˉ − a x ˉ \begin{aligned} b&=\dfrac{1}{n}\sum(y_i-x_ia) \\ &=\bar{y}-a\bar{x} \end{aligned} b=n1(yixia)=yˉaxˉ
所以,可以得:
b = y ˉ − a x ˉ b=\bar{y}-a\bar{x} b=yˉaxˉ

a a a求导:

将目标函数 J 2 \bm{J}_2 J2 a a a求导:
∂ J 2 ∂ a = ∂ ∂ a ∑ [ ( y i − a x i ⋆ − b ) 2 + δ ( x i − x i ⋆ ) 2 ] = − 2 ∑ [ ( y i − a x i ⋆ − b ) x i ⋆ ] \begin{aligned} \dfrac{\partial \bm{J}_2}{\partial a}&=\dfrac{\partial}{\partial a}\sum[(y_i-ax^{\star}_i-b)^2+\delta(x_i-x^{\star}_i)^2] \\ &=-2\sum[(y_i-ax_i^{\star}-b)x_i^{\star}] \end{aligned} aJ2=a[(yiaxib)2+δ(xixi)2]=2[(yiaxib)xi]
∂ J 2 ∂ a = 0 \dfrac{\partial \bm{J}_2}{\partial a}=0 aJ2=0,得:
∑ [ ( y i − a x i ⋆ − b ) x i ⋆ ] = 0 \sum[(y_i-ax_i^{\star}-b)x_i^{\star}]=0 [(yiaxib)xi]=0
同样,将 x i ⋆ = a y i + δ x i − a b a 2 + δ x_i^{\star}=\dfrac{ay_i+\delta x_i-ab}{a^2+\delta} xi=a2+δayi+δxiab代入,得:
∑ [ ( y i − b − a a y i + δ x i − a b a 2 + δ ) a y i + δ x i − a b a 2 + δ ] = 0 \sum[(y_i-b-a\dfrac{ay_i+\delta x_i-ab}{a^2+\delta})\dfrac{ay_i+\delta x_i-ab}{a^2+\delta}]=0 [(yibaa2+δayi+δxiab)a2+δayi+δxiab]=0
等号两边同时乘 a 2 + δ a^2+\delta a2+δ,可以得:
∑ { [ ( y i − b ) ( a 2 + δ ) − a 2 ( y i − b ) − a δ x i ] [ δ x i + a ( y i − b ) ] } = 0 \sum\{[(y_i-b)(a^2+\delta)-a^2(y_i-b)-a\delta x_i][\delta x_i+a(y_i-b)]\}=0 {[(yib)(a2+δ)a2(yib)aδxi][δxi+a(yib)]}=0
继续化简得:
0 = a 2 ( b δ ∑ x i − ∑ δ ∑ x i y i ) + a ( b 2 δ − 2 b δ ∑ y i + δ ∑ y i 2 − δ 2 ∑ x i 2 ) − b δ 2 ∑ x i + δ 2 ∑ x i y i \begin{aligned} 0=\quad &a^2(b\delta\sum x_i-\sum\delta\sum x_i y_i) \\ +&a(b^2\delta -2b\delta\sum y_i + \delta\sum y_i^2 -\delta^2\sum x_i^2)\\ -&b\delta^2\sum x_i+\delta^2\sum x_iy_i \end{aligned} 0=+a2(bδxiδxiyi)a(b2δ2bδyi+δyi2δ2xi2)bδ2xi+δ2xiyi
b = y ˉ − a x ˉ b=\bar{y}-a\bar{x} b=yˉaxˉ带入,得:
0 = a 3 ( n x ˉ 2 − x ˉ ∑ x i ) + a 2 ( y ˉ ∑ x i − ∑ x i y i − 2 n x ˉ y ˉ + 2 x ˉ ∑ y i ) + a ( ∑ y i 2 + n y ˉ 2 − 2 y ˉ ∑ y i + δ x ˉ ∑ x i − δ ∑ x i 2 ) + δ ( ∑ x i y i − y ˉ ∑ x i ) \begin{aligned} 0=\quad &a^3(n\bar{x}^2-\bar{x}\sum x_i)\\ +&a^2(\bar{y}\sum x_i -\sum x_i y_i -2n\bar{x}\bar{y}+2\bar{x}\sum y_i)\\ +&a(\sum y_i^2+n\bar{y}^2-2\bar{y}\sum y_i+\delta \bar{x}\sum x_i-\delta\sum x_i^2)\\ +&\delta(\sum x_i y_i-\bar{y}\sum x_i) \end{aligned} 0=+++a3(nxˉ2xˉxi)a2(yˉxixiyi2nxˉyˉ+2xˉyi)a(yi2+nyˉ22yˉyi+δxˉxiδxi2)δ(xiyiyˉxi)
继续化简,对每一项都除以 n n n,可以得:
0 = a 2 ( x ˉ y ˉ − x y ˉ − 2 x ˉ y ˉ + 2 x ˉ y ˉ ) + a [ y 2 ˉ + y ˉ 2 − 2 y ˉ 2 + δ ( x 2 ˉ − x ˉ 2 ) ] + δ ( x y ˉ − x ˉ y ˉ ) \begin{aligned} 0=\quad &a^2(\bar{x}\bar{y}-\bar{xy}-2\bar{x}\bar{y}+2\bar{x}\bar{y}) \\ +&a[\bar{y^2}+\bar{y}^2-2\bar{y}^2+\delta (\bar{x^2}-\bar{x}^2)] \\ +&\delta(\bar{xy}-\bar{x}\bar{y}) \end{aligned} 0=++a2(xˉyˉxyˉ2xˉyˉ+2xˉyˉ)a[y2ˉ+yˉ22yˉ2+δ(x2ˉxˉ2)]δ(xyˉxˉyˉ)
最后化简为:
a 2 ( − s x y ) + a ( s y y − δ s x x ) + δ s x y = 0 a^2(-\bm{s}_{xy})+a(\bm{s}_{yy}-\delta\bm{s}_{xx})+\delta\bm{s}_{xy}=0 a2(sxy)+a(syyδsxx)+δsxy=0
这是一个二元一次方程组,解得:
a = − ( s y y − δ s x x ) ± ( s y y − δ s x x ) 2 + 4 δ s x y 2 2 s x y a=\dfrac{-(\bm{s}_{yy}-\delta\bm{s}_{xx})\pm \sqrt{(\bm{s}_{yy}-\delta\bm{s}_{xx})^2+4\delta\bm{s}^2_{xy}}}{2\bm{s}_{xy}} a=2sxy(syyδsxx)±(syyδsxx)2+4δsxy2
因为 s y y − δ s x x ≤ ( s y y − δ s x x ) 2 + 4 δ s x y 2 \bm{s}_{yy}-\delta\bm{s}_{xx}\leq \sqrt{(\bm{s}_{yy}-\delta\bm{s}_{xx})^2+4\delta\bm{s}^2_{xy}} syyδsxx(syyδsxx)2+4δsxy2 总是成立的,所以上式分子只能是正或者负。又因为 a a a的值应该与 s x y \bm{s}_{xy} sxy的符号保持一致,所以上式分子应该取正号。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值