第 20 章 · 回归与多元统计

20.5 预测、正则化与模型选择

Prediction, Regularization and Model Selection
模型拟合得好,仍可能预测得差。正则化通过改变偏差与方差控制估计波动,模型选择则需要评估整个调参流程。本节从未来平方损失出发,证明岭回归的偏差、协方差与正交设计风险,推导lasso的最优性条件,再用精确反例说明复用验证数据的偏差,并介绍嵌套验证与高维推断的限制。
先修与阅读位置

主要先修:17.1 偏差、风险与一致性、20.1 线性回归与Gauss–Markov定理。

这是20.1之后的预测与模型选择支线,不必先学GLM或多元统计。数据分割用于22.6,正则化与选择误差用于23.4。 查看全书依赖图与分支路线。

20.5.1 训练风险与未来预测风险

记\(D=\{(X_i,Y_i)\}_{i=1}^n\)为用于构建模型的数据,\(\widehat f_D\)为由它得到的预测器。先考虑iid抽样和与\(D\)独立、来自同一总体的未来观测\((X_*,Y_*)\),所有涉及的平方损失均可积。训练风险与给定已建模型的未来风险分别为

\[\widehat R_{\mathrm{train}}=\frac1n\sum_{i=1}^n\{Y_i-\widehat f_D(X_i)\}^2,\qquad R(\widehat f_D\mid D)=E[\{Y_*-\widehat f_D(X_*)\}^2\mid D].\]
(20.5-1)

前者在参与建模的观测上计算,后者针对独立未来观测;算法的平均风险还需对\(D\)取期望。训练误差不能一般作为未来风险的无偏估计。检验系数是否为零、恢复真实变量集合与最小化预测风险,也不是同一个目标。

在线性未来模型\(Y_*=X_*^{\mathsf T}\beta+\varepsilon_*\)下,设未来误差均值为零、方差为\(\sigma^2\),与未来设计及训练数据独立。令\(\Sigma_*=E(X_*X_*^{\mathsf T})\)为未来设计的二阶矩矩阵,则

\[R(\widehat\beta\mid D)=\sigma^2+(\widehat\beta-\beta)^{\mathsf T}\Sigma_*(\widehat\beta-\beta).\]
(20.5-2)

因此系数的欧氏均方误差只有在\(\Sigma_*=\operatorname{Id}_p\)等明确条件下才直接对应未来均值预测风险。设计改变、变量尺度不同,都可能改变风险的权重;不可把训练拟合、系数估计与未来响应预测的误差混用。

20.5.2 岭回归:闭式解、偏差与协方差

定义20.5.1 岭回归

下面改为固定设计\(X\in\mathbb R^{n\times p}\),假设\(Y=X\beta+\varepsilon\)、\(E\varepsilon=0\)、\(\operatorname{Cov}(\varepsilon)=\sigma^2\operatorname{Id}_n\)。固定非随机\(\lambda>0\),岭回归定义为

\[\widehat\beta_\lambda=\arg\min_b\left\{\tfrac12\|Y-Xb\|^2+\tfrac\lambda2\|b\|^2\right\}=(X^{\mathsf T}X+\lambda\operatorname{Id}_p)^{-1}X^{\mathsf T}Y.\]
(20.5-3)

正则化是在拟合损失之外增加约束或惩罚;这里的二次惩罚使系数向零收缩。目标的Hessian为\(X^{\mathsf T}X+\lambda\operatorname{Id}_p\),正定,所以即使\(p>n\)也有唯一解。若\(\lambda=0\),只有满列秩时才按普通逆矩阵得到OLS。

本页公式惩罚全部列出的坐标。若另加截距,通常不惩罚截距,先在训练部分中心化再处理其余系数。改变变量单位会改变惩罚效果,标准化也应在相应训练部分估计。注意损失归一化:若把平方损失改成\(\|Y-Xb\|^2/(2n)\)而保留\(\lambda\|b\|^2/2\),闭式解中的惩罚就变为\(n\lambda\operatorname{Id}_p\)。

定理20.5.2 固定惩罚下的风险分解

令\(M_\lambda=X^{\mathsf T}X+\lambda\operatorname{Id}_p\)。只需上述两个误差矩条件,不要求正态,便有

\[\operatorname{Bias}(\widehat\beta_\lambda)=-\lambda M_\lambda^{-1}\beta,\qquad \operatorname{Cov}(\widehat\beta_\lambda)=\sigma^2M_\lambda^{-1}X^{\mathsf T}XM_\lambda^{-1}.\]
(20.5-4)

若\(X^{\mathsf T}X=a\operatorname{Id}_p\)、\(a>0\),令\(\kappa=a/(a+\lambda)\),则

\[E\|\widehat\beta_\lambda-\beta\|^2=(1-\kappa)^2\|\beta\|^2+\kappa^2\frac{p\sigma^2}{a}.\]
(20.5-5)

右侧第一项是偏差平方,第二项是协方差矩阵的迹。

完整证明。代入\(Y=X\beta+\varepsilon\),得\(\widehat\beta_\lambda-\beta=-\lambda M_\lambda^{-1}\beta+M_\lambda^{-1}X^{\mathsf T}\varepsilon\)。随机项均值为零,直接求期望和协方差得到式(20.5-4)。对任意平方可积向量估计量,把误差写成确定偏差加零均值波动,展开平方范数后交叉项期望为零,故均方误差等于偏差平方加协方差的迹。

在正交设计下\(\widehat\beta_\lambda=\kappa\widehat\beta_{\mathrm{OLS}}\),其均值为\(\kappa\beta\)、协方差为\(\kappa^2\sigma^2\operatorname{Id}_p/a\),代入即得式(20.5-5)。证毕。若\(\|\beta\|>0\),对这个精确二次函数求导,最小值在\(\kappa=\|\beta\|^2/[\|\beta\|^2+p\sigma^2/a]\)处,即\(\lambda=p\sigma^2/\|\beta\|^2\)。

最小化所需的真系数和噪声方差未知,所以这一值不能直接作为实际调参答案。定理针对预先固定的\(\lambda\);若\(\widehat\lambda\)由同一数据选择,估计量已不再是固定线性变换,不能只把随机\(\widehat\lambda\)代入式(20.5-4)作为其无条件协方差。

20.5.3 手算偏差与方差的取舍

例20.5.1 两个正交系数

取\(X^{\mathsf T}X=\operatorname{Id}_2\)、\(\beta=(1,0)^{\mathsf T}\)、\(\sigma^2=1\)。系数风险为

\[R_\beta(\lambda)=\frac{\lambda^2+2}{(1+\lambda)^2}.\]
(20.5-6)

逐项计算。OLS对应\(\lambda=0\),风险为2。取\(\lambda=2\),收缩因子\(\kappa=1/3\),偏差向量为\((-2/3,0)\),偏差平方为\(4/9\);协方差为\(\operatorname{Id}_2/9\),方差迹为\(2/9\),总风险为\(2/3\)。这里引入偏差降低了均方误差。若\(\lambda\to\infty\),估计量趋于零,风险回升到\(\|\beta\|^2=1\),所以并非惩罚越大越好。

若独立未来设计满足\(\Sigma_*=\operatorname{Id}_2\),未来噪声方差仍为1,则对训练抽样取期望的未来响应风险还需加1:OLS为3,固定\(\lambda=2\)的岭回归为\(5/3\)。这些数值来自精确矩条件计算,没有正态近似或模拟。

两个正交系数的岭回归风险分解惩罚从零增大时,方差从二下降,偏差平方从零增加。总系数均方误差在惩罚二处达到三分之二,然后回升。例1:系数风险的偏差与方差(精确公式)210.50λ = 2:风险 2/3总系数均方误差偏差平方协方差矩阵的迹0123456横轴:固定惩罚 λ;纵轴:对训练抽样取期望的系数风险
图20.5-1 按式(20.5-6)及其两项精确计算采样点并连线,不是交叉验证误差曲线。图示最小值使用例1已知的真参数,实际数据通常不知道这个风险函数。

20.5.4 lasso、次梯度与变量选择

定义20.5.3 lasso及KKT条件

固定\(\lambda>0\),lasso使用绝对值惩罚:

\[\widehat\beta_{\mathrm L}\in\arg\min_b J_\lambda(b),\qquad J_\lambda(b)=\tfrac12\|Y-Xb\|^2+\lambda\sum_j|b_j|.\]
(20.5-7)

绝对值在零处不可微。其次梯度是满足凸函数支撑不等式的斜率,在非零处为符号,在零处为区间\([-1,1]\)。最优解的必要充分条件,即本问题的KKT条件,为

\[X^{\mathsf T}(Y-X\widehat\beta_{\mathrm L})=\lambda z,\qquad z_j=\operatorname{sgn}(\widehat\beta_{\mathrm L,j})\ (\widehat\beta_{\mathrm L,j}\ne0),\quad z_j\in[-1,1]\ (\widehat\beta_{\mathrm L,j}=0).\]
(20.5-8)

最优性条件的证明。必要性可沿各坐标看导数:非零处普通导数须为零,零处右导数须非负、左导数须非正,恰给式(20.5-8)。充分性来自\(\|b\|_1\ge\|\widehat\beta_{\mathrm L}\|_1+z^{\mathsf T}(b-\widehat\beta_{\mathrm L})\)。展开平方损失并用KKT消去一次项,得

\[J_\lambda(b)-J_\lambda(\widehat\beta_{\mathrm L})\ge\tfrac12\|X(b-\widehat\beta_{\mathrm L})\|^2\ge0.\]
(20.5-9)

故该条件保证全局最小值。证毕。在\(X^{\mathsf T}X=\operatorname{Id}_p\)时,令\(u=X^{\mathsf T}Y\),逐坐标解得软阈值\(\widehat\beta_{\mathrm L,j}=\operatorname{sgn}(u_j)(|u_j|-\lambda)_+\),其中\((v)_+=\max(v,0)\)。这说明为何lasso可以把系数恰置零。

稀疏系数不自动等于恢复真实变量。重复设计列可导致系数解不唯一,高度相关列则可能使选中的变量随样本扰动改变;预测风险的合适惩罚也不一定适合变量恢复。高维稀疏模型中的恢复定理通常还需设计条件、最小信号强度和惩罚尺度等额外假设。相关理论见文献[2]及高维模型,本节不证明变量选择一致性。

即使系数解不唯一,所有lasso解的训练拟合值仍相同:若两个解给出不同\(Xb\),取其平均,平方损失因严格凸而严格降低,惩罚因凸性不会增加,和最优性矛盾。这一结论并未保证任意未来设计下的预测相同。

20.5.5 独立测试、交叉验证与复用偏差

独立测试集只用于评估已锁定的模型。若\(m\)个测试观测iid、与全部拟合及调参数据\(D\)独立,则由条件期望线性性,

\[E\left[\frac1m\sum_{j=1}^m\{Y'_j-\widehat f_D(X'_j)\}^2\,\middle|\,D\right]=R(\widehat f_D\mid D).\]
(20.5-10)

验证集则用于挑选惩罚、变量或模型类型,这些选择量统称超参数。选择以后再用同一验证误差报告模型表现,会破坏式(20.5-10)所需的独立性。

在iid设定下,按与观测值独立的固定或随机划分,将数据分成\(K\)折\(I_k\)。对每个固定候选\(\lambda\),只用第\(k\)折之外的数据拟合\(\widehat f^{(-k)}_\lambda\),交叉验证分数为

\[\operatorname{CV}(\lambda)=\frac1n\sum_{k=1}^K\sum_{i\in I_k}\{Y_i-\widehat f^{(-k)}_\lambda(X_i)\}^2.\]
(20.5-11)

每个验证观测不参与对应训练,但模型使用的训练规模小于全样本;各折通常共享训练数据,不能假定分数相互独立。它可用于比较预定候选,不能把最小CV值直接视为所选最终模型的无偏风险估计,也不能把\(K\)个折分数当作\(K\)个独立样本来获得精确标准误。

例20.5.2 验证误差为零,真实风险仍为2

未来响应\(Y\)以等概率取\(\pm1\),候选预测器事先只有两个常数\(f_+=1,f_-=-1\)。任一候选的未来平方风险都是\(E(Y-f_\pm)^2=(0+4)/2=2\)。现在仅用一个独立验证响应\(Y_v\)选择候选。

全部结果。若\(Y_v=1\)选\(f_+\),若\(Y_v=-1\)选\(f_-\);所选候选在该验证点的平方误差恒为零。但在另一个独立未来响应上,和所选符号相同的概率仍为\(1/2\),不同的概率仍为\(1/2\),故风险仍为2。选择造成的误差低估是2,即使每个候选本身完全没有在验证集上拟合参数。这是精确有限概率反例,说明调参与性能评估要对整个流程区分。

20.5.6 嵌套验证、数据泄漏与高维限制

嵌套交叉验证把调参放在每个外层训练部分内部:内层比较候选,选择后在外层训练部分重拟合,外层测试折仅用于评分。评估对象是“预处理+选择+拟合”的整个流程。均值填补、标准化、响应相关筛选和PCA等操作,都应在相应的内层训练折中估计,再用于内层验证折;重拟合时再用全部外层训练部分估计。提前从全部数据学习这些变换,会使验证或测试信息进入拟合过程,称为数据泄漏。

嵌套交叉验证的数据使用顺序外层训练部分内部进行内层预处理、选择和重拟合,再用外层测试部分评估。外层测试数据没有通向预处理或调参的箭头。一个外层折:在训练部分内部完成全部选择用于建模的数据按预定规则划外层折外层训练部分可用于拟合与内层选择不使用外层测试响应外层测试部分仅用于本折最终评分每个内层训练折:估计预处理并拟合候选内层验证选择超参数外层训练部分重拟合锁定本折预测器评估外层测试损失
图20.5-2 嵌套验证的信息流示意,不是算法性能实验。每个外层折都重新执行内层选择;样本iid且外层划分独立于观测值时,保留部分评估该训练规模下的整个流程。

外层评分不自动等于使用全样本重拟合后的风险,也不消除有限样本波动。若根据外层结果继续修改搜索方案,外层也承担了调参角色,需要新的独立评估。分组观测、时间序列或其他依赖数据,应按目标关系分组或保留时间顺序,不能沿用随机分折的iid解释。相关方法与经验研究见文献[3],本节未提出交叉验证的普遍有限样本置信定理。

最后,岭回归的唯一数值解不恢复秩亏模型的参数可识别性。它的拟合矩阵\(S_\lambda=XM_\lambda^{-1}X^{\mathsf T}\)一般不幂等;即使误差正态,也有

\[E\|Y-S_\lambda Y\|^2=\|(\operatorname{Id}_n-S_\lambda)X\beta\|^2+\sigma^2\operatorname{tr}\{(\operatorname{Id}_n-S_\lambda)^{\mathsf T}(\operatorname{Id}_n-S_\lambda)\}.\]
(20.5-12)

偏差和加权平方和都不同于OLS残差投影,不能用\(n-p\)机械套用普通t/F与系数区间。lasso筛选后的OLS也不能忽略筛选过程;高维及选择后推断见23.4节。

20.5.7 习题与完整解答

习题20.5-1 OLS训练误差的乐观偏差

固定满列秩设计,\(n>p\),误差零均值、协方差\(\sigma^2\operatorname{Id}_n\)。令\(Y'=X\beta+\varepsilon'\)为同一设计下独立的新响应向量。证明OLS的训练均方误差期望为\(\sigma^2(1-p/n)\),新响应均方误差期望为\(\sigma^2(1+p/n)\)。

设\(P=X(X^{\mathsf T}X)^{-1}X^{\mathsf T}\),训练残差为\((\operatorname{Id}_n-P)\varepsilon\)。因投影幂等且\(\operatorname{tr}P=p\),平方范数期望为\(\sigma^2\operatorname{tr}(\operatorname{Id}_n-P)=\sigma^2(n-p)\)。新响应误差为\(\varepsilon'-P\varepsilon\),独立性与零均值使交叉项期望为零,两项平方期望为\(n\sigma^2\)与\(p\sigma^2\),除以\(n\)即得。差为\(2p\sigma^2/n\)。例如\(n=10,p=3,\sigma^2=2\)时,训练期望为\(1.4\),新响应期望为\(2.6\);无需正态条件。

习题20.5-2 软阈值及KKT核查

设\(X^{\mathsf T}X=\operatorname{Id}_2\)、\(X^{\mathsf T}y=(3,-1/2)^{\mathsf T}\),按本节归一化取\(\lambda=1\)。求lasso与岭回归解,并核查lasso零坐标的条件。

软阈值给lasso解\((2,0)\);岭回归则把两坐标都乘\(1/(1+\lambda)=1/2\),得到\((3/2,-1/4)\)。lasso残差相关向量为\(X^{\mathsf T}(y-X\widehat\beta)=(1,-1/2)\),第一项等于正系数的符号,第二项在\([-1,1]\)内,故满足KKT。该零坐标来自此样本与此阈值,不能据此推断对应总体系数或因果效应必为零。

习题20.5-3 重复变量与非唯一系数

取\(X=[x,x]\)、\(\|x\|^2=1\)、\(x^{\mathsf T}y=3\)、\(\lambda=1\)。证明lasso有多个系数解,并说明为何训练拟合仍唯一。

令\(t=b_1+b_2\),拟合为\(xt\),且\(|b_1|+|b_2|\ge|t|\)。对固定\(t\)可取同号系数使等号成立,故问题化为单坐标\(\tfrac12(t-3)^2+|t|\)加常数,其唯一最优和为\(t=2\)。任何\(b_1,b_2\ge0\)且和为2都是解,例如\((2,0),(0,2),(1,1)\),训练拟合均为\(2x\)。非零变量集合不同,不能根据它认定哪个重复变量是真实作用来源。

习题20.5-4 两处复用数据及改正方案

先在全数据上按与响应的相关性选择特征,再做K折CV挑惩罚,并把最小CV值当作最终未来误差。指出两处问题,写出嵌套验证的改正过程。

第一处是特征筛选已使用后来验证折的响应,即使系数在折内重拟合,预测器仍包含被保留响应的信息。第二处是同一CV误差既用于挑惩罚又用于报告所选模型表现,例2证明选择可使报告过于乐观。改正时先划外层折,在每个外层训练部分内部做内层CV;每个内层训练折独立执行特征筛选与预处理,再拟合候选并评估内层验证折。选定方案后在全部外层训练部分重做筛选、预处理和拟合,只用外层测试折评分。这样评估的是整个筛选流程,仍应注明外层训练规模及样本波动。

关键术语

  • 预测风险:指定未来数据分布下的期望预测损失。
  • 训练风险:在参与建模的观测上计算的经验损失。
  • 正则化:以约束或惩罚限制拟合方法的参数选择。
  • 岭回归:使用系数平方范数惩罚的线性回归。
  • lasso:使用系数绝对值和惩罚、可产生零系数的回归。
  • 次梯度:满足凸函数全局支撑不等式的斜率向量。
  • 超参数:控制拟合流程、惩罚或模型结构的选择量。
  • 交叉验证:轮流保留各折,用未参与该折拟合的观测评估候选。
  • 嵌套交叉验证:内层选择方案,外层评估整个选择与拟合流程。
  • 数据泄漏:评估数据的信息进入应仅由训练数据决定的建模步骤。

参考文献

  1. Tibshirani, R. (2013). CMU 36-462/36-662, Modern Regression 1: Ridge Regression。大学官方讲义:岭回归、尺度与截距、偏差和方差。本节自行展开固定惩罚下的矩阵公式与正交设计精确风险证明。
  2. Tibshirani, R. (2018). CMU 10-725, Introduction: Why Optimization?,lasso support recovery部分。大学官方讲义:lasso的KKT、次梯度与变量恢复所需附加条件。本节仅完整推导基本最优性和软阈值,不证明一般恢复定理。
  3. Cawley, G. C. and Talbot, N. L. C. (2010). On Over-fitting in Model Selection and Subsequent Selection Bias in Performance Evaluation, JMLR 11, 2079–2107。期刊原论文:模型选择偏差和嵌套评估,特别是第5节。本文两常数预测器的精确反例在正文独立计算。