Statistics · real student question

已知数据点 (10, 2.9)、(20, 4.0)、(30, 4.9),求二次回归方程并计算决定系数 R 平方,写出推导过程。

Question

对于数据

(10,2.9),(20,4.0),(30,4.9)(10,\,2.9),\qquad(20,\,4.0),\qquad(30,\,4.9)

求二次回归方程 y=ax2+bx+cy=ax^2+bx+c 与决定系数 R2R^2,并写出推导过程。

Step-by-step solution

  1. 先想清楚:这里根本用不上最小二乘那套机器。 二次函数有 aabbcc 三个自由参数,而数据恰好也只有三个点。三个横坐标互不相同的点唯一确定一条抛物线,所以最小二乘拟合就是那条插值抛物线:残差平方和的最小可能值是 00,而且确实取到了。这正是整道题最后归结为解一个 3×33\times3 线性方程组的原因。

  2. 把每个点代入 y=ax2+bx+cy=ax^2+bx+c

    100a+10b+c=2.9(1)100a+10b+c=2.9\qquad(1)

    400a+20b+c=4.0(2)400a+20b+c=4.0\qquad(2)

    900a+30b+c=4.9(3)900a+30b+c=4.9\qquad(3)

  3. 相邻两式相减消去 cc 因为 cc 在三个方程里的系数完全相同,作差立刻把它消掉:

    (2)(1):300a+10b=1.1    30a+b=0.11(A)(2)-(1):\quad300a+10b=1.1\;\Longrightarrow\;30a+b=0.11\qquad(A)

    (3)(2):500a+10b=0.9    50a+b=0.09(B)(3)-(2):\quad500a+10b=0.9\;\Longrightarrow\;50a+b=0.09\qquad(B)

  4. 再作一次差求出 aa,然后回代。

    (B)(A):20a=0.02    a=0.001(B)-(A):\quad20a=-0.02\;\Longrightarrow\;a=-0.001

    由 (A):  30(0.001)+b=0.11    b=0.14\text{由 }(A):\;30(-0.001)+b=0.11\;\Longrightarrow\;b=0.14

    由 (1):  0.1+1.4+c=2.9    c=1.6\text{由 }(1):\;-0.1+1.4+c=2.9\;\Longrightarrow\;c=1.6

    于是回归方程为

    y=0.001x2+0.14x+1.6y=-0.001x^2+0.14x+1.6

    这两次作差其实就是数据的二阶差分(横坐标每增加 1010,增量从 1.11.1 掉到 0.90.9,差 0.20.2),这正是 aa 取负值的原因:增量在变小,曲线向下弯。

  5. 算出拟合值与残差平方和。

    y^(10)=0.1+1.4+1.6=2.9,y^(20)=0.4+2.8+1.6=4.0,y^(30)=0.9+4.2+1.6=4.9\hat y(10)=-0.1+1.4+1.6=2.9,\quad \hat y(20)=-0.4+2.8+1.6=4.0,\quad \hat y(30)=-0.9+4.2+1.6=4.9

    每个拟合值都与观测值相等,所以

    SSres=(yiy^i)2=0SS_{\text{res}}=\sum(y_i-\hat y_i)^2=0

  6. 最后算 R2R^2——顺手确认分母不为零。yˉ=2.9+4.0+4.93=3.9333\bar y=\frac{2.9+4.0+4.9}{3}=3.9333

    SStot=(yiyˉ)2=(1.0333)2+(0.0667)2+(0.9667)2=2.00670SS_{\text{tot}}=\sum(y_i-\bar y)^2=(-1.0333)^2+(0.0667)^2+(0.9667)^2=2.0067\neq0

    所以 R2R^2 有定义,且

    R2=1SSresSStot=102.0067=1R^2=1-\frac{SS_{\text{res}}}{SS_{\text{tot}}}=1-\frac{0}{2.0067}=1

  7. 用恰当的怀疑态度来读这个结果。 这里的 R2=1R^2=1 是结构上的必然,并不能说明二次模型有多好。任意三个点(哪怕噪声再大)做二次拟合都会得到 R2=1R^2=1,正如任意两个点做直线拟合都会得到 R2=1R^2=1。想判断模型质量,数据点数必须多于参数个数——n=3n=3 而参数也是 33 个时,残差自由度为零,调整后的 R2R^2 甚至没有定义。

Answer

y=0.001x2+0.14x+1.6,R2=1y=-0.001x^2+0.14x+1.6,\qquad R^2=1

Need to solve a different problem like this? Open the solver →