Skip to content

3.2 线性回归模型和最小二乘法

原文 The Elements of Statistical Learning
翻译 szcf-weiya
发布 2016-09-30
更新 2019-02-24 21:25:28
状态 Done

更新笔记

@2017-12-27 最近在看 power analysis 的有关内容,R in Action 一书中举了例子来讨论对于不同模型如何进行 power analysis,但其中关于线性模型的部分没有想清楚.后来在这一节的式 (3.13) 找到答案,为丰富本节内容,遂更新与式 3.13 有关的 power analysis.

正如第二章介绍的那样,我们有输入向量 XT=(X1,X2,,Xp)XT=(X1,X2,,Xp),而且想要预测实值输出变量 YY.线性回归模型有如下形式

f(X)=β0+pj=1Xjβjf(X)=β0+pj=1Xjβj(3.1)

线性模型要么假设回归函数 E(YX)E(YX) 是线性的,要么假设它本身是一个合理的近似.这里 βjβj 是未知的参数或系数,变量 XjXj 可以有下列不同的来源:

  • 定量的输入变量
  • 定量输入变量的变换,比如对数变换,平方根变换或者平方变换
  • 基函数展开,比如 X2=X21,X3=X31X2=X21,X3=X31,产生一个多项式的表示
  • 定性输入变量水平 (level) 的数值或“虚拟”编码.举个例子,如果 GG 是有 5 个水平的输入变量,我们可能构造 Xj,j=1,,5Xj,j=1,,5 使得 Xj=I(G=j)Xj=I(G=j).通过一系列独立于水平的常数,整个 XjXj 可以用来表示 GG 的效应,因为在 5j=1Xjβj5j=1Xjβj 中,其中一个 XjXj 的系数为 1,其它的都是 0.
  • 变量的交叉影响,举个例子,X3=X1X2X3=X1X2

无论 XjXj 是哪个来源,模型关于参数都是线性的.

一般地,我们有一个用来估计参数 ββ 的训练数据集合 (x1,y1),,(xN,yN)(x1,y1),,(xN,yN).每个 xi=(xi1,xi2,,xip)Txi=(xi1,xi2,,xip)T 是第 ii 种情形的特征测量值的向量.最受欢迎的估计方法是 最小二乘 (least squares),我们取参数 β=(β0,β1,,βp)Tβ=(β0,β1,,βp)T 使得下式的残差平方和最小 RSS(β)=Ni=1(yif(xi))2=Ni=1(yiβ0pj=1xijβj)2RSS(β)=Ni=1(yif(xi))2=Ni=1(yiβ0pj=1xijβj)2(3.2)

从统计学的观点来看,如果训练观测值 (xi,yi) 是从总体独立随机抽取的,则该标准是很合理的.即使 xi’s 不是随机选取的,如果在给定输入 xi 的条件下 yi 条件独立,这个准则也是有效的.图 3.1 展示了在充满数据对 (X,Y)IRp+1 维空间的最小二乘拟合的几何意义.注意到 (3.2) 对模型 (3.1) 的有效性没有作假设,而是简单地找到对数据最好的线性拟合.无论数据是怎样产生的,最小二乘拟合直观上看是满意的,这个准则衡量了平均的拟合误差.

图 3.1 XR2 中的最小二乘拟合.我们寻找关于 X 并且使 Y 的残差最小的线性函数.

那我们应该怎样最小化 (3.2)?记 XN×(p+1) 的矩阵,矩阵每一行为一个输入向量(在第一个位置为 1),类似地令 y 为训练集里的 N 维输出向量.然后我们可以将残差平方和写成如下形式 RSS(β)=(yXβ)T(yXβ)

这是含 p+1 个参数的二次函数.关于 β 求导有

RSSβ=2XT(yXβ)2RSSββT=2XTX

假设 X 列满秩,因此 XTX 是正定的,我们令一阶微分为 0,即 XT(yXβ)=0

得到唯一解 ˆβ=(XTX)1XTy

在输入向量 x0 下的预测值由 ˆf(x0)=(1:x0)Tˆβ 给出;在训练输入值下的拟合值为 ˆy=Xˆβ=X(XTX)1XTy

其中,ˆyi=ˆf(xi).在式 (3.7) 中出现的矩阵 H=X(XTX)1XT 有时称之为“帽子”矩阵,因为其为 y 戴了一顶帽子.

图 3.2 含两个预测的最小二乘回归的 N 维几何图形.输出向量 y 正交投影在输入向量 x1x2 张成的超平面中.投影向量 ˆy 表示最小二乘法的预测值.

图 3.2 展示了在 IRN 中最小二乘估计的另一种几何表示.我们记 X 的列向量为 x0,x1,,xp,其中 x01.下文中第一列都是这样假设.这些向量张成了 IRN 的子空间,也被称作 X 的列空间.我们通过选择 ˆβ 来最小化 RSS(β)=(yXβ)2,则残差向量 yˆy 正交于子空间.(3.5) 式描述了这种正交,然后估计值 ˆy 因此可以看成是 y 在子空间中的正交投影.帽子矩阵 H 计算了正交投影,因此也被称作投影矩阵.

可能会出现 X 的列不是线性独立的,则 X 不是满秩的.举个例子,如果两个输入是完全相关的,(比如,x2=3x1).则矩阵 XTX 是奇异的,并且最小二乘的系数 ˆβ 不是唯一的.然而,拟合值 ˆy=Xˆβ 仍然是 y 在列空间 X 的投影;用 X 的列向量来表示这种投射的方式不止一种.当一个或多个定性输入用一种冗余的方式编码时经常出现非满秩的情形.通过重编码或去除 X 中冗余的列等方式可以解决非唯一表示的问题.大多数回归软件包会监测这些冗余并且自动采用一些策略去除冗余项.信号和图像分析中经常发生秩缺失,其中输入的个数 p 可以大于训练的情形个数 N.在这种情形下,特征经常通过滤波来降维或者对拟合进行正则化.(5.2.3节和第 18 章)

截至目前我们已经对数据的真实分布做的假设非常少.为了约束 ˆβ 的取样特点,我们现在假设观测值 yi 不相关,且有固定的方差 σ2,并且 xi 是固定的(非随机).最小二乘法的参数估计的 协方差矩阵 (variance-covariance matrix) 可以很容易从式 (3.6) 导出:

Var(ˆβ)=(XTX)1σ2

weiya 注:

根据维基百科,协方差矩阵的英文表达有,covariance matrix, variance-covariance matrix, dispersion matrix 等等. 经 @fengxiang guo 提醒,为避免误解,统一翻译成协方差矩阵.

一般通过下式来估计方差 σ2

ˆσ2=1Np1Ni=1(yiˆyi)2

之所以分母是 Np1 而不是 N,是因为 Np1 使得 ˆσ2 为无偏估计:E(ˆσ2)=σ2

为了对参数和模型进行推断,需要一些额外的假设.我们现在假设式 (3.1) 是关于均值的正确模型;则 Y 的条件期望关于 X1,X2,,Xp 是线性的.我们也假设 Y 与其期望的偏差是可加的且是正态的.因此 Y=E(YX1,,Xp)+ε=β0+pj=1Xjβj+ε

其中误差 ϵ 是期望值为 0 方差为 σ2 的高斯随机变量,记作 εN(0,σ2)

由式 (3.9),可以很简单地证明 ˆβN(β,(XTX)1σ2)

这是一个有上述均值向量和协方差矩阵的多元正态分布.同时有 (Np1)ˆσ2σ2χ2Np1

是一个自由度为 Np1 的卡方分布.另外,ˆβˆσ2 是统计独立的.我们利用这些分布性质得到假设检验以及对于参数 βj 的置信区间

图 3.3 t30,t100以及标准正态三种分布的尾概率 Pr(|Z|>z).图中显示了在 p=0.050.01 水平下检验显著性的合适分位数.当 N 大于 100 时 t 分布与标准正态分布之间的差异很小.

为了检验系数 βj 的这一假设,我们构造标准化因数或者 Z-分数. zj=ˆβjˆσvj

其中 vj(XTX)1 的第 j 个对角元.零假设为 βj=0zj 分布为 tNp1(自由度为 Np1t 分布),因此当 zj 的绝对值较大时会拒绝零假设.如果用已知的 σ 值替换 ˆσ,则 zj 服从标准正态分布.t 分布和标准正态分布在尾概率之间的差异随着样本规模增大可以忽略,因此我们一般使用正态的分位数(图 3.3).

我们经常需要同时检验多个系数 (groups of coefficients) 的显著性.举个例子,检验有 k 个水平的分类变量是否要从模型中排除,我们需要检验用来表示水平的虚拟变量的系数是否可以全部设为 0.这里我们利用 F 统计量

F=(RSS0RSS1)/(p1p0)RSS1/(Np11)

其中 RSS1 是有 p1+1 个参数的大模型的最小二乘法拟合的残差平方和,RSS0 是有 p0+1 参数的小模型的最小二乘法拟合的残差平方和,其有 p1p0 个参数约束为 0.F 统计量衡量了在大模型中每个增加的系数对残差平方和的改变,而且用 σ2 的估计值进行标准化.在高斯分布以及小模型的零假设为正确的情况下,F 统计量服从 Fp1p0,Np11 分布.可以证明 (3.12) 式中的 zj 等于从模型中去除单系数 βjF 统计量(习题 3.1),当 N 足够大时,Fp1p0,Np11 近似 χ2p1p0

weiya 注:Ex. 3.1

已解决,详见 Issue 69: Ex. 3.1

weiya 注

在 R 语言中,可以采用 pwr 包来进行 power analysis.对于线性模型(比如多重回归),pwr.f2.test(u=, v=, f2=, sig.level=, power=) 可以用来进行 power analysis,其中 uv 分别是分子和分母的自由度,f2有效大小 (effect size). 当需要衡量一个变量集对输出变量的影响,f2 计算公式为, f2=R21R2, 当需要衡量一个变量集优于另一个变量集的影响时, f2=R2ABR2A1R2AB, 其中 R2A 是变量集 A 解释的方差,R2AB 是变量集 AB 共同解释的方差.

这里举一个实际例子来说明如何在线性回归模型中进行 power analysis. 假设我们要研究老板的领导风格对公司员工满意度的影响,同时员工满意度还与薪酬有关,其中薪酬用 3 个变量来衡量,而老板领导风格用 4 个变量来衡量.根据以往经验,薪酬能够解释员工满意度方差的 30%,现在问题是确定多少的调查个体,使得显著度为 .05,而且 power 为 .90.求解代码为pwr.f2.test(u=3, f2=(.35-.30)/(1-.35), sig.level=0.05, power=0.90),输出v=184.2426. 其中uv分别被称为分子、分母自由度.结合 (3.13) 式,我们可以看出 p1p0=u,Np11=v,并且这里 p0=4,p1=7.换个角度看,其实式 (3.13) 就是用于 power analysis 的检验统计量,原假设为可以将领导力水平的四个变量系数设为 0,若 F 足够大,则会拒绝原假设.

类似地,我们可以分离式 (3.10) 中的 βj 得到 βj 的置信水平为 12α 的置信区间

(ˆβjz1αv1/2jˆσ,ˆβj+z1αv1/2jˆσ)

这里,z1α 是正态分布的 1α 分位数. z10.025=1.96,z10.05=1.645,etc.

因此报告 ˆβ±2se(ˆβ) 的标准做法是约 95% 的置信区间.即便没有高斯误差的假设,区间也近似正确,因为当样本规模 N 时,覆盖范围近似为 12α

运用类似的方法我们可以得到全体系数向量 β 的近似置信集,记作

Cβ={β((ˆββ)TXTX(ˆββ)ˆσ2χ2(1α)p+1}

其中,χ2(1α) 个自由度的卡方分布的 1α 的分位数:举个例子,χ2(10.05)5=11.1,χ2(10.1)5=9.2.这个关于 β 的置信集导出关于真函数 f(x)=xTβ 对应的置信集,记作 {xTββCβ}练习 3.2;并见 5.2.2 节中函数置信带的例子图 5.4)

weiya 注:Ex. 3.2

已解决,详见 Issue 120: Ex. 3.2

例子:前列腺癌

这个例子的数据来自 Stamey et al. (1989)1.他们检验即将接受彻底前列腺切除术的男性的前列腺特定抗原水平和一系列临床措施之间的相关性.变量有癌体积的对数值 (lcavol)、前列腺重量的对数值 (lweight)、良性前列腺增生数量 (lbph)、精囊浸润 (svi)、包膜浸透的对数值 (lcp)、Gleason 得分 (gleason)、Gleason 得分为 4 或 5 的比例 (pgg45).表 3.1 中给出的预测变量的相关性矩阵显示了很多强相关性.第 1 章的图 1.1 是散点图矩阵,显示了变量两两间的图象.我们看到 svi 是二进制变量,gleason 是有序分类变量.举个例子,我们看到 lcavol 和 lcp 都与响应变量 lpsa 有强的相关性.我们需要联合拟合这些影响来解开预测变量和响应变量之间的关系.

表 3.1 前列腺癌数据中预测变量的相关系数;表 3.2 前列腺癌数据的线性模型拟合.Z 分数为系数除以标准误差 (3.12).大体上, Z 分数绝对值大于 2 表示在 p=0.05 的水平下显著不为零.

我们对前列腺特定抗原的对数值 lpsa 和经过一次标准化有单位方差的预测变量进行线性模型拟合.我们随机将数据集分离得到规模为 67 的训练集以及规模为 30 的测试集.我们对训练集应用最小二乘估计得到表 3.2 中的估计值、标准误差以及 Z 分数.Z 分数定义式为 (3.12),并且衡量了从模型中去掉该变量的影响.在 5% 的水平下,Z 分数的绝对值大于 2 近似显著.(在我们的例子中,我们有 9 个参数,t679 的分布的 0.025 尾分位数是 ±2.002!)预测变量 lcavol 显示了最强的影响,lweight 和 svi 的影响同样显著.注意到一旦 lcavol 在模型中,lcp 便不显著(当使用一个没有 lcavol 的模型,lcp 是强显著的).我们也可以用 F 统计量 (3.13) 一次除去一些项.举个例子,我们考虑除掉表 3.2 中所有不显著的项,agelcpgleason 以及 pgg45.我们得到

F=(32.8129.43)/(95)29.43/(679)=1.67

其中,p 值为 0.17(Pr(F4,58>1.67)=0.17),因此不是显著的.

测试数据的平均预测误差为 0.521.相反地,使用 lpsa 训练数据的平均值预测的测试误差为 1.057,称作“基本误差阶”.因此线性模型将基本误差阶降低了大概 50%.下文中我们将要回到这个例子来比较不同的选择和收缩方法.

Guass-Markov 定理

统计学中一个很有名的结论称参数 β 的最小二乘估计在所有的线性无偏估计中有最小的方差.我们将要严谨地说明这一点,并且说明约束为无偏估计不是明智的选择.这个结论导致我们考虑本章中像岭回归的有偏估计.我们考虑任意参数 θ=aTβ 的线性组合,举个例子,预测值 f(x0)=xT0β 是这种形式.aTβ 的最小二乘估计为

ˆθ=aTˆβ=aT(XTX)1XTy

考虑固定 X,则上式是关于响应变量 y 的线性函数 cT0y.如果我们假设线性模型是正确的,则 aTˆβ 是无偏的,因为 E(aTˆβ)=E(aT(XTX)1XTy)=aT(XTX)1XTXβ=aTβ

Gauss-Markov 定理说如果 aTβ 存在其它无偏估计 ˜θ=cTy,即 E(cTy)=aTβ,则

Var(aTˆβ)Var(cTy)

该证明(习题3.3a)运用三角不等式.为了简化我们已经用单个参数 aTβ 估计来叙述结果,但若额外增加习题3.3b中的定义,则可以用整个参数向量 β 来说明Gauss-Markov 定理.

weiya注:Ex. 3.3

已完成,详见 Issue 70: Ex. 3.3

考虑 θ 的估计值 ˜θ 的均方误差

MSE(˜θ)=E(˜θθ)2=Var(˜θ)+[E(˜θ)θ]2

第一项为方差,第二项为平方偏差.Gauss-Markov 定理表明最小二乘估计在所有无偏线性估计中有最小的均方误差.然而,或许存在有较小均方误差的有偏估计.这样的估计用小的偏差来换取方差大幅度的降低.实际中也会经常使用有偏估计.任何收缩或者将最小二乘的一些参数设为 0 的方法都可能导致有偏估计.我们将在这章的后半部分讨论许多例子,包括 变量子集选择岭回归.从一个更加实际的观点来看,许多模型是对事实的曲解,因此是有偏的;挑选一个合适的模型意味着要在偏差和方差之间创造某种良好的平衡.我们将在第 7 章中详细讨论这些问题.

正如在第 2 章中讨论的那样,均方误差与预测的正确性紧密相关.考虑在输入 x0 处的新的响应变量

Y0=f(x0)+ε0

其估计量 ˜f(x0)=xT0˜β 的期望预测误差为

E(Y0˜f(x0))2=σ2+E(xT0˜βf(x0))2=σ2+MSE(˜f(x0))

因此,预测误差的估计值和均方误差只有常数值 σ2 的差别,σ2 表示了新观测 y0 的方差.

从简单单变量回归到多重回归

p>1 个输入的线性模型 (3.1) 称作 多重线性回归模型.用单 (p=1) 变量线性模型的估计能更好理解模型 (3.6) 的最小二乘估计,我们将在这节中指出.

首先假设我们有一个没有截距的单变量模型,也就是

Y=Xβ+ε

最小二乘估计和残差为

ˆβ=N1xiyiN1x2iri=yixiˆβ

为了简便用向量表示,我们令 y=(y1,,yN)Tx=(x1,,xN)T,并且定义 x,y=Ni=1xiyi=xTy

xy 之间的内积,于是我们可以写成

ˆβ=x,yx,xr=yxˆβ

weiya 注:原书脚注

The inner-product notation is suggestive of generalizations of linear regression to different metric spaces, as well as to probability spaces. 内积表示是线性回归模型一般化到不同度量空间(包括概率空间)建议的方式.

正如我们所看到的,这个简单的单变量回归提供了多重线性回归的框架 (building block).进一步假设输入变量 x1,x2,,xp(数据矩阵 X 的列)是正交的;也就是对于所有的 jkxj,xk=0.于是很容易得到多重最小二乘估计 ˆβj 等于 xj,y/xj,xj ——单变量估计.换句话说,当输入变量为正交的,它们对模型中其它的参数估计没有影响.

正交输入变量经常发生于平衡的、设定好的实验(强制了正交),但是对于实验数据几乎不会发生.因此为了后面实施这一想法我们将要对它们进行正交化.进一步假设我们有一个截距和单输入 x.则 x 的最小二乘系数有如下形式

ˆβ1=xˉx1,yxˉx1,xˉx1

其中,ˉx=ixi/N,且 N 个元素全为 1 的向量 1=x0.我们可以将式 (3.27) 的估计看成简单回归 (3.26) 的两次应用.这两步是:

  1. 1 上回归 x 产生残差 z=xˉx1;
  2. 在残差 z 上回归 y 得到系数 ˆβ1 在这个过程中,“在 a 上回归 b”意思是 ba 上的无截距的简单单变量回归,产生系数 ˆγ=a,b/a,a 以及残差向量 bˆγa.我们称 ba 校正(adjusted),或者关于 a 正交化.

第一步对 x 作关于 x0=1 的正交化.第二步是一个利用正交预测变量 1z 简单的单变量回归.图 3.4 展示了两个一般输入 x1x2 的过程.正交化不会改变由 x1x2 张成的子空间,它简单地产生一个正交基来表示子空间.

正交输入的最小二乘回归.向量 x2 在向量 x1 上回归,得到残差向量 zyz 上的回归给出 x2 的系数.把 yx1z 上的投影加起来给出了最小二乘拟合 ˆy

这个方法可以推广到 p 个输入的情形,如算法 3.1 所示.注意到第二步的输入 z0,,zj1 是正交的,因此这里计算得到的简单回归的系数实际上是多重回归的系数.

算法的结果为

ˆβp=zp,yzp,zp

对第二步中的残差进行重排列,我们可以看到每个 xjzk,kj 的线性组合.因为 zj 是正交的,它们形成了 X 列空间的基,从而得到最小二乘在该子空间上投影为 ˆy.因为 zp仅与 xp 有关(系数为 1),则式 (3.28) 确实是 yxp 上多重回归的系数.

这一重要结果揭示了在多重回归中输入变量相关性的影响.注意到通过对 xj 重排列,其中的任何一个都有可能成为最后一个,然后得到一个类似的结果.因此一般来说,我们已经展示了多重回归的第 j 个系数是 yxj012(j1)(j+1),p 的单变量回归,xj012(j1)(j+1),pxjx0,x1,,xj1,j+1,,xp 回归后的残差向量:

多重回归系数 ˆβj 表示 xj 经过 x0,x1,,xj1,xj+1,,xp 调整后 xjy 额外的贡献

如果 xp 与某些 xk 高度相关,残差向量 zp 会近似等于 0,而且由 (3.28) 得到的系数 ˆβp 会非常不稳定.对于相关变量集中所有的变量都是正确的.在这些情形下我们可能得到所有的 Z 分数(如表 3.2 所示)都很小——相关变量集中的任何一个变量都可以删掉——然而我们不可能删掉所有的变量.由 (3.28) 我们也得到估计方差 (3.8) 的另一种方法 Var(ˆβp)=σ2zp,zp=σ2zp2

换句话说,我们估计 ˆβp 的精度取决于残差向量 zp 的长度;它表示 xp 不能被其他 xk 解释的程度.

算法 3.1 被称作多重回归的 Gram-Schmidt 正交化,也是一个计算估计的有用的数值策略.我们从中不仅可以得到 ˆβp,而且可以得到整个多重最小二乘拟合,如练习 3.4 所示.

weiya 注:Ex. 3.4

已解决,详见 Issue 72: Ex. 3.4

我们可以用矩阵形式来表示算法 3.1 的第二步:

X=ZΓ

其中 Zzj(按顺序)作为列向量的矩阵,Γ 是值为 ˆγkj 的上三角矩阵.引入第 j 个对角元 Djj=zj 的对角矩阵 D,我们有 X=ZD1DΓ=QR

称为矩阵 X 的 QR 分解.这里 QN×(p+1) 正交矩阵,QTQ=I,并且 R(p+1)×(p+1) 上三角矩阵.

QR 分解表示了 X 列空间的一组方便的正交基.举个例子,很容易可以看到,最小二乘的解由下式给出 ˆβ=R1QTyˆy=QQTy

等式 (3.32) 很容易求解,因为 R 为上三角(练习 3.4

weiya 注:Ex. 3.4

已解决,详见 Issue 72: Ex. 3.4

多重输出

假设有多重输出 Y1,Y2,,YK,我们希望通过输入变量 X0,X1,X2,,Xp 去预测.我们假设对于每一个输出变量有线性模型

Yk=β0k+pj=1Xjβjk+εk=fk(X)+εk

N 个训练情形时我们可以将模型写成矩阵形式

Y=XB+E

这里 YN×K 的响应矩阵,ik 处值为 yikXN×(p+1) 的输入矩阵,B(p+1)×K 的系数矩阵 EN×K 的误差矩阵.单变量损失函数 (3.2) 的直接推广为 RSS(B)=Kk=1Ni=1(yikfk(xi))2=tr[(YXB)T(YXB)]

最小二乘估计有和前面一样的形式

ˆB=(XTX)1XTY

因此第 k 个输出的系数恰恰是 ykx0,x1,,xp 上回归的最小二乘估计.多重输出不影响其他的最小二乘估计.

如果式 (3.34) 中的误差 ε=(ε1,,εK) 相关,则似乎更恰当的方式是修正 (3.37) 来改成多重变量版本.特别地,假设 Cov(ε)=Σ,则 多重变量加权准则

RSS(B;Σ)=Ni=1(yif(xi))TΣ1(yif(xi))

这可以由 多变量高斯定理 自然得出.这里 f(x) 为向量函数 (f1(x),,fK(x)),而且 yi 为观测值 iK 维响应向量.然而,可以证明解也是由式 (3.39) 给出;K 个单独的回归忽略了相关性(练习 3.11).如果 Σi 对于不同观测取值不同,则不再是这种情形,而且关于 B 的解不再退化 (decouple).

weiya 注:Ex. 3.11

已解决,详见 Issue 73: Ex. 3.11

在 3.7 节我们继续讨论多重输出的问题,并且考虑需要合并回归的情形.


  1. Stamey, T., Kabalin, J., McNeal, J., Johnstone, I., Freiha, F., Redwine, E. and Yang, N. (1989). Prostate specific antigen in the diagnosis and treatment of adenocarcinoma of the prostate II radical prostatectomy treated patients, Journal of Urology 16: 1076–1083. 

💬 讨论区