高级统计方法 第一轮学习 Chapter 6 线性模型选择与正则化
准确率与解释力
0.1 最小二乘的预测准确率(prediction accuracy)
最小二乘的预测准确率(prediction accuracy)
-
若响应变量和预测变量的真实关系近似线性,则最小二乘的偏差较低。
-
若观测个数 远大于预测变量个数 ,则最小二乘的方差也较低。
-
若观测个数 不满足远大于预测变量个数 ,则使用最小二乘可能导致过拟合,方差较大。
-
若观测个数 小于预测变量个数 ,则最小二乘得到的系数估计结果不唯一:此时方差无穷大,无法使用最小二乘法。
0.2 最小二乘的模型解释力(model interpretability)
最小二乘的模型解释力(model interpretability)
-
在多元回归模型中,常常存在一个或多个预测变量与响应变量不存在线性关系的情况,包括一些增加了模型的复杂性、却与模型无关的变量。
-
通过去除不相关的特征,将无关变量的系数设置为 ,并移除这些无关变量(去不相关)可得到一个更容易解释的模型,但最小二乘法很难将系数置为 。
0.3 改进方法
子集选择
从 个预测变量中挑选出与响应变量相关的变量形成子集,然后再对缩减的变量集合使用最小二乘方法。
压缩估计(正则化)
基于全部 个预测变量进行模型的拟合,但与最小二乘方法相比,该方法自动将估计系数往零的方向进行压缩。通过系数缩减(又称正则化) 减少方差,还可以用于变量选择。
降维法
将 维预测变量投影至 维子空间中()。这通常通过计算这 个变量的 种不同的线性组合或称投影来实现。将这个不同的投影作为预测变量,再使用最小二乘法拟合线性回归模型。
目标:
-
预测准确率:
-
模型解释力:筛选无关变量
子集选择
1.1 最优子集选择
最优子集选择
-
记不含预测变量的零模型为 ,只用于估计各观测的样本均值。
-
对每一个 :
-
拟合 个包含 个预测变量的子集模型。
-
在这 个子集模型中,选择 RSS 最小或 最大的那个子集模型,记为 。
-
-
根据交叉验证模型误差、(AIC)、BIC 或者调整 从 个模型中选择出一个最优模型。
低 RSS 及高 表明模型的训练误差低,随着预测变量的增加,RSS 和 总是变的更好。
但我们的目标是选择一个测试误差低的模型,所以,不能使用训练集的 RSS 和 进行模型选择。需要估计测试误差,然后据此进行选择。
可以考虑两种方法:
-
第五章的方法:交叉验证或者验证集等方法,直接估计测试误差;
-
对训练误差进行调整,直接估计测试误差:如 , AIC, BIC, 调整 等统计量
拓展
在用于逻辑斯蒂回归时,算法步骤2中应当使用偏差(deviance)替代原先的 RSS 对模型进行选择,偏差与 RSS 作用相似,但适用范围更广。
偏差的定义为:
此处,饱和模型就是“理论上能完美拟合所有观测值的模型”。由于在比较不同模型时,饱和模型的对数似然值是一个常数,所以在比较不同模型的偏差时,可以忽略该常数项。
缺点
-
最优子集选择方法简单直观,但计算效率不高,当 ,该方法不具计算可行性。
-
随着搜索空间增大,通过此方法找到的模型对新数据不具备很好的预测能力。
-
从一个巨大搜索空间得到的模型通常会有过拟合和系数估计方差高的问题(含义与上述类似)。
1.2 向前逐步选择
向前逐步选择
-
记不含预测变量的零模型为 。
-
对每一个 :
-
在当前模型 的基础上,考虑将每一个剩余的预测变量加入到模型中,一共有 个候选模型。
-
在 个候选模型中,选择一个 RSS 最小或 最大的模型作为最有模型,记为 。
-
-
根据交叉验证模型误差、(AIC)、BIC 或者调整 从 个模型中选择出一个最优模型。
向前逐步选择在运算效率上优于最佳子集选择,仅需要搜索 个模型。但该方法产生了一系列的嵌套模型(一定包含前期已选择的变量),无法保证找到的模型是所有 个模型中最优的。
1.3 向后逐步选择
向后逐步选择
-
记包含所有 个预测变量的模型为 。
-
对每一个 :
-
在当前模型 的基础上,考虑将每一个预测变量从模型中剔除,一共有 个候选模型。
-
在 个候选模型中,选择一个 RSS 最小或 最大的模型作为最有模型,记为 。
-
-
根据交叉验证模型误差、(AIC)、BIC 或者调整 从 个模型中选择出一个最优模型。
向后逐步选择在运算效率上也优于最佳子集选择,仅需要搜索 个模型。但该方法也产生了一系列的嵌套模型(一定包含前期已选择的变量),无法保证找到的模型是所有 个模型中最优的。
需满足样本量 大于变量个数 (从而保证全模型可以被拟合)的条件。
而相应的,向前逐步选择则不需要满足该条件。因此,当 非常大的时候,向前逐步选择是唯一可行的方法(最优子集法和向后逐步选择均不适用)。
如何选择最优模型?
2.0 选择最优模型
选择最优模型
包含所有预测变量的模型总是具有最小的 RSS 和最大的 ,他们只代表了训练误差,不代表泛化能力。
但我们需要找到具有最小测试误差的模型,而训练误差很多时候是测试误差的一个较差的估计。
所以,并不能只使用训练误差(RSS 和 )对包含不同个数预测变量的模型进行模型选择。
所以,为了达到基于测试误差选择最优模型(基本原则)的目的,需要估计测试误差(即:下面的方法是估计某类模型的测试误差的方法),通常有两种方法:
-
根据过拟合导致的偏差对训练误差进行调整,间接地估计测试误差。
(AIC)、BIC 或者调整
-
采用验证集方法或交叉验证方法,直接估计测试误差。
验证与交叉验证
2.1 如何选择最优模型?——调整训练误差
对采用最小二乘法拟合的一个包含 个预测变量的模型,其 值计算如下:
其中 是“观测误差(噪声项) 的方差”的估计值。
是在 RSS 的基础上增加了一个惩罚项 ,该惩罚项与模型中预测变量的个数 成正比,用于调整训练误差倾向于低估测试误差的现象,惩罚项随着变量个数 的增加而增加,用于调整因增加变量个数而降低的训练集 RSS。
可以证明,如果 是对观测误差方差的无偏估计,那么对于任意包含 个预测变量的模型, 是对测试误差的无偏估计。
一般通过包含所有预测变量的模型的残差均方来估计:
BIC
贝叶斯信息准则(Bayesian information criterion, BIC)
对于包含 个预测变量的最小二乘模型,BIC 通常由下式给出
测试误差较低的模型 BIC 统计量取值也较低,因此通常选取具有最低 BIC 的模型作为最优模型。
BIC 将 使用的 替换为 项,其中 为观测数。(可见 之后,惩罚较 更大,对含有多个变量的模型惩罚较大;故而,和 相比,得到的模型规模较小)
AIC
赤池信息量准则(Akaike information criterion, AIC)
AIC 准则适应于许多使用极大似然法(如逻辑斯蒂回归模型)进行拟合的模型,式中 为估计模型似然函数的最大值。
若模型误差项服从高斯分布,极大似然估计和最小二乘估计是等价的,AIC 可由下式给出。
可见,此时 和 AIC 彼此成比例。故而也是越小越好。
调整
已经是老生常谈。
其中 是总平方和, 是残差平方和。
-
统计量接近 说明回归没有解释太多响应变量的变异。 统计量接近 说明回归可以解释响应变量的大部分变异。
-
随着模型包含的变量个数的增加而增加,在样本容量一定的情况下,增加解释变量可以减少残差,也可使其自由度减少 。
调整 统计量是另一种常用的对一系列具有不同变量个数的模型进行选择的方法。对于包含 个变量的最小二乘模型,调整 统计量为下式:
-
调整 的值越大,模型测试误差越低。
-
若加入冗余变量, 值增加,便会导致调整 的值降低,因此,理论上,拥有最大调整 的模型只包含正确变量,没有冗余变量。
-
调整 统计量对“纳入不必要变量的模型”引入了惩罚(微弱减少了RSS,但增加了 )。
-
CP, BIC, AIC 都经过了严格的理论证明,但调整 并没有严格的理论证明(虽然广泛适用)
2.2 如何选择最优模型?——调整训练误差
验证集方法 && k折交叉验证 && 留一交叉验证
优势:
-
谨记:选择最优模型是基于“对测试误差的估计”。
-
验证集(或交叉验证)提供了测试误差的直接估计,并且对真实的潜在模型有较少的假设。
-
适用范围广,即使是在难以精确确定模型自由度(如模型中的 预测数)或难以估计误差方差的情况下。
-
流程上:先分训练+测试集,然后在训练集上选择最优子集(或逐步选择),然后在测试集上验证各最优子集的误差。
压缩估计
压缩估计:通过对系数进行约束或加罚,对包含 个预测变量的模型进行拟合,从而将系数估计值往零的方向压缩。
这种方法通过压缩系数估计值,显著减少了估计量方差。
3.1 岭回归
岭回归
岭回归(Ridge Regression)通过对系数的平方和进行约束来实现压缩估计。
最小二乘回归的目标是最小化残差平方和 RSS:
而岭回归通过最小化下式,得到对于 的估计值:
此处, 是一个惩罚项,对模型进行压缩惩罚:当 时,岭回归退化为最小二乘回归;当 时,所有的 都趋近于 。
调节压缩程度,选择合适的 十分重要。
由于岭回归公式中系数平方和项的存在,(此处 指的是第 个预测变量, 指的是第 个预测变量对应的 惩罚力度下的岭回归系数) 的值不只取决于 ,也取决于第 个预测变量的尺度。
因此,在使用岭回归之前,通常需要对每一个预测变量进行标准化处理,使得每一个预测变量的均值为 ,方差为 。
其中,分母为第 个预测变量的标准差。
-
与最小二乘相比,岭回归的优势在于它综合权衡了误差与方差。
-
随着 的增加,岭回归拟合结果的光滑度/柔性水平降低,虽然方差降低,但偏差增加。
岭回归劣势:最终模型包含全部的 个变量(将系数压缩至接近 ,但不为 ),当变量个数 非常大时,不便于模型解释。
3.2 lasso 回归
lasso 回归
lasso 回归(Least Absolute Shrinkage and Selection Operator, Lasso)通过对系数的绝对值进行约束来实现压缩估计。
lasso 回归的系数通过最小化下式得到:
此处, 是一个惩罚项,对模型进行压缩惩罚:当 时,lasso 回归退化为最小二乘回归;当 时,所有的 都趋近于 。根据不同的 取值,lasso可得到包含不同变量个数的模型;相对的,岭回归得到的模型始终包含所有变量,虽然系数估计值会随着 变化。
lasso 回归与岭回归类似,但由于惩罚项的不同,lasso 回归会将一些系数估计值直接压缩为 ,从而实现变量选择,得到稀疏模型。
调节压缩程度,选择合适的 十分重要。
3.3 岭回归和 lasso 的其他表达形式
岭回归和 lasso 的其他表达形式
可以证明,岭回归和 lasso 回归均可表示为约束优化问题:
-
最小二乘回归:
-
岭回归:
-
lasso 回归:
3.4 对比 lasso 和岭回归
对比 lasso 和岭回归
如果将估计系数进行坐标轴表示,最小二乘回归 RSS 相等的所有可能情况将会在最小二乘估计系数处形成一个椭圆。岭回归的约束区域是一个圆形,而 lasso 回归的约束区域是一个菱形。岭回归和 lasso 回归的约束区域与椭圆的的交集则为回归结果。如果 足够大,则条件区域将包含最小二乘解。由于菱形的尖角处更容易与坐标轴相交,因此 lasso 回归更容易将某些系数估计值压缩为 ,实现变量选择。
从贝叶斯角度比较:
-
最小二乘法中估计参数 不受任何约束,会比较奔放,容易过拟合。相应的,lasso 和岭回归引入 的先验分布,做了约束以减少过拟合。
-
具体的,是假设线性模型的残差独立且服从高斯分布,并进一步假设 服从某种(先验、已知)概率密度 ;
-
如果 服从高斯分布且均值为 标准差为 , 的后验估计最可能为岭回归的形式; 没有稀疏性的作用,但是取值接近 时的概率稍大于远离 点的取值。
-
如果 服从双指数(拉普拉斯)分布且均值为 且尺度参数为 , 的后验估计最可能为 lasso 的形式,根据分布 laplace 倾向舍弃影响较小的参数(分布中间取为 比较陡峭),取值接近 的概率远大于远离 的概率。
-
二者在性质上相似:随着 增大,方差减小而偏差平方和增大。
-
岭回归和 lasso 没有哪个是永远更好的。
-
当一小部分预测变量是真实有效的而其他预测变量系数非常小或者等于零时,lasso 更好。
-
当响应变量是很多预测变量的函数并且这些变量系数大致相等,岭回归较好。
-
对于真实的数据集,与响应变量相关的变量个数是无法先验知道的,可用交叉验证等技术来确定哪种方法对特定数据集更好。
降维法
4.0 降维方法
降维方法:将预测变量进行转换,然后用转换之后的变量拟合最小二乘模型。
令 表示 M 个原始预测变量的线性组合(,共有 个原始变量)即:
其中, 是第 个新变量 中第 个原始变量 的系数。
变换后,可用下式拟合线性模型:
即降维可使估计 个系数的问题转化为估计 个系数的问题,这里 ,即维度从 降到 。
降维过程一般为两个过程:
-
将原始变量转换为
-
用 个变量建立模型。
选择 ,也就是选择 可以通过多种不同方法,如以下两种方法
-
主成分回归(Principal Components Regression, PCR)
-
偏最小二乘(Partial Least Squares, PLS)
4.1 主成分回归
主成分回归
主成分分析(PCA):用投影的方法将高维空间(仅对 ,跟 无关)压缩到低维。
简要过程:
输入:样本集 ,包含 个观测和 个预测变量,为 行 列的矩阵。
过程:
-
将 的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值。
-
计算协方差矩阵 。
-
计算协方差矩阵 的特征值和特征向量。
-
将特征向量按对应特征值大小从上到下按行排列成矩阵,,取前 个特征值所对应的特征向量组成矩阵
输出:投影矩阵 即为降维到 维后的数据。
把 PCA 做降维后的特征应用到线性回归,指构造前 个主成分,然后以这些主成分作为预测变量,用最小二乘拟合线性回归模型。
- 少数的主成分足以解释大部分的(原始)数据波动,然后建立主成分与响应变量 之间的关系。
- 主成分数量 一般通过交叉验证确定。
偏最小二乘
一种有指导的主成分回归替代方法,同样是一种降维手段。
-
主成分回归 PCR 降维过程中仅针对预测变量 (找到 变化最快的方向),响应变量 不参与降维的过程。所以,PCR 不能保证最能解释预测因子 的方向也是预测反应变量 的最佳方向。
-
而 PLS 以监督的方式进行新特征提取,试图寻找一个可以同时解释响应变量 和预测变量 的方向。
-
同 PCR 一样,变量个数 也是需要调节的参数,常用交叉验证选择。
-
PLS 回归前需要对预测变量进行标准化处理。
-
总的来说,降维过程是有监督的(与 PCR 的区别),优化目标权衡了方差最大化和与 的相关系数最大化。
过程:
-
对 个预测变量进行标准化处理。
-
对每个变量 逐次进行简单线性回归,;基于此设置第一个偏最小二乘方向:,可见: 为 和 的简单回归系数。
-
计算 ,简单线性回归后得可得 , 以及 。( 拟合 ,得到 的残差)
-
设 系数是 对 的回归系数,也就是 (这一步不需要 的指导,用 拟合每个 得到系数 ,得到残差);进一步计算(正交化) 变量,,; ( 拟合 ,得到 的残差)
-
将残差送给 ,也就是 。
-
重复步骤2-5,直到得到 个偏最小二乘方向 。
| 步骤 | 通俗理解 | 真实目的 |
|---|---|---|
| 1 | 避免量级大的变量会“霸凌”整个过程 | 对所有预测变量 做标准化:,让所有 公平竞争 |
| 2 | 找到对 最有“信息”的方向(直观) | 求第一个 PLS 成分 ,使得 最大(即该线性组合对 的预测能力最强) |
| 3 | 从 中把能被 解释的部分拿走 | 在 上回归 ,得到残差 |
| 4 | 从 中去掉被 解释的部分(直观) | 对每个 回归 ,做 deflation:,保证剩余 与 正交,避免后续重复提取相同方向 |
| 5 | 把第 3 步得到的 的残差 作为新的 继续 | 用 替代原始 ,进入下一轮成分提取(即对剩余信息继续建模) |
| 6 | 反复上述步骤直到得到若干成分(直观) | 得到 共 个互相正交的成分,按照顺序依次最大化 ; 可用交叉验证选取 |
可见,在寻找 的过程中,使用 同时解释 和 。
在计算 时,偏最小二乘将最大权重赋给与响应变量相关性最强的变量。
高维问题
5.1 高维数据的问题
高维数据的问题
低维数据:观测数 远大于预测变量数 ,即 。
高维数据:预测变量数 与观测数 相当,甚至大于观测数 ,即 或 。
在高维数据下只考虑 和训练数据集均方误差可能得到“包含最多变量的模型是好的”的错误结论。
此时应对独立测试集上评估性能给予更多的考虑。
5.2 高维数据的回归
高维数据的回归
本章所提的用于拟合并不光滑的最小二乘模型的方法,在高维回归中作用很大,与直接使用最小二乘相比,有效的解决了过拟合的问题。
-
正则化或压缩在高维问题中至关重要。
-
合适的调节参数对于得到好的预测非常关键。
-
测试误差会随着数据维度的增加而增大,除非新增特征变量与响应变量确实相关。
5.3 分析结果的解释
分析结果的解释
使用 lasso、岭回归或其他回归过程拟合高维数据时,必须非常谨慎地解释模型的结果:
-
共线性问题:模型中的任何一个变量都可以写成其他所有变量的线性组合。无法准确地知道哪个变量可以预测输出变量,也无法确定最优系数。即使得到某个变量组合的预测效果不错,但也可能有很多个类似变量的集合可以达到类似的效果。 能有很多个类似变量的集合可以达到类似的效果。
-
高维数据拟合模型的误差和拟合效果的解释,当 时,很容易得到残差为零,但是没有用的模型;所以,不能在训练数据集上用误差平方和、 值、 统计量或者其他传统的对模型拟合效果的度量方法来证明高维情况下模型拟合的效果。
重要的是在独立的测试集进行验证,或者进行交叉验证。