# 一元方差分析 ANOVA

对于多个总体数据,有时需要考察它们的均值是否存在显著差异
例如,比较不同教学方法对学生成绩的影响,或者不同药物对患者康复的效果

方差分析 (Analysis of Variance, ANOVA) 是一种用于比较多个样本均值是否存在显著差异的统计方法
其基本思想是将总变异分解为组间变异和组内变异两部分,通过比较这两部分的变异来判断组均值是否存在显著差异

考虑 kk 个正态总体,总体方差可以未知,此处假设相等,即 Πi:N(μi,σ2)\Pi_i: N(\mu_i, \sigma^2)

设置原假设

H0:μ1=μ2==μkH_0: \mu_1 = \mu_2 = \cdots = \mu_k

即,问题为 考察各总体均值是否相等

kk 个总体中各自取 nin_i 个样本

Xi1,Xi2,,Xini,i=1,2,,kX_{i1}, X_{i2}, \dots, X_{in_i}, \quad i=1,2,\dots,k

第一个下标指示总体编号,第二个下标指示样本编号

那么对于各个总体,有

1σ2j=1ni(XijXi)2χni12\frac{1}{\sigma^2}\displaystyle\sum_{j=1}^{n_i}(X_{ij} - \overline X_i)^2 \sim \chi^2_{n_i - 1}

其中 Xi=1nij=1niXij\overline X_i = \dfrac{1}{n_i}\displaystyle\sum_{j=1}^{n_i} X_{ij} 为第 ii 个样本的样本平均

利用 χ2\chi^2 分布的可加性,有

1σ2i=1kj=1ni(XijXi)2χ(i=1k(ni1))2=χnk2\frac{1}{\sigma^2}\displaystyle\sum_{i=1}^{k}\sum_{j=1}^{n_i}(X_{ij} - \overline X_i)^2 \sim \chi^2_{\left(\displaystyle\sum_{i=1}^{k}(n_i - 1)\right)} = \chi^2_{n - k}

其中 n=i=1knin = \displaystyle\sum_{i=1}^{k} n_i 为总样本量


现在,如果原假设 H0H_0 成立,那么各样本来自同一总体(均值和方差都相等)
所以可以将样本视作从 N(μ,σ2)N(\mu, \sigma^2) 中抽取的,数量为 n=i=1knin = \displaystyle\sum_{i=1}^{k} n_i 的样本
同样可以制作服从 χ2\chi^2 分布的统计量

1σ2i=1kj=1ni(XijX)2χn12\frac{1}{\sigma^2}\displaystyle\sum_{i=1}^{k}\sum_{j=1}^{n_i}(X_{ij} - \overline X)^2 \sim \chi^2_{n - 1}

其中 X=1ni=1kj=1niXij\overline X = \dfrac{1}{n}\displaystyle\sum_{i=1}^{k}\sum_{j=1}^{n_i} X_{ij} 为所有样本的总体平均

为了实际分析各组数据分散情况,定义三组平方和

  • 组间变异平方和 (Sum of Squares Between, SSB)「級間変動」
  • 组内变异平方和 (Sum of Squares Within, SSW)「級内変動」
  • 总变异平方和 (Total Sum of Squares, TSS)「全変動」

sis_i 为第 ii 组样本的标准差

S1=SSB=i=1kni(XiX)2S_1 = SSB = \displaystyle\sum_{i=1}^{k} n_i (\overline X_i - \overline X)^2

S2=SSW=i=1k(ni1)si2=i=1kj=1ni(XijXi)2S_2 = SSW = \displaystyle\sum_{i=1}^{k} (n_i - 1) s_i^2 = \displaystyle\sum_{i=1}^{k}\sum_{j=1}^{n_i}(X_{ij} - \overline X_i)^2

S=TSS=i=1kj=1ni(XijX)2S = TSS = \displaystyle\sum_{i=1}^{k}\sum_{j=1}^{n_i}(X_{ij} - \overline X)^2

此时容易证明以下等式

S=S1+S2S = S_1 + S_2

由于第 ii 组样本的组内数据差异 XijXiX_{ij} - \overline X_i 独立于其平均 Xi\overline X_i
并且 Xi\overline X_i 实际上是 XijX_{ij} 的函数
所以可以进一步得到与总平均的独立性,即 XijXiX_{ij} - \overline X_i 独立于 X\overline X
因此 S1S_1S2S_2 独立,考虑等式

Sσ2=S1σ2+S2σ2\frac{S}{\sigma^2} = \frac{S_1}{\sigma^2} + \frac{S_2}{\sigma^2}

此时

  • 等式左侧服从 χn12\chi^2_{n - 1} 分布
  • 等式右侧互相独立,第二项服从 χnk2\chi^2_{n - k} 分布

那么,右侧第一项必然服从 χk12\chi^2_{k - 1} 分布

因此,可以构造服从 FF 分布的统计量

F=S1/(k1)σ2S2/(nk)σ2=S1(nk)S2(k1)Fk1,nkF = \frac{S_1/(k - 1)\sigma^2}{S_2/(n - k)\sigma^2} = \frac{S_1(n-k)}{S_2(k - 1)} \sim F_{k - 1, n - k}

推导基于假设:原假设 H0H_0 成立,即各总体均值相等
所以 FF 统计量可以用于检验该假设

根据 FF 分布的性质,可以通过查表得到临界值 Fk1,nk(α)F_{k - 1, n - k}(\alpha)
如果计算得到的 FF 统计量大于该临界值,则拒绝原假设 H0H_0,认为各总体均值存在显著差异
否则,不拒绝原假设 H0H_0,认为各总体均值无显著差异

实际上,如果原假设 H0H_0 不成立,那么组间变异 S1S_1 显著增大的情况下,组内变异 S2S_2 相对较小
因此 FF 统计量会显著增大,从而更容易超过临界值,导致拒绝原假设 H0H_0
FF 分布的统计量来判断是否拒绝原假设 H0H_0 是合理的做法

在危险度 α\alpha

  • F>Fk1,nk(α)F \gt F_{k - 1, n - k}(\alpha),则拒绝原假设 H0H_0,认为各总体均值存在显著差异
  • FFk1,nk(α)F \leq F_{k - 1, n - k}(\alpha),则不拒绝原假设 H0H_0,认为各总体均值无显著差异

例题
某化学药品同时由 44 家不同厂家生产,对其药物成分纯度进行测定,得到以下数据(单位:百分比)

第一厂家第二厂家第三厂家第四厂家
样本数量 nin_i1717151514141818
样本平均 Xi\overline{X}_i18.018.018.518.517.917.918.318.3
样本标准差 si2s_i^2(0.83)2(0.83)^2(0.75)2(0.75)^2(1.00)2(1.00)^2(0.95)2(0.95)^2

在危险度 0.050.050.010.01 下,能否认为各厂家生产的药品纯度存在显著差异?

总样本量 n=17+15+14+18=64n = 17 + 15 + 14 + 18 = 64
总平均 X=17×18.0+15×18.5+14×17.9+18×18.364=18.1796875\overline{X} = \dfrac{17 \times 18.0 + 15 \times 18.5 + 14 \times 17.9 + 18 \times 18.3}{64} = 18.1796875
组间变异平方和 SSB

S1=17(18.018.1796875)2+15(18.518.1796875)2+14(17.918.1796875)2+18(18.318.1796875)2=3.44359375S_1 = 17(18.0 - 18.1796875)^2 + 15(18.5 - 18.1796875)^2 + 14(17.9 - 18.1796875)^2 + 18(18.3 - 18.1796875)^2 = 3.44359375

SSB 的自由度 k1=41=3k - 1 = 4 - 1 = 3
组内变异平方和 SSW

S2=(171)(0.83)2+(151)(0.75)2+(141)(1.00)2+(181)(0.95)2=47.2399S_2 = (17 - 1)(0.83)^2 + (15 - 1)(0.75)^2 + (14 - 1)(1.00)^2 + (18 - 1)(0.95)^2 = 47.2399

SSW 的自由度 nk=644=60n - k = 64 - 4 = 60
计算 FF 统计量

F=S1/(k1)S2/(nk)=3.44359375/347.2399/60=1.45791746F3,60F = \frac{S_1/(k - 1)}{S_2/(n - k)} = \frac{3.44359375/3}{47.2399/60} = 1.45791746 \sim F_{3, 60}

查询临界值

  • 在危险度 0.050.05 下,F3,60(0.05)=2.758F_{3, 60}(0.05) = 2.758
  • 在危险度 0.010.01 下,F3,60(0.01)=4.126F_{3, 60}(0.01) = 4.126

由于 F=1.45791746F = 1.45791746 均小于上述两个临界值
所以在危险度 0.050.050.010.01 下均不拒绝原假设 H0H_0
结论:在危险度 0.050.050.010.01 下,不能认为各厂家生产的药品纯度存在显著差异

# 回归分析

对于给定的平面上的点集

(x1,y1),(x2,y2),,(xn,yn)(x_1, y_1), (x_2, y_2), \dots, (x_n, y_n)

希望找到一个函数 y=f(x)y = f(x),使得这些点尽可能接近该函数的图像
这种方法称为回归分析 (Regression Analysis)

假设直线的形式是

y=ax+by = a x + b

那么希望找到对所有的差值

yi(axi+b)|y_i - (a x_i + b)|

都最小的系数 a,ba, b

为什么用竖直方向的差值而不是点到直线的距离?
实际上 x 方向的点是给定的,目的是尽可能精确的预测 y 的值

定义误差函数

l(a,b)=i=1n(yi(axi+b))2l(a, b) = \displaystyle\sum_{i=1}^{n} (y_i - (a x_i + b))^2

目标是求出极值点,设偏微分为零

{la=2i=1nxi(yi(axi+b))=0lb=2i=1n(yi(axi+b))=0\begin{cases} \dfrac{\partial l}{\partial a} = -2 \displaystyle\sum_{i=1}^{n} x_i (y_i - (a x_i + b)) = 0 \\ \dfrac{\partial l}{\partial b} = -2 \displaystyle\sum_{i=1}^{n} (y_i - (a x_i + b)) = 0 \end{cases}

整理

{ai=1nxi2+bi=1nxi=i=1nxiyiai=1nxi+nb=i=1nyi\begin{cases} a \displaystyle\sum_{i=1}^{n} x_i^2 + b \displaystyle\sum_{i=1}^{n} x_i = \displaystyle\sum_{i=1}^{n} x_i y_i \\ a \displaystyle\sum_{i=1}^{n} x_i + n b = \displaystyle\sum_{i=1}^{n} y_i \end{cases}

这是关于 a,ba, b 的二元一次方程组,解得

a=ni=1nxiyii=1nxii=1nyini=1nxi2(i=1nxi)2,b=i=1nyiai=1nxina = \frac{n \displaystyle\sum_{i=1}^{n} x_i y_i - \displaystyle\sum_{i=1}^{n} x_i \displaystyle\sum_{i=1}^{n} y_i}{n \displaystyle\sum_{i=1}^{n} x_i^2 - \left(\displaystyle\sum_{i=1}^{n} x_i\right)^2},\quad b = \frac{\displaystyle\sum_{i=1}^{n} y_i - a \displaystyle\sum_{i=1}^{n} x_i}{n}

以下,为了化简 a,ba, b
定义样本平均

{X=1ni=1nxiY=1ni=1nyi\begin{cases} \overline X = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} x_i \\ \overline Y = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} y_i \end{cases}

定义样本方差,协方差

{SXX=1ni=1n(xiX)2=1ni=1nxi2X2SYY=1ni=1n(yiY)2=1ni=1nyi2Y2SXY=1ni=1n(xiX)(yiY)=1ni=1nxiyiXY\begin{cases} S_{XX} = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} (x_i - \overline X)^2 = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} x_i^2 - \overline X^2 \\ S_{YY} = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} (y_i - \overline Y)^2 = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} y_i^2 - \overline Y^2 \\ S_{XY} = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} (x_i - \overline X)(y_i - \overline Y) = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} x_i y_i - \overline X \cdot \overline Y \end{cases}

所以

a=SXYSXX,b=YaXa = \frac{S_{XY}}{S_{XX}},\quad b = \overline Y - a \overline X


对于每个 xix_i,可以计算出对应的预测值

y^i=axi+b\hat y_i = a x_i + b

可以算出,预测值的平均和方差分别为

{Y^=1ni=1ny^i=YSpp=1ni=1n(y^iY)2\begin{cases} \overline{\hat Y} = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i = \overline Y \\ S_{pp} = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} (\hat y_i - \overline{Y})^2 \end{cases}

定义 决定系数 (Coefficient of Determination)「決定係数」

R2=SppSYYR^2 = \frac{S_{pp}}{S_{YY}}

误差 (Error)「残差」 ei=yiy^ie_i = y_i - \hat y_i 的平均和方差

{e=1ni=1nei=YaXb=0See=1ni=1n(eie)2=1ni=1nei2\begin{cases} \overline e = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} e_i = \overline Y - a \overline X - b = 0 \\ S_{ee} = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} (e_i - \overline e)^2 = \dfrac{1}{n} \displaystyle\sum_{i=1}^{n} e_i^2 \end{cases}

命题
以下等式成立

SYY=Spp+SeeS_{YY} = S_{pp} + S_{ee}

证明

将值 yiYy_i - \overline Y 分解为由误差和预测值两部分组成

yiY=(yiy^i)+(y^iY)=ei+(y^iY)y_i - \overline Y = (y_i - \hat y_i) + (\hat y_i - \overline Y) = e_i + (\hat y_i - \overline Y)

那么

SYY=1ni=1n(yiY)2=1ni=1n(ei+(y^iY))2=1ni=1n(ei2+2ei(y^iY)+(y^iY)2)=1ni=1nei2+2ni=1nei(y^iY)+1ni=1n(y^iY)2=See+0+Spp=See+Spp\begin{aligned} S_{YY} &= \frac{1}{n} \displaystyle\sum_{i=1}^{n} (y_i - \overline Y)^2 \\ &= \frac{1}{n} \displaystyle\sum_{i=1}^{n} \left(e_i + (\hat y_i - \overline Y)\right)^2 \\ &= \frac{1}{n} \displaystyle\sum_{i=1}^{n} \left( e_i^2 + 2 e_i (\hat y_i - \overline Y) + (\hat y_i - \overline Y)^2 \right) \\ &= \frac{1}{n} \displaystyle\sum_{i=1}^{n} e_i^2 + \frac{2}{n} \displaystyle\sum_{i=1}^{n} e_i (\hat y_i - \overline Y) + \frac{1}{n} \displaystyle\sum_{i=1}^{n} (\hat y_i - \overline Y)^2 \\ &= S_{ee} + 0 + S_{pp} \\ &= S_{ee} + S_{pp} \end{aligned}

其中第二项为零是因为

i=1nei(y^iY)=i=1n(yiy^i)(y^iY)=i=1nyi(y^iY)i=1ny^i(y^iY)=i=1nyiy^iYi=1nyii=1ny^i2+Yi=1ny^i=n(1ni=1nyiy^iY21ni=1ny^i2+Y2)=n(1ni=1nyiy^i1ni=1ny^i2)=n(1ni=1ny^i(yiy^i))=n(1ni=1ny^iei)=n(1ni=1ny^i(yi(axi+b)))=n(1ni=1ny^iyia1ni=1ny^ixib1ni=1ny^i)=n(1ni=1ny^iyia1ni=1ny^ixibY)\begin{aligned} \displaystyle\sum_{i=1}^{n} e_i (\hat y_i - \overline Y) &= \displaystyle\sum_{i=1}^{n} (y_i - \hat y_i) (\hat y_i - \overline Y) \\ &= \displaystyle\sum_{i=1}^{n} y_i (\hat y_i - \overline Y) - \displaystyle\sum_{i=1}^{n} \hat y_i (\hat y_i - \overline Y) \\ &= \displaystyle\sum_{i=1}^{n} y_i \hat y_i - \overline Y \displaystyle\sum_{i=1}^{n} y_i - \displaystyle\sum_{i=1}^{n} \hat y_i^2 + \overline Y \displaystyle\sum_{i=1}^{n} \hat y_i \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} y_i \hat y_i - \overline Y^2 - \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i^2 + \overline Y^2\right) \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} y_i \hat y_i - \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i^2\right) \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i (y_i - \hat y_i)\right) \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i e_i\right) \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i (y_i - (a x_i + b))\right) \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i y_i - a \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i x_i - b \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i\right) \\ &= n \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i y_i - a \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i x_i - b \overline Y\right) \end{aligned}

注意到 y^i=axi+b\hat y_i = a x_i + b,所以

1ni=1ny^iyi=1ni=1n(axi+b)yi=a1ni=1nxiyi+b1ni=1nyi=a1ni=1nxiyi+bY1ni=1ny^ixi=1ni=1n(axi+b)xi=a1ni=1nxi2+b1ni=1nxi=a1ni=1nxi2+bX\begin{aligned} \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i y_i &= \frac{1}{n} \displaystyle\sum_{i=1}^{n} (a x_i + b) y_i = a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i y_i + b \frac{1}{n} \displaystyle\sum_{i=1}^{n} y_i = a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i y_i + b \overline Y \\ \frac{1}{n} \displaystyle\sum_{i=1}^{n} \hat y_i x_i &= \frac{1}{n} \displaystyle\sum_{i=1}^{n} (a x_i + b) x_i = a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i^2 + b \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i = a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i^2 + b \overline X \end{aligned}

代入上式

i=1nei(y^iY)=n(a1ni=1nxiyi+bYa(a1ni=1nxi2+bX)bY)=n(a1ni=1nxiyia21ni=1nxi2abX)=n(a(1ni=1nxiyia1ni=1nxi2bX))=n(a(YbbX))=n(a(0))=0\begin{aligned} \displaystyle\sum_{i=1}^{n} e_i (\hat y_i - \overline Y) &= n \left(a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i y_i + b \overline Y - a \left(a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i^2 + b \overline X\right) - b \overline Y\right) \\ &= n \left(a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i y_i - a^2 \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i^2 - a b \overline X\right) \\ &= n \left(a \left(\frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i y_i - a \frac{1}{n} \displaystyle\sum_{i=1}^{n} x_i^2 - b \overline X\right)\right) \\ &= n \left(a \left(\overline{Y} - b - b \overline X\right)\right) \\ &= n (a (0)) = 0 \end{aligned}

决定系数可以改写为

R2=SppSYY=SYYSeeSYY=1SeeSYYR^2 = \frac{S_{pp}}{S_{YY}} = \frac{S_{YY} - S_{ee}}{S_{YY}} = 1 - \frac{S_{ee}}{S_{YY}}

得到 0R210 \leq R^2 \leq 1

  • R2R^2 越接近 11 时,说明预测值 y^i\hat y_i 越接近实际值 yiy_i,回归效果越好
  • R2R^2 越接近 00 时,说明预测值 y^i\hat y_i 与实际值 yiy_i 差异较大,回归效果较差

# Logistic 回归

在某些情况下,响应变量 YY 是分类变量,而不是连续变量
例如,预测某个病人是否患有某种疾病,响应变量 YY 只能取两个值:11(患病)或 00(不患病)
这种情况下,传统的线性回归方法不再适用
Logistic 回归 (Logistic Regression) 是一种用于处理分类响应变量的回归方法
其基本思想是通过对数几率 (Log-Odds) 的线性组合来建模响应变量与自变量之间的关系

假设有一个二分类响应变量 YY,取值为 0011
以及自变量 XX
Logistic 回归模型假设响应变量 YY 的对数几率与自变量 XX 之间存在线性关系

log(P(Y=1X)P(Y=0X))=ax+b\log\left(\frac{P(Y=1|X)}{P(Y=0|X)}\right) = ax + b

其中,P(Y=1X)P(Y=1|X) 表示在给定自变量 XX 的条件下,响应变量 YY 取值为 11 的概率
P(Y=0X)P(Y=0|X) 表示在给定自变量 XX 的条件下,响应变量 YY 取值为 00 的概率
aabb 是需要估计的参数
通过对上式进行变换,可以得到响应变量 YY 取值为 11 的概率

P(Y=1X)=11+e(ax+b)P(Y=1|X) = \frac{1}{1 + e^{-(ax + b)}}

即,若记变量 YY 取到值 11 的概率为 pp,则

p=11+e(ax+b)p = \frac{1}{1 + e^{-(ax + b)}}

预测参数时,最小二乘法不再适用,使用似然估计
给定观测数据集

(x1,y1),(x2,y2),,(xn,yn)(x_1, y_1), (x_2, y_2), \dots, (x_n, y_n)

定义关于参数 a,ba, b 的似然函数

L(a,b)=i=1npiyi(1pi)1yiL(a, b) = \displaystyle\prod_{i=1}^{n} p_i^{y_i} (1 - p_i)^{1 - y_i}

其中 pi=P(Y=1X=xi)=11+e(axi+b)p_i = P(Y=1|X=x_i) = \dfrac{1}{1 + e^{-(a x_i + b)}} 是在自变量 X=xiX=x_i 条件下,响应变量 YY 取值为 11 的概率
为了方便计算,将其对数化

(a,b)=logL(a,b)=i=1n(yilogpi+(1yi)log(1pi))\ell(a, b) = \log L(a, b) = \displaystyle\sum_{i=1}^{n} \left(y_i \log p_i + (1 - y_i) \log (1 - p_i)\right)

通常来说,严格求出让 (a,b)\ell(a, b) 最小的 a,ba, b 比较困难
因此通常使用数值优化方法(如梯度下降法)来近似求解参数 a,ba, b

# 多元回归分析

对于非单变量问题,也可以应用回归分析
假设观测到数据集

(x1j,x2j,,xpj,yj),j=1,2,,n(x_{1j}, x_{2j}, \dots, x_{pj}, y_j), \quad j=1,2,\dots,n

其中 pp 是自变量的个数,nn 是观测数据的数量
目标是建立自变量 X1,X2,,XpX_1, X_2, \dots, X_p 与响应变量 YY 之间的关系

假设关系为线性关系

Y=a1X1+a2X2++apXp+bY = a_1 X_1 + a_2 X_2 + \cdots + a_p X_p + b

其中 a1,a2,,apa_1, a_2, \dots, a_pbb 是需要估计的参数

定义误差函数

l(a1,a2,,ap,b)=j=1n(yj(a1x1j+a2x2j++apxpj+b))2l(a_1, a_2, \dots, a_p, b) = \displaystyle\sum_{j=1}^{n} \left(y_j - \left(a_1 x_{1j} + a_2 x_{2j} + \cdots + a_p x_{pj} + b\right)\right)^2

目标是求出使误差函数最小的参数 a1,a2,,ap,ba_1, a_2, \dots, a_p, b

设偏微分为零

{lai=2j=1nxij(yj(a1x1j+a2x2j++apxpj+b))=0,i=1,2,,plb=2j=1n(yj(a1x1j+a2x2j++apxpj+b))=0\begin{cases} \dfrac{\partial l}{\partial a_i} = -2 \displaystyle\sum_{j=1}^{n} x_{ij} \left(y_j - \left(a_1 x_{1j} + a_2 x_{2j} + \cdots + a_p x_{pj} + b\right)\right) = 0, \quad i=1,2,\dots,p \\ \dfrac{\partial l}{\partial b} = -2 \displaystyle\sum_{j=1}^{n} \left(y_j - \left(a_1 x_{1j} + a_2 x_{2j} + \cdots + a_p x_{pj} + b\right)\right) = 0 \end{cases}

整理,得到关于 a1,a2,,ap,ba_1, a_2, \dots, a_p, b 的线性方程组

{a1j=1nx1jxij+a2j=1nx2jxij++apj=1nxpjxij+bj=1nxij=j=1nxijyj,i=1,2,,pa1j=1nx1j+a2j=1nx2j++apj=1nxpj+nb=j=1nyj\begin{cases} a_1 \displaystyle\sum_{j=1}^{n} x_{1j} x_{ij} + a_2 \displaystyle\sum_{j=1}^{n} x_{2j} x_{ij} + \cdots + a_p \displaystyle\sum_{j=1}^{n} x_{pj} x_{ij} + b \displaystyle\sum_{j=1}^{n} x_{ij} = \displaystyle\sum_{j=1}^{n} x_{ij} y_j, \quad i=1,2,\dots,p \\ a_1 \displaystyle\sum_{j=1}^{n} x_{1j} + a_2 \displaystyle\sum_{j=1}^{n} x_{2j} + \cdots + a_p \displaystyle\sum_{j=1}^{n} x_{pj} + n b = \displaystyle\sum_{j=1}^{n} y_j \end{cases}

该方程组可以通过矩阵方法求解
定义矩阵

X=(1x11x21xp11x12x22xp21x1nx2nxpn),Y=(y1y2yn)X = \begin{pmatrix} 1 & x_{11} & x_{21} & \cdots & x_{p1} \\ 1 & x_{12} & x_{22} & \cdots & x_{p2} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_{1n} & x_{2n} & \cdots & x_{pn} \end{pmatrix}, \quad Y = \begin{pmatrix} y_1 \\ y_2 \\ \vdots \\ y_n \end{pmatrix}

以及参数向量

β=(ba1a2ap)\beta = \begin{pmatrix} b \\ a_1 \\ a_2 \\ \vdots \\ a_p \end{pmatrix}

那么上述方程组可以表示为

XTXβ=XTYX^T X \beta = X^T Y

如果矩阵 XTXX^T X 可逆,那么参数向量 β\beta 的解为

β=(XTX)1XTY\beta = (X^T X)^{-1} X^T Y

这样就得到了多元回归分析中各个参数的估计值