高统
注意这不是我写的,这是云盘里的为了方便观看PUSH上来的!!!
另外,这是添加了细节的版本,尽量把第一眼看不清楚的地方做了解释
原笔记地址如下:
5/11/2024 Linxi(LiLinxi) 2024 Gaotong
Reference:2020YangChengYu
https://github.com/EternityQAQ2/DLUT_2024_GaoTong
RSS(残差平方和)、RSE(残差标准误,即 σ)和MSE(均方误差),p是要预测的参数个数(例如一个变量,一个截距则为两个,当然也可以表示p为要预测的变量的个数然后变成n - p - 1)
$$ RSS = \sum_{i=1}^n (Y_i - \hat{Y}_i)^2 $$$$ MSE = \frac{RSS}{n - p} $$$$ RSE = \sqrt{MSE} = \sqrt{\frac{RSS}{n - p}} $$变异(Variability):“数据点离中心(平均数)的远近程度”。
模型参数(Model Parameters):机器自己从数据里“学”出来的。比如线性回归里的系数 β斜率)、神经网络的权重。
超参数(Hyperparameters):你在启动训练之前,自己手动设定的“旋钮”或“开关”。机器不能从数据里直接学会它,只能靠你定,或者靠你通过试验去试出最好的值。
第二章 统计学习
什么是统计学习
输入变量通常用 X 表示,也称为预测变量、自变量、属性变量
输出变量通常用 Y 表示,也称为响应变量、因变量
$$ Y = f(X) + ε $$f是X的函数,固定但未知,f表达了X提供给Y的系统信息,ε是随机误差项(与X独立,均值为0)
什么情况下需要估计f
预测和推断。
预测
预测主要关心f的估计值的准确性,不关注其是如何预测的(将f当作黑箱)
精确性包括可约误差与不可约误差,可约误差可以通过选择更合适的统计学习方法降低
推断
推断主要关心$X_1$,$X_2$,…变化时如何对Y产生影响(不能将f当作黑箱)
如何估计f
估计任务大多可分为参数方法和非参数方法
非参数方法的关键特点是:这些方法不假定特定的概率分布或数据模型形式。换句话说,非参数方法不预设数据生成过程的具体数学形式,而是通过数据本身来揭示变量之间的关系。
自然样条曲线并不假设数据符合某种特定的函数形式(如线性或多项式),而是通过分段多项式和节点(knots)来灵活拟合数据。这是非参数特性。
回归树不需要预先设定任何特定的模型形式,而是通过数据驱动的方式划分输入空间。
非参数方法的共同特征
模型灵活:无需预设具体的函数形式,模型复杂度与数据量相关。 数据驱动:模型结构直接依赖于数据,增加数据量可以改善模型表现。 适用性广:能处理更广泛的数据分布和非线性关系。
参数方法
假设函数f具有一定的形式,用训练数据集去拟合模型(估计参数),即把估计f的问题简化到估计一组参数
过拟合:拟合了错误或噪声
非参数方法
不对函数f的形式做明确的假设,追求尽可能接近数据点
(薄板样条)
预测精度和模型解释性的权衡
一般来说,当一种方法的光滑度增强时,其解释性减弱
指导学习和无指导学习
指导学习:数据集中有对应的响应变量来指导数据分析
逻辑斯蒂回归、支持向量机
无指导学习:数据集缺乏一个响应变量来指导数据分析
聚类分析
半指导学习:部分有,部分没有
回归与分类问题
变量常分为定量和定性两种类型。响应变量定量是回归问题,响应变量定性则是分类问题
评价模型精度
拟合效果检验
常用的评价准则是均方误差(mean squared error, MSE)
$$ MSE = \frac{1}{n}\sum_{i=1}^{n}(y_i-\hat{f}(x_i))^2 $$$$ MSE = \frac{1}{n}*RSS $$我们的目标是使模型的测试均方误差最低
当模型的光滑度增加时,训练均方误差降低,但是测试均方误差不一定降低
当模型有较小的训练均方误差,但是有较大的测试均方误差时,称为过拟合
降低模型的光滑度可以减小测试均方误差
自由度
自由度是描述曲线光滑程度的正式术语
自由度 = 样本数量 n - 你必须满足的“硬性约束条件”数量。
偏差-方差权衡
$$ E(y_0-\hat{f}(x_0))^2=Var(\hat{f}(x_0))+[Bias(\hat{f}(x_0))]^2+Var(ε) $$测试均方误差的期望能分解为:预测值
$$ > \hat{f}(x_0)的方差、预测值\hat{f}(x_0) > $$的偏差的平方、误差项ε的方差
因此我们需要得到一个偏差和方差综合起来最小的模型
方差和偏差
| 特性 | 偏差 | 方差 |
|---|---|---|
| 定义 | 模型预测结果的平均值与真实值之间的偏离程度 | 模型预测值在不同训练集上的波动程度 |
| 本质 | 由模型的假设能力决定,反映模型是否欠拟合 | 由模型对训练数据的敏感性决定,反映模型是否过拟合 |
| 光滑度的影响 | 光滑度低,偏差高(欠拟合);光滑度高,偏差低 | 光滑度低,方差低;光滑度高,方差高(过拟合) |
| 训练集大小的影响 | 不直接受到训练集大小影响,偏差主要由模型决定 | 训练集增大通常可以降低方差 |

如果一个统计学习模型被称为测试性能好,则要求该模型有较小的方差和较小的偏差 一般而言,使用光滑度更高的方法,所得的模型方差会增加,偏差会减小。
分类模型
训练错误率如下公式
$$ \frac{1}{n}\sum_{i=1}^{n}I(yi\neq \hat yi) $$测试错误率如下公式,
$$ Ave(I(y0 \neq \hat y0)) $$贝叶斯公式:

贝叶斯分类器
KNN
k 的选择对获得 KNN 分类器有根本性的影响。当 K= 1 时,决策边界很不规则,从数据中拟合的模型不能与贝叶斯决策边界完全契合。这个分类器虽然偏差较低但方差很大。当 K 增加时,模型的光滑性减弱,得到一个接近线性的决策边界。

第三章 线性模型
线性回归是一种统计方法,用于研究两个或多个变量之间的线性关系。根据变量数量的不同,可以分为简单线性回归和多元线性回归。
简单线性回归
定义
简单线性回归用于研究两个变量之间的线性关系,其中一个是自变量(X),另一个是因变量(Y)。其数学模型表示为:
- $\beta_0$:截距,表示当
X=0时Y的预测值。 - $\beta_1$:斜率,表示
X每增加一个单位时,Y的平均变化量。 - $\epsilon$:随机误差。
目标
通过最小化 残差平方和(RSS) 来估计参数 $\beta_0$ 和 $\beta_1$:
$$ RSS = \sum_{i=1}^n (Y_i - (\beta_0 + \beta_1X_i))^2 $$标准误差和置信区间
在线性回归模型中,回归系数 $\beta_1$ 的置信区间用于估计其真实值可能的范围,基于其估计值 $\hat{\beta}_1$ 和标准误差 $SE(\hat{\beta}_1)$。 $\beta_1$ 的标准误差公式如下:
$$ SE(\hat{\beta}_1) = \sqrt{\frac{\hat{\sigma}^2}{\sum_{i=1}^n (X_i - \bar{X})^2}} $$对于σ:他就是残差标准误(RSE)σ^2 = MSE = [ RSS/(n - p) ] ^ 1/2
随机误差项 ϵ 的方差 σ^2 的无偏估计量。它衡量的是:即使模型完全正确,数据点围绕着真实回归直线上下波动的“噪音”大小。
对于线性回归模型,$\beta_1$的置信区间如下:
$$ \hat \beta_1 \pm 2 *SE(\hat \beta_1) $$假设
- 自变量和因变量之间存在线性关系。
- 残差的期望为零,即 $E(\epsilon) = 0$。
- 残差方差恒定(同方差性)。
- 残差独立。
- 残差服从正态分布(通常用于推断)。
多元线性回归
定义
多元线性回归扩展了简单线性回归,用于研究多个自变量(X1, X2, ..., Xp)与因变量Y之间的线性关系。其数学模型为:
- $\beta_0$:截距,表示所有自变量为0时
Y的预测值。 - $\beta_1, \beta_2, \dots, \beta_p$:各自变量的回归系数,表示该自变量对因变量的影响(假设其他变量保持不变)。
目标
通过最小化残差平方和来估计参数:
$$ RSS = \sum_{i=1}^n \left( Y_i - \left( \beta_0 + \sum_{j=1}^p \beta_jX_{ij} \right) \right)^2 $$假设
与简单线性回归相同,但需要针对多变量:
- 自变量与因变量之间的关系是线性的。
- 各个自变量之间无高度共线性。
- 残差的期望为零,方差恒定,独立且服从正态分布。
评估模型参数
TSS:总平方和,衡量因变量 Y 自身的总变异(即:在完全不看任何 X的情况下,Y值有多大的波动),它代表的是“待解释的总信息量”。如果所有 Y都相等(没变异),TSS 就等于 0,也就没必要做回归了。
原因:TSS 代表的是:在你“毫无信息(没有 X)”的原始愚昧状态下,数据天然带给你的总误差负担,此时猜平均数能让误差平方和最小。然后建立回归模型后RSS是未被解释的剩余误差
TSS(原始误差)减去 RSS(剩余误差),得到的就是 “模型帮你减少的误差”
R方:决定系数,表示模型解释掉了 Y 的总变异的百分比。
(注意:R2有个缺点——你塞进模型的自变量越多(p 越大),RSS 只会减少不会增加,所以 R2 会虚高。 因此实战中更常用 调整后的 R²(Adjusted R²),它会惩罚自变量个数(分母用 n−p−1))
- F:它用来检验一个联合假设:“是不是所有斜率系数 β1,β2,…β p全部等于 0?(模型帮你减去的误差 比上 原本的白噪音误差)


RSE越小、$R^2$越大,F越大,结果越好。
回归模型的其他问题
数据的非线性
残差图( residual plot) 是一种很有用的图形工具,可用于识别非线性。给定一个简单线性回归模型,我们就可以绘制残差 $ ei = Yi - Yi $ 和预测变量 X i 的散点图。在多元回归中,因为有多个预测变量,我们转而绘制残差与预测值(或拟合值 ( fitted)) Yi 的散点图。理想情况下,残差图显示不出明显的规律。若存在明显规律,则表示线性模型的某些方面可能有问题。

误差项自相关
线性回归模型的一个重要假设是误差项𝜀1,𝜀2,… 𝜀_𝑛不相关。如果误差项相关,那么估计标准误往往低估了真实标准误,因此,置信区间和预测区间比真实区间窄。例如95%置信区间包含真实参数的实际概率将远低于0.95。这可能导致得出错误的结论。
误差项方差非恒定
线性回归模型的另一个重要假设是误差项的方差是恒定的$ VAR(𝜀_𝑖)=𝜎^2$。假设检验和标准误差、置信区间计算依赖这一假设。
但通常,误差项的方差不是恒定的。例如,误差项的方差可能会随响应值的增加而增加。如果残差图呈漏斗形,说明误差项方差非恒定或存在异方差性。
下左图,残差随拟合值增加而增加。

离群点
离群点(outlier) 是指 Yi 远离模型预测值的点。

高杠杆点
高杠杆(high leverage)表示观测点Xi是异常的。
R语言 Residuals vs Leverage 图
横轴(Leverage):表示杠杆值,衡量每个样本对模型拟合的影响。高杠杆点靠近图的右侧。 纵轴(Residuals):表示标准化残差,衡量实际值与预测值的差异。 Cook’s Distance:用虚线表示,用于综合评估点对模型的影响力。
离群点:
通常出现在图的上部或下部,残差值明显大于其他点(高出或低于 2 或 3 的范围)。 这些点虽然对模型的影响力可能不大,但反映了模型在预测这些点时的误差较大。
高杠杆点:
横轴位置靠右,杠杆值较高。这些点的 Cook’s Distance 较大,可能显著影响模型参数。
117是高杠杆点,纵坐标大于2的是离群点。
共线性
共线性是指两个或更多的预测变量高度相关。如下图Credit数据集(右图),它会导致难以分离单个变量对响应值的影响。
检测共线性的一个简单方法是看预测变量的相关系数矩阵。但即使没有某对变量具有特别高的相关性,有可能三个或更多变量之间存在共线性,成为多重共线性。
更好的方法是计算方差膨胀引子(VIF),VIF是拟合全模型时的系数(𝛽_𝑗 ) ̂的方差除以单变量回归中(𝛽_𝑗 ) ̂的方差所得的比例。VIF最小可能值是1,表示完全不存在共线性。通常情况,VIF值超过5或10就表示有共线性问题。
线性回归与K最近邻法的比较 维度灾难。
维度灾难:
因为随着维度(特征数 p)增加,样本在空间中呈指数级稀疏。绝大多数点都悬浮在空间的边缘和角落,中心区域几乎空无一物。在高维空间里,KNN的逻辑会崩塌。因为在高维空间中,所有样本点之间的距离都变得差不多远。
数学上有过一个经典推导:在高维空间中,最远邻居的距离与最近邻居的距离之比,趋近于 1。
预测效果随着维数的增加而恶化是KNN一个普遍问题,因为在高维中样本量大大减少。下图有100个训练观察,当p=1时,这些点提供了足够的信息来准确估计f(X)。然而,当这100个观测值分布在p=20个维度上时,将使给定的观测附近没有邻点——即 若每个预测变量仅有少量观测,参数化方法往往优于非参数方法。

第四章 分类
逻辑斯蒂回归
概述
逻辑斯蒂回归是一种广泛使用的线性分类模型,用于预测二分类或多分类问题的结果。其核心思想是通过 逻辑函数 (logistic function) 将线性回归的预测值映射到 [0, 1] 区间,从而得到分类概率。
数学表达
$$ \log\left(\frac{P}{1-P}\right) = z $$其中:
- ( P ) 是事件发生的概率。
- ( 1-P ) 是事件不发生的概率。
- ( z = w^T x + b ),表示线性模型的输出。
线性判别分析
概述
线性判别分析是由费舍尔提出的一种经典的降维与分类方法,常用于将高维数据投影到低维空间,同时保持类别的可分性。LDA的核心思想是通过最大化类间散布与类内散布的比值,以找到数据最优的分割方向。
核心思想
LDA的目标是找到一个线性变换矩阵 ( W ),使得投影后的数据在类间的距离最大化,同时类内的距离最小化。
LDA的目的是将高维特征投影到一个低维子空间中同时保持类间的良好可分性和类内的最大化方差。

ROC曲线

预测阳性率 (PPV) 预测阳性率指的是,模型预测为阳性的样本中,实际为阳性的比例。它衡量的是模型预测结果的可靠性,即模型预测为“阳性”时有多大可能是真的阳性。
预测阴性率 (NPV) 预测阴性率指的是,模型预测为阴性的样本中,实际为阴性的比例。它衡量的是模型预测结果为“阴性”时的可靠性。.
假阳性率是预测为阳性,但真实是阴性.(1类)
假阴性率是预测为阴性,真实是阳性。(2类)
二次判别分析
如果假设服从多元高斯分布,但每一类观测都有自己的协方差矩阵,则称作二次判别分析(quadratic discriminant analysis, QDA)
贝叶斯(紫色虚线)、LDA(黑色点线)、QDA(绿色实线)
方法比较
逻辑斯谛回归中参数是由极大似然估计出来的 LDA是通过估计的正态分布均值和方差计算出来的 所以两者得到的结果应该是接近的。但LDA假设观测服从每一类协方都相同的高斯分布,当假设成立时,LDA能提供更好的结果
将一个数据集分成大小相同的训练集和测试集,尝试两种不同的分类过程。首先应用逻辑斯谛回归,在训练集上得到错误率为 20%.在测试集上错误率为 30% 。其次应用 1 最近邻法 (K=1) , 得到平均错误率{在训练集和测试袋上始平均)为 18%。基于这些结果,对新的观测应采取何种分类方法比较好?为什么? 应用K=1的KNN经过训练集训练后,计算训练数据集上的准确度,我们会得到100%的准确率,原因是模型已经看到了这些值,并且为K=1形成了一个粗略的决策边界。这意味着本题K=1的KNN在训练集上的错误率为0%,而在测试集上的错误率为36%。而逻辑斯蒂回归在测试集上的错误率为30%,比36%低一些,故选择逻辑斯蒂回归分类方法。
第五章 重抽样方法
引入的目的:为了估计测试误差
基本方法:将可用的样本随机分为训练集和测试集
定量的响应应使用均方误差估计,定性的响应(分类变量)应使用误分类率评估(模型预测错误的样本数量占总样本数量的比例。也叫分类错误率)
交叉验证法
验证集方法
直接随机将数据集分为训练集和测试集两部分
优点
- 计算简便
- 可解释性较好
缺点
- 测试错误率的验证法的估计波动大,取决于具体哪些观测包含在训练集/验证集中
- 只有一个子集被用来拟合模型,验证集的错误率可能会高估在整个数据集上拟合模型的测试误差
留一交叉验证(LOOCV)
选一个观测作为测试集,剩下n-1个观测作为训练集,训练并测试,得到这个观测的均方误差MSE
重复这个步骤n次,得到n个MSE,然后使用如下公式计算平均的MSE
$$ CV_{(n)}=\frac{1}{n}\sum_{i=1}^{n}MSE_i $$K折交叉验证
最终的目的是为了给“超参数”投出最终选票,并评估最终模型的泛化能力!!!
将观测机随机分为k个大小基本一致的组,每次选一个组作为测试集,剩下k-1个组作为训练集,训练并测试,得到这个测试集的均方误差MSE
重复这个步骤k次,得到n个MSE,然后同样进行平均计算
优点
- 相较LOOCV,方差更低
- 相较LOOCV,计算更简便
缺点
- 相较LOOCV,偏差更高
- 相较LOOCV,存在分割的随机性,LOOCV不存在这个问题
K折交叉验证的偏差-方差权衡
K增大,偏差减小方差增大;K减小,方差减小偏差增大
- K减小:数据量减小,模型无法充分学习数据分布,容易导致欠拟合,所以偏差大。但是K减小,不同折模型的重叠程度大大增大,如果数据中存在一个异常值(Outlier),这个异常值在留一法中,几乎每一次都会被包含在训练集里(除了一次)。这导致几乎所有模型的参数都被这个异常值“带偏”。因此,这K个模型在遇到各自的测试集(虽然测试集只有1个样本)时,测试误差会剧烈波动
- K增大:与K减小相反,模型之间的独立性更强,测试集也更大,平均下来误差波动较小,所以方差小。
自助法(Bootstrap)
用途:用来衡量一个指定的估计量,比如估计线性回归模型中系数的标准误差,通过抽取生成多个训练集,原集减训练集就是测试集,对测试集进行测试衡量指定的估计量。
注:这要求样本能够反映总体特性,不然会继承并放大这种偏差
随机从数据集中选择n个观测(有放回的抽样),组成一个自助法数据集$Z^{·1}$,使用这个数据集对α进行自助法估计,得到$\hat{α}^{·1}$
重复B次(B是一个很大的值),得到B个对应的估计$\hat{α}^{·1},...,\hat{α}^{·B}$,然后通过公式能计算这些自助法估计的标准误差
$$ SE_B(\hat{α})=\sqrt{\frac{1}{B-1}\sum_{r=1}^{B}(\hat{α}^{·r}-\frac{1}{B}\sum_{r^{'}=1}^{B}\hat{α}^{·r^{'}})^2} $$用此标准误差查置信区间的含义是: 如果我们把‘去野外重新抓100次蝴蝶,计算100次准确率’这个实验,重复无限遍,那么在这些无限多的区间里,大约有95%的区间会包含真实的总体准确率。
自助法的其他用途
- 主要用于得到估计的标准误差
- 还提供了总体参数的近似置信区间
自助法不能估计测试误差的原因
- k折交叉验证中,每一折中的k-1训练集和验证集都不重叠
- 使用自助法估计测试误差,假如使用每个抽样的样本作为训练样本,原始样本作为验证样本,发现每个抽样样本和原始样本有显著的重叠(约三分之二),导致其严重低估真实的测试误差
方法比较
| 特性 | 自助法 | 交叉验证 | 验证集法 |
|---|---|---|---|
| 数据利用率 | 每次生成的样本约63.2%数据被训练用,多次重采样覆盖全部数据。 | 每次仅用部分数据作为测试集,其余数据用于训练。 | 留出一部分数据做验证集,浪费部分数据。 |
| 评估可靠性 | 稍逊,因生成的样本可能失真。 | 更可靠,因所有数据都参与训练和测试。 | 结果可能因划分随机性不稳定。 |
| 计算成本 | 低,每次只需生成样本并训练一个模型。 | 高,需要多次训练模型并测试。 | 较低,只需训练一个模型并测试一次。 |
| 适用场景 | 数据量较小时,尤其适合。 | 需要更可靠评估时适用,尤其是数据量较小。 | 数据量较大时快速评估。 |
| 是否浪费数据 | 否,所有数据多次被利用。 | 否,所有数据都被用到。 | 是,验证集不参与训练。 |

第六章 线性模型选择与正则化
采用其他拟合方法替代最小二乘法的原因:其他方法有更高的预测准确率,更好的模型解释力
预测准确率
n:训练样本量 p:“特征”的数量,也就是:自变/因变量 的个数
- 不满足n远大于p,则最小二乘可能过拟合
- 若p>n,最小二乘得到的系数估计结果不唯一,此时方差无穷大,无法使用最小二乘
改进:通过限制或缩减待估计系数,牺牲偏差的同时显著减小估计量方差
模型解释力
- 多元回归模型中,常存在多个变量与响应变量不存在线性关系的情况,增加复杂度却与模型无关 复杂度:参数数量、参数大小、模型结构
- 去除不相关特征可以得到更容易解释的模型,而最小二乘很难将系数置为0
改进:通过自动进行特征选择或变量选择,实现对无关变量的筛选

子集选择
最优子集选择
对于k=1,2,…,p: 拟合$C_p^k$个包含k个预测变量的模型,并且在这$C_p^k$个模型中选择RSS最小或$R^2$最大的模型
然后根据交叉验证预测误差、$C^p(AIC)$、$BIC$或调整$R^2$从这些模型中选一个最优模型
- 缺陷明显:p比较大时不具有计算可行性
逐步选择
逐步选择包括向前逐步选择和向后逐步选择
向前逐步选择
对于k=1,2,…,p: 从p-k个模型中选择(在前一个模型基础上增加一个变量),并且在这p-k个模型中选择RSS最小或$R^2$最大的模型
然后根据交叉验证预测误差、$C^p(AIC)$、$BIC$或调整$R^2$从这些模型中选一个最优模型
后向逐步选择
对于k=p,p-1,…,1: 从k个模型中选择(在前一个模型基础上减少一个变量),并且在这p-k个模型中选择RSS最小或$R^2$最大的模型
然后根据交叉验证预测误差、$C^p(AIC)$、$BIC$或调整$R^2$从这些模型中选一个最优模型
选择最优模型的指标
此处公式中的 d 就是特征个数,即前面的 p
$C_p$、$AIC$、$BIC$和调整$R^2$
$$ C_p=\frac{1}{n}(RSS+2d\hat{σ}^2) $$$$ AIC=\frac{1}{n\hat{σ}^2}(RSS+2d\hat{σ}^2) $$$$ BIC=\frac{1}{n}(RSS+log(n)d\hat{σ}^2) $$$$ 调整R^2=1-\frac{RSS/(n-d-1)}{TSS/(n-1)} $$对于Cp = 数值越小,模型越好。它希望你在减少 RSS 和增加特征之间找到平衡,惩罚项是2dσ^2^
ALC(赤池信息准则):你把括号里的 σ^2^约分一下就发现 ∝ Cp 即在高斯线性回归的假设下,AIC 和 Cp完全等价
BIC(贝叶斯信息准则):惩罚项 log(n)⋅d⋅σ^2,logn一般比较大,所以 BIC 对特征数量的惩罚远远重于 AIC 和 Cp
以上三个都是数值越小越好
调整R^2^:相比普通
,多加入一个特征,分泌变小,让分整个分数增大,因为前面是减号,故R^2^下降。
数值越大(越接近1)越好。它不像 AIC/BIC 那样追求绝对值最小,而是告诉你模型解释了多少方差,同时扣除了特征带来的冗余
压缩估计方法
在最小二乘法的损失函数(RSS)后面,强行加上一个“惩罚项(Penalty)”,以此来约束模型的系数(β)不要太大,甚至直接压缩到0。
因为加了惩罚,系数被“压缩”得离0更近,所以叫压缩估计。它通过牺牲一点点偏差(Bias),来大幅度降低方差(Variance),从而解决过拟合问题。
人话:给你系数参数删了换我稳定
正则化:
正则化是在损失函数(Loss Function)后面额外加上一项“惩罚项”,用来约束模型参数(系数)的大小或结构,从而防止过拟合。
原因:
鲸鱼:当 p(特征数)很大时,最小二乘法为了把训练集误差降为0,会把某些系数调成天文数字(正负几万)。这就像一个极度谄媚的奴才,为了讨好每一个数据点,不惜扭曲自己的形态——结果就是“过拟合”(方差极大)
核心哲学:允许模型在训练集上稍微“犯错”(增加一点偏差),来换取模型在面对新数据时的“稳定”(大幅减少方差)。 这就是统计学中著名的“偏差-方差权衡”在正则化上的完美体现。
正则化的作用:

λ(惩罚系数):这是一个超参数,用来平衡“拟合得好不好”和“模型简不简单”。λ 越大,惩罚越重,则模型偏差变大,方差变小
岭回归(L2正则化)
与最小二乘相似,但增加了压缩惩罚
$$ \sum_{i=1}^{n}(y_i-β_0-\sum_{j=1}^{p}β_jx_{ij})^2+λ\sum_{j=1}^{p}β_j^2=RSS+λ\sum_{j=1}^{p}β_j^2 $$λ≥0是调节参数,λ越小光滑度越低,偏差越小方差越大

- 偏差:λ小则损失函数几乎没有加约束,模型自由地把系数调到最优值
- 方差:λ小,系数对数据的微小变化极其敏感,稍微换一个训练集,系数就剧烈抖动
惩罚项:$\lambda \sum_{j=1}^p \beta_j^2$
※ 使用岭回归之前最好先对预测变量进行标准化
标准化:对数据表格里的每一列(每个特征),都减去这一列的均值(中心化),再除以这一列的标准差(缩放)。此时单位会消失,这些特征才能站到同一起跑线供模型训练。
压缩效果:它会把所有系数等比例地缩小,但绝不杀死任何一个。如果你有100个特征,岭回归会让这100个系数都变小,但全部保留
Lasso(L1正则化)
$$ \sum_{i=1}^{n}(y_i-β_0-\sum_{j=1}^{p}β_jx_{ij})^2+λ\sum_{j=1}^{p}|β_j|=RSS+λ\sum_{j=1}^{p}|β_j| $$λ≥0是调节参数,λ越小光滑度越高,偏差越小方差越大
惩罚项:有λ的那项(即系数的绝对值之和)
- 数学特质(自带特征筛选):只要 λ 足够大,某些不重要的系数会被精确地压缩到 0。
- 压缩效果:它会把不重要的特征直接“开除”(系数归零),留下一组稀疏的、最重要的特征。它把“压缩”和“特征选择”一步到位做完
岭回归和Lasso的等价问题

Lasso回归等价于求解
$$ \mathop{minimize}\limits_{β}\{\sum_{i=1}^{n}(y_i-β_0-\sum_{j=1}^{p}β_ix_{ij})^2\},\sum_{j=1}^{p}|β_j|≤s $$岭回归等价于求解
$$ \mathop{minimize}\limits_{β}\{\sum_{i=1}^{n}(y_i-β_0-\sum_{j=1}^{p}β_ix_{ij})^2\},\sum_{j=1}^{p}β_j^2≤s $$
将上式数形结合表示如图,黑色区域为≤s的区域,椭圆是RSS等高线
岭回归和Lasso的贝叶斯解释
岭回归对应高斯分布的密度函数
Lasso对应拉普拉斯分布的密度函数
拉普拉斯分布:像一个尖顶的金字塔或钻石。它在正中间(均值0处)有一个极其尖锐的“尖点”,两侧像指数函数一样急剧下降,但尾巴拖得比正态分布更长、更厚。
降维方法
主成分回归(PCA)
它只做数学计算,找到这100个指标的线性组合,组合成新的变量,叫主成分(PC),最后只用前几个主成分(比如用5个新变量代替100个旧变量),数据信息量保留了90%以上
偏最小二乘(PLS)
偏最小二乘用响应变量Y的信息筛选新变量
它不仅要让新变量能解释 X 里的信息,更要让新变量与 y 的协方差最大(即相关性最强)
PCA 和 PLS 区别
| 属性 | PCA(主成分分析) | PLS(偏最小二乘法) |
|---|---|---|
| 学习类型 | 无监督学习 | 监督学习 |
| 输入数据 | 仅 ( X ) | ( X ) 和 ( Y ) |
| 目标 | 最大化 ( X ) 的方差 | 同时解释 ( X ) 的方差和 ( X )-( Y ) 的关系 |
| 投影方向 | 基于 ( X ) 的协方差矩阵 | 基于 ( X ) 和 ( Y ) 的协方差矩阵 |
| 应用场景 | 数据降维、压缩、去噪 | 回归、预测、多变量分析 |
| 输出结果 | 与 ( Y ) 无关的降维特征 | 与 ( Y ) 强相关的降维特征 |
高维数据的回归问题
拟合并不光滑的最小二乘模型在高维中作用很大:
- 正则或压缩在高维问题中至关重要
- 合适的调节参数对于得到好的预测非常关键
- 测试误差会随着数据维度的增加而增大,除非新增特征变量与响应变量确实相关
第七章 非线性模型
多项式回归
$$ y=β_0+β_1x_i+β_2x_i^2+β_3x_i^3+...+β_dx_i^d+ε_i $$阶梯函数
创建分割点$c_1,c_2,...,c_K$,然后构造K+1个新变量:
$C_0(X)=I(X 特点:极度简单、易于解释(如收入分段税率)。但致命缺陷是不连续,在切点处会出现“跳跃”,拟合出的图像像楼梯,无法描绘平滑变化趋势,且容易过拟合。 多项式和阶梯函数回归模型实际上是特殊的基函数方法,对变量X的函数变换$b_1(X),b_2(X),...,b_K(X)$进行建模 阶梯函数有着不连续和多项式波动剧烈的问题,而回归样条将 X 分成若干区间,在每个区间拟合一个低阶多项式,并强制要求相邻多项式在连接点(结点)处连续且平滑(导数连续)。 不同区域拟合不同的多项式函数,可以这样表示 没有约束的有K个结点的三次样条会产生4K+4个自由度 有K个结点的三次样条会产生K+4个自由度(原因是每个结点处增加了三个约束:连续、一阶导连续、二阶导连续) 同时也可以使用样条基函数表示 在上述基函数式子中,可以选择不同的基函数得到等价的三次样条,比如截断幂基的方式是先以三次多项式的基为基础($x,x_2,x_3$),然后在每个结点添加一个截断幂基函数 其中ξ是结点 使用交叉验证确定:首先移除10%的数据,用剩余的数据拟合,然后对那部分被移除的数据进行预测(10折交叉验证),最后计算整体的交叉验证RSS。整个过程对不同的结点数K不断尝试 回归样条通常结果比多项式回归好且稳定,回归样条通过固定自由度但是多设立结点的方式来获得稳定的估计结果 如果对$g(x_i)$不添加任何约束条件,只能得到一个取值为0的RSS,这样的函数对数据严重过拟合。而实际上真正需要的g是满足RSS尽量小,同时曲线尽量平滑(较少的突变,光滑度下降) 可以通过最小化下式 λ由0增至∞,实际自由度$df_{λ}$从n降至2 选取s=k/n比例的最靠近$x_0$的数据$x_i$ 对选出的数据赋予其权重$K_{i0}=K(x_i,x_0)$,离$x_0$最远的点权重为0,而最近的点权重最高 用定义好的权重在$x_i$处拟合加权最小二乘回归 根据$\hat{f}(x_0)=\hat{β}_0+\hat{β}_1x_0$得到$x_0$的拟合结果 每一个变量用一个非线性函数替换 样条如果结点放得太多,曲线会剧烈震荡(过拟合)。GAM的标准解法是引入惩罚平滑样条 允许每一个$X_i$都拟合一个非线性$f_i$,非线性拟合模型能预测得更精准,且模型可加,能保持其他变量不变情况下观测单变量对Y的影响效果 局限在于形式被限定为可加形式 用逻辑斯蒂回归的对数发生比即可 建立回归树的步骤: 对每个变量找切分点(切成几份自己决定,即J份,J - 1 个切分点),切分之后对两边的因变量求RSS,最低的地方就是单个变量要切的位置,再拿每个变量的RSS比较,越小的放在越上面 1.将预测变量空间(X1…Xp可能取值的集合)分为J个互不重叠的区域R1…Rj 2.对落入Rj的每个观测值作同样的预测,预测值等于Rj上训练集响应值的算术平均,如果是分类树,则分类为该区域最多的那类 计算决策树模型的RSS: 分类树与回归树类似,但是评判标注不能使用RSS,改为分类错误率、基尼系数和互熵 此处的Pmk表示:第 m 个节点(Node)中,属于第 k 类(Class)的样本所占的比例(概率)。 分类错误率(classification error rate) 表示 1 - 少的那个占的比例 基尼系数(Gini index) 如果它较小,就意味着某个结点包含的观棋i值几乎都来自同一类别。
互熵(cross-entropy) 与基尼系数类似,如果第 m 个结点纯度较高(数据平均地来自不同类别),则互熵值较小。 在一个仅有两个类别的简单分类情况下考虑基尼系数、分类误差和互熵。创建一张图,将这几个量分别表示为pm1的函数。
预减枝: 后减枝: 上述方法在训练集取得良好预测效果,但是可能造成过拟合,更好的策略是生成一个很大的树$T_0$,然后通过剪枝得到子树 剪枝的目的是选出使测试集预测误差最小的子树 代价复杂性剪枝也称最弱联系剪枝,不考虑每一棵可能的子树,而是考虑以非负调整参数α标记的一系列子树,每一个α的取值对应一棵子树$T⊂T_0$,当α一定时,其对应的子树使下式最小 $|T|$表示终端结点数,调整系数α在子树的复杂性与训练数据的契合度之间控制权衡,α增大:模型的偏差变大方差变小 剪枝过程: 线性回归假设了如下模型形式: 回归树的模型形式为: 真实模型线性时,线性模型更好;真实模型复杂且高度非线性时,树方法更好 优点: 缺点: Bagging = Bootstrap采样 + 多棵独立生长的深树 + 平均/投票 基本思想/目的:对一组观测求平均可以减小方差 从总体中抽取多个训练集,对每个训练集分别建立预测模型,再对由此得到的多个预测值求平均 求平均的具体方法:多数投票(majority vote),将B个预测中出现频率最高的类作为总体预测 平均每棵树能利用约三分之二的观测值,剩余三分之一没有使用的观测称为此树的袋外(out-of-bag,OOB)观测值 可以用所有将第i个观测值作为OOB的树来预测第i个观测值的响应值,则有B/3个对第i个观测值的预测,对这些值计算总体的OOB均方误差(对回归问题)或分类误差(对分类问题),由此得到的OOB误差是对装袋法模型测试误差的有效估计 对基尼系数平均减小值最多的变量 是bagging的进化版,随机森林 = Bagging + 特征随机子空间 为了保证每棵树的多样性,引入双重随机 双重随机: 基本思想/目的:根分裂结点基本上都是最重要的预测变量,导致装袋法中抽取的树高度相关。故每次分裂点随机取变量,对树作去相关处理,降低模型方差 每次考虑树上的一个分裂点,从全部的p个变量中随机(每次都随机)选m个,作为候选变量。这次的分裂点只能从这m个中挑选,通常$m≈\sqrt{p}$ 每棵树大约有1/3的样本没参与训练,这些袋外样本是天然的验证集 目的:降低学习率,舒缓的迭代,使模型预测效果变好 使用经典的梯度提升(此梯度指的是模型的能力上升) 1.对训练集中的所有i,令$\hat{f}(x=0)$,$r_i=y_i$ 2.对$b=1,2,...,B$重复以下过程 (a)对训练数据$(X,r)$建立一棵有d个分裂点的树$\hat{f}^b$ (b)将压缩后的新树加入模型以更新$\hat{f}$: (c)更新残差: 3.输出经过提升的模型: (1)树的总数B:与装袋法和随机森林不同,B值过大可能过拟合,但是发展很缓慢,用交叉验证来选择B (2)取极小正值的压缩参数λ:控制学习速度,常取0.01或0.001,若λ很小,B则需要大一些 (3)每棵树的分裂点数d:控制模型的复杂度,表示交互深度,d=1时(每棵树都是一个树桩)通常效果上佳。树更小模型解释性更强,用树桩会得到所谓加法模型 比如二维超平面: p维超平面: 使用超平面分类数据点 等价于 通过缩放w和b,得到如下式子: 然后要找出离两侧最近的点,通过缩放w和b,强制让距离超平面最近的那几个点满足 ∣wTXi+b∣=1,这样一来,两侧“马路牙子”之间的距离就恰好是 2 / ∣∣w∣∣ 我们要让马路最宽,即最大化 2∣∣w∣∣,这等价于最小化 ||w||^2^/2
因此,最大间隔超平面的求解归结为凸二次规划问题** 某种意义上说是能够插入两个类别之间的最宽的平板的中线 构建最大间隔分类器,就是如下优化问题的解 满足 M大于0,代表了超平面的间隔,优化问题就是找出最大化M时的$β_0,β_1,...,β_p$ 可能存在线性不可分的情况 为了提高分类器对单个观测分类的稳定性以及使大部分训练观测更好地被分类,允许被误分类 满足 C是非负的调节参数,C增大,允许穿过间隔的点就更多,方差减小偏差增大 $ε_i$是松弛变量,允许小部分观测可以落在间隔错误或是超平面错误的一侧 在所有分离超平面中,找出使两类之间的间隙或间隔最大的超平面。 首先,计算每个训练观测到一个分割超平面的距离,取最小值,称为间隔(margin)。这个间隔值最大的那个分割超平面即为最大间隔超平面。 然后,用此最大间隔超平面判断测试样本落在哪一侧,就可以分类。此为最大间隔分类器。
刚好落在间隔上和落在间隔错误一侧的观测叫做支持向量,只有这些观测会影响支持向量分类器 换句话说,决策边界上下移动,来到对应的间隔上下边界,由于上下边界一定会经过一些 样本数据点,这些点离决策边界最近,决定了间隔距离,因此称这些点未支持向量 只要求超平面几乎能够把类别区分开,即使用所谓的软间隔( soft
margin) 。最大间隔分类器在线性不可分情况
下的推广叫做支持向量分类器 (support vector classifier)。
软间隔:允许个别样本“违规”(越过马路牙子甚至分错),但要为此付出代价(惩罚)。 我们牺牲一点点训练集的“完美分类”,换取测试集上更大的“泛化能力”。 软间隔在硬间隔的基础上,仅仅引入了两个新东西:松弛变量 ξi 和 惩罚系数 C M是我们想要最大化的“半间隔宽度”,硬间隔要求≥M,软间隔在这里放宽了要求:允许个别点离超平面近一点(甚至跑到对面去),但要把放宽的量记为 εi。 这个松弛变量εi就是“计分卡”, 总预算:C,它规定:所有样本的“违规分数”加起来,不能超过 C 归一化硬约束(β部分):它强制要求系数向量 (β1,…,βp)的模长恰好为 1。因为模长是 1,所以第一行左边的 β0+β1xi1+…+βpxi 不需要再除以任何分母,它直接等于样本到超平面的垂直距离。 怎么调整C限制𝜖𝑖,使得超平面虽被violated,但能在接受范围内?
𝜖𝑖:0,正确间隔;>0,错误间隔;>1(右式为负数),错误超平面侧。 C:0,所有𝜖𝑖为0,不允许穿过间隔;>0,最多可以有C个观测落到超平面错误一侧,因为每个错误落侧都对应其𝜖𝑖>1(因为得为负)。至于穿过间隔多少个,无法说
如果预测变量和响应变量之间的关系是非线性的,可以使用预测变量的高阶多项式来扩大特征空间 比如可以使用2p个特征(多包含了二次项)来得到支持向量分类器: 满足 是支持向量分类器的一个扩展,使用核函数来扩大特征空间 内积:两个p维向量a和b的内积定义为(就是点乘) 线性支持向量分类器可以描述为 式子有n个参数$α_i$,每个训练观测对应一个参数 为了估计$α_i$和$β_0$,只需要所有训练观测的$C_n^2$个成对组合的内积$ 注意:非支持向量的观测的$α_i$=0 用一种一般化的形式$K(x_i,x_{i'})$来代替内积,这里K是一个核函数,用来衡量观测之间相似性的函数 比如使用简单的核函数$K(x_i,x_{i'})=\sum_{j=1}^{p}x_{ij}x_{i'j}$(线性核函数),即此时核函数就是$x_i$和$x_{i'}$的内积 核函数的主要作用是通过隐式映射将数据从原始的输入空间映射到一个更高维的特征空间,在高维空间中,数据可能变得线性可分,从而可以使用线性分类器解决原本的非线性问题。 和标准的线性核函数相比,能生成光滑度更高的决策边界 支持向量分类器与这样的非线性核函数的结合,就是支持向量机 这种情况下非线性核函数的形式为$f(x)=β_0+\sum_{i∈S}α_iK(x,x_i)$ 原理是以欧氏距离衡量,离测试观测远的训练观测的影响很小,某种意义上径向核函数是一种局部方法 RBF核只看“邻居”。当某个训练样本离测试样本稍微远一点,它的核函数值会指数级急剧衰减,迅速趋近于 0。这意味着,在决定测试样本属于哪一类时,只有离它非常近的那几个“街坊邻居”有话语权,离得远的样本根本插不上嘴。所以,RBF核天然就是一种“近朱者赤,近墨者黑”的局部相似度度量。 计算量更小 PCA产生一个对数据集的低维表示。它可以找到具有最大方差且互不相关的变量的线性组合序列。 它的任务就是:找到几个新的方向(主成分),让这些新方向能最大程度地保留原始数据X里的“差异”和“波动”,因此不需要相应的Y 聚类分析(clustering)是在一个数据集中寻找子群(subgroups)或类(clusters)的技术,应用非常广泛。 试图将观测划分到事先规定数量的类中。
并不需要事先规定所需的类数。我们最后会通过分析观测的树型表示,即谱系图(dendrogram)来确定类数。通过看谱系图还可以马上获得从1类到𝑛类类数不等的分类情况。 算法 从谱系图的底部开始,𝑛个观测各自都被看作一类
再将两个最为相似的类汇合到一起,就得到了𝑛−1个类;
然后再把两个最为相似的类汇合到一起,就得到了𝑛−2个类;
如此进行下去,到所有观测都属于某一个类时停止 区别 常见的惩罚向
支持向量机(lamba=C,C越大,软间隔越大,方差越小,偏差增大)
Lasso(lamba增大,变量数量变少,系数减少,趋近于线性,方差减少,偏差增大)
岭回归(lamba增大,变量数量变少,系数减少,趋近于线性,方差减少,偏差增大)
光华样条(λ由0增至∞,实际自由度$df_{λ}$从n降至2,自由度降低,趋近于线性,方差减少,偏差增大)基函数
回归样条

截断幂基

确定结点的个数和位置
光滑样条
局部回归
广义可加模型(GAM)
防止过拟合:

GAM的优点与不足
用于分类的GAM
第八章 基于树的方法
决策树基本概念
回归树

分类树
分类指标

树的剪枝
(1)利用递归二叉分裂在训练集中生成一颗大树,只有当终端结点包含的观测值个数低于某个最小值时才停止
(2)对大树进行代价复杂性剪技,得到一系列最优子树,子树是α的函数
(3)利用K折交叉验证选择α。具体做法是将训练集分为K折。对所有k=1,...,K,有:
(a)对训练集上所有不属于第K折的数据重复步骤1和2,得到与α一一对应的子树
(b)求出上述子树在第k折上的均方预测误差
上述操作结束后,每个α会有相应的K个均方预测误差,对这K个值求平均,选出使平均误差最小的α
(4)找出选定的α值在步骤2中对应的子树中即可
决策树评估
树与线性模型的比较
树的优缺点
装袋法、随机森林和提升法
装袋法
基本概念
袋外误差估计
变量重要性
随机森林
基本概念
提升法(Boosting)
基本概念
三个参数
第九章 支持向量机
最大间隔分类器
超平面

最大间隔超平面
支持向量分类器
最大间隔分类器

支持向量
支持向量分类器

软间隔范围限定


非线性决策边界分类

支持向量机
线性支持向量分类器
核函数
自由度为d的多项式核函数
$$
K(x_i,x_{i'})=(1+\sum_{j=1}^{p}x_{ij}x_{i'j})^d
$$径向核函数
$$
K(x_i,x_{i'})=exp(-γ\sum_{j=1}^{p}(x_{ij}-x_{i'j})^2)
$$使用核函数的优势
多分类的SVM(support vector machine)

第十章 无监督学习
主成分分析 PCA
标准化
$$
𝑍_1=𝜙_{11} 𝑋_1+𝜙_{21} 𝑋_2+…+𝜙_{p1} 𝑋_𝑝
$$
主成分受变量度量单位的选择影响,会导致结果的任意性。通常在进行PCA之前,需要将每个变量都标准化,使得它们的方差都为1。

聚类分析法
K均值聚类(K-means clustering)
K均值聚类法的思想是,一个好的聚类法可以使类内差异(within-cluster variation)尽可能小。
算法系统聚类(hierarchical clustering)


第十一章 各模型评测
各模型偏差-方差均衡以及光滑度-可解释性均衡
偏差-方差均衡
模型 偏差减小,方差增大 方差减小,偏差增大 线性回归 系数个数增多 系数个数减少 K最近邻(KNN) K减小 K增大 岭回归/Lasso λ减小 λ增大 多项式回归 最高项次数增大 最高项次数减小 阶梯函数 分割点个数增多 分割点个数减少 回归样条 自由度增大 自由度减小 光滑样条 λ减小 λ增大 局部回归 比例s减小 比例s增大 广义可加模型 – – 决策树 α减小 α增大 支持向量分类器 C减小/cost值增大 C增大/cost值减小 光滑度-可解释性均衡

置信区间和预测区间的区别
属性 置信区间 (CI) 预测区间 (PI) 目的 估计总体平均值的范围 估计单个预测值的范围 包含内容 仅包含模型的不确定性(标准误差 $SE$) 包含模型不确定性 + 数据固有波动($\sigma$) 区间宽度 相对较窄 相对较宽 应用场景 用于描述模型对总体均值预测的精度 用于预测新数据点的可能范围 解释方式 “在95%的置信水平下,真实的均值落在区间内。” “在95%的置信水平下,未来的某个值落在区间内。”
