线性回归模型有如下形式
f ( X ) = β 0 + ∑ j = 1 p X j β j . f(\bm X) = \beta_{0}+\sum\limits_{j=1}^{p}\bm X_{j}\beta_{j}. f(X)=β0+j=1∑pXjβj.
回归的主要目的是利用训练集 { ( x i , y i ) } i = 1 N \left\{(x_{i},y_{i})\right\}_{i=1}^{N} {(xi,yi)}i=1N 来估计参数 β \beta β. 最经常使用的方法是最小二乘法(LS), 即
β ^ = arg min β R S S ( β ) = arg min β ( y i − f ( x i ) ) 2 . \hat{\beta} = \arg \min\limits_{\beta}\ {\rm RSS}(\beta) = \arg \min\limits_{\beta}\ \left(y_{i}-f(x_{i})\right)^{2}. β^=argβmin RSS(β)=argβmin (yi−f(xi))2.
可得唯一解为
β ^ = ( X T X ) − 1 X T y . \hat{\beta} = \left(\bm X^{T}\bm X\right)^{-1}\bm X^{T}\bm y. β^=(XTX)−1XTy.
注: 在书中, 此处给出了几何解释, 实质上就是最小二乘法的几何解释.
为了使得 β ^ \hat\beta β^ 更加贴近于真实数据, 我们对数据的真实分布做一定的假设. 假设观测值 y i y_{i} yi 不相关, 且有固定的方差 σ 2 \sigma^{2} σ2, 并且 x i x_{i} xi 是固定取值. 类似地, 我们可以得到
V a r ( β ^ ) = ( X T X ) − 1 σ 2 , {\rm Var}(\hat\beta) = \left(\bm X^{T}\bm X\right)^{-1}\sigma^{2}, Var(β^)=(XTX)−1σ2,
对方差进行无偏估计有
σ ^ 2 = 1 N − p − 1 ∑ i = 1 N ( y i − y ^ i ) 2 . \hat\sigma^{2} = \frac{1}{N-p-1}\sum\limits_{i=1}^{N}(y_{i}-\hat y_{i})^{2}. σ^2=N−p−11i=1∑N(yi−y^i)2.
假设 Y \bm Y Y与其期望的偏差是可加的且是正态的, 线性回归模型为
Y = E ( Y ∣ X 1 , . . . , X p ) + ε = β 0 + ∑ j = 1 p X j β j + ε , \bm Y = \mathbb{E}(\bm Y|\bm X_{1}, ...,\bm X_{p})+\varepsilon = \beta_{0}+\sum\limits_{j=1}^{p}\bm X_{j}\beta_{j}+\varepsilon, Y=E(Y∣X1,...,Xp)+ε=β0+j=1∑pXjβj+ε,
此处, ε ∼ N ( 0 , σ 2 ) . \varepsilon\sim N(0,\sigma^{2}). ε∼N(0,σ2).
据此可知 β ^ \hat\beta β^ 和 σ ^ 2 \hat\sigma^{2} σ^2 分别服从正态分布和卡方分布, 且两者统计独立. 进而得到假设检验和 β j \beta_{j} βj 的置信区间.
子集选择意味着我们只保留变量的一个子集,并除去模型中的剩余部分。最小二乘回归用来预测保留下的输入变量的系数。
一个有效的算法: leaps and bounds 过程.
向前逐步选择 (Forward-stepwise selection) 从截距开始, 然后向模型中依次添加最大程度提升拟合效果的预测变量. 至于更新算法, 可以利用QR 分解从当前拟合快速得到下一步的备选预测变量. 这是一种贪心算法 (greedy algorithm), 产生了一个嵌套的模型序列.
向后逐步选择 (backward-stepwise selection) 从整个模型开始, 并且逐步删掉对拟合影响最低的预测变量. 要删掉的候选变量是 Z 分数最低的变量
向后只能用于 N > p N>p N>p 时, 而向前逐步总是可以使用.
Forward-Stagewise 回归比向前逐步回归有更多限制. 开始类似向前逐步回归,由等于 y ˉ \bar y yˉ的截距开始, 中心化后的预测变量系数都初始化为 0 0 0. 每一步算法找出与当前残差最相关的变量, 然后计算所选择变量的残差的简单线性回归系数, 并且添加到该变量的当前系数. 这个过程一直继续直到没有变量与残差有相关性.
虽然可能需要比 Forward-Stepwise 花更多的步骤完成拟合, 这种“慢拟合”高维问题中会有很好的结果.
子集选择 (subset selection) 可得到一个可解释的、预测误差可能比全模型低的模型. 然而, 因为这是一个离散的过程(变量或保留或丢弃), 所以经常表现为高方差, 因此不会降低全模型的预测误差. 而收缩方法 (shrinkage methods) 更加连续, 不会受高易变性 (high variability) 太大的影响.
岭回归 (Ridge regression) 根据回归系数的大小加上惩罚因子对它们进行收缩, 即
β ^ r i d g e = arg min β { ∑ i = 1 N ( y i − β 0 − ∑ j = 1 p x i j β j ) 2 + λ ∑ j = 1 p β j 2 } . \hat\beta^{\rm ridge} = \arg\min\limits_{\beta}\left\{\sum\limits_{i=1}^{N}\left(y_{i} - \beta_{0} - \sum\limits_{j=1}^{p}x_{ij}\beta_{j}\right)^{2} + \lambda\sum\limits_{j=1}^{p}\beta_{j}^{2}\right\}. β^ridge=argβmin⎩⎨⎧i=1∑N(yi−β0−j=1∑pxijβj)2+λj=1∑pβj2⎭⎬⎫.
也可等价写作
β ^ r i d g e = arg min β ∑ i = 1 N ( y i − β 0 − ∑ j = 1 p x i j β j ) 2 s u b j e c t t o ∑ j = 1 p β j 2 ≤ t . \hat\beta^{\rm ridge} = \arg\min\limits_{\beta}\sum\limits_{i=1}^{N}\left(y_{i} - \beta_{0} - \sum\limits_{j=1}^{p}x_{ij}\beta_{j}\right)^{2} \\{\rm subject\ to}\ \sum\limits_{j=1}^{p}\beta_{j}^{2}\leq t. β^ridge=argβmini=1∑N(yi−β0−j=1∑pxijβj)2subject to j=1∑pβj2≤t.
lasso 问题可写为如下格式:
β ^ l a s s o = arg min β ∑ i = 1 N ( y i − β 0 − ∑ j = 1 p x i j β j ) 2 s u b j e c t t o ∑ j = 1 p ∣ β j ∣ ≤ t . \hat\beta^{\rm lasso} = \arg\min\limits_{\beta}\sum\limits_{i=1}^{N}\left(y_{i} - \beta_{0} - \sum\limits_{j=1}^{p}x_{ij}\beta_{j}\right)^{2} \\{\rm subject\ to}\ \sum\limits_{j=1}^{p}|\beta_{j}|\leq t. β^lasso=argβmini=1∑N(yi−β0−j=1∑pxijβj)2subject to j=1∑p∣βj∣≤t.
在信号处理中,lasso 也被称作 basis pursuit. 与岭回归相比, 只是正则项的不同.
对子集选择, 岭回归和 lasso 进行讨论:
- 在正交输入矩阵的情况下, 三种过程都有显式解. 每种方法对最小二乘估计 β ^ j \hat\beta_{j} β^j 应用简单的变换: 岭回归做等比例的收缩, lasso 是一种软阈值方法, 最优子集选择是一种硬阈值方法.
- lasso, 岭回归和最优子集选择是有着不同先验分布的贝叶斯估计. 然而, 注意到它们取自后验分布的众数, 即最大化后验分布. 在贝叶斯估计中使用后验分布的均值更加常见. 岭回归同样是后验分布的均值, 但是 lasso 和最优子集选择不是.
最小角回归 (LAR) 可以看成是一种向前逐步回归的 democratic 版本. 采用了类似的策略, 但是仅仅加入一个变量应有的程度. 第一步确定与响应变量最相关的变量. 不是完全地拟合该变量, LAR 使得该变量的系数向最小二乘值连续变化(即, 使得它与进化的残差之间的相关系数绝对值降低). 只要其他变量与残差的相关性与该变量和残差的相关性相等, 则该过程暂停. 第二个变量加入活跃集, 然后它们的系数一起以保持相关性相等并降低的方式变化. 这个过程一直继续直到所有的变量都在模型中, 然后在全最小二乘拟合处停止.
这两部分感觉没太多说的, 阅读课本了解即可.