上一章:机器学习01——机器学习概述
下一章:机器学习03——线性模型
机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备
文章目录
- 一、经验误差与过拟合
- (一)核心概念定义
- (二)过拟合与欠拟合
- 二、模型评估方法(数据集划分策略)
- (一)留出法
- (二)k折交叉验证法
- (三)留一法
- (四)自助法
- 三、性能度量(模型评价标准)
- (一)回归任务的性能度量
- (二)分类任务的性能度量
一、经验误差与过拟合
(一)核心概念定义
- 误差:样本真实输出与预测输出之间的差异。
- 误差类型:
- 训练(经验)误差:模型在训练集上的误差;
- 测试误差:模型在测试集上的误差;
- 泛化误差:模型在除训练集外所有新样本上的误差(反映模型对新数据的适应能力)。
- 错误率:分错样本占总样本的比例(是误差的一种具体表现形式)。
(二)过拟合与欠拟合
-
过拟合:
- 定义:模型过度学习训练样本的细节(将训练样本的特有性质误认为所有样本的一般性质),导致泛化性能下降;
- 举例:模型误以为“树叶必须有锯齿”,将无锯齿的树叶误判为“不是树叶”;
- 解决方法:通过优化目标加正则项(限制模型复杂度)、早停(提前终止训练)等方式缓解。
-
欠拟合:
- 定义:模型未学好训练样本的一般性质,对数据的规律把握不足;
- 举例:模型误以为“绿色的都是树叶”,将绿色的非树叶(如绿色果实)误判为“是树叶”;
- 解决方法:对决策树增加分支、神经网络增加训练轮数等(增强模型对数据的学习能力)。
-
关键结论:仅追求训练误差最小化(如训练集错误率为0)往往无法得到好模型,需平衡训练误差与泛化能力。
二、模型评估方法(数据集划分策略)
模型评估的核心是通过合理划分训练集(用于训练模型)和测试集(用于评估泛化能力),用测试误差近似泛化误差,且需保证训练集与测试集互斥、分布一致。常见方法包括:
(一)留出法
- 操作:将数据集直接划分为互斥的训练集S和测试集T;
- 要点:
- 保持数据分布一致性(如分层采样,避免某类样本集中在训练集或测试集);
- 通常多次随机划分并取平均值,减少偶然误差;
- 训练集与测试集比例多为2:1~4:1(训练集占比更高,保证模型有足够数据学习)。
(二)k折交叉验证法
- 操作:将数据集分层采样划分为k个大小相似的互斥子集,每次用k-1个子集的并集作为训练集,剩余1个子集作为测试集,重复k次后取均值;
- 特点:
- 常用k=10(即10折交叉验证),平衡评估准确性与计算成本;
- 为减少划分方式的影响,可重复p次(如“10次10折交叉验证”),最终取p次结果的均值。
(三)留一法
- 操作:当数据集包含m个样本时,令k=m(即每个子集仅含1个样本),每次用m-1个样本训练,1个样本测试,重复m次取均值;
- 优缺点:
- 优点:不受随机划分影响,评估结果准确;
- 缺点:当m较大时,计算开销极大(需训练m个模型),实用性有限。
(四)自助法
- 操作:基于有放回采样,从数据集D中采样m次得到训练集(部分样本可能重复),未被采样的样本(约占1/3)作为测试集;
- 适用场景:数据集较小时(解决训练/测试集划分困难问题);
- 局限性:改变了原始数据分布,可能引入估计偏差,因此数据量充足时,优先选择留出法或交叉验证法。
三、性能度量(模型评价标准)
性能度量是衡量模型泛化能力的标准,需根据任务需求选择,不同度量可能导致不同评判结果。
(一)回归任务的性能度量
- 均方误差:最常用指标,计算预测值与真实值差值的平方的平均值,公式为:
E(f;D)=1m∑i=1m(f(xi)−yi)2E(f ; D)=\frac{1}{m} \sum_{i=1}^{m}\left(f\left(x_{i}\right)-y_{i}\right)^{2}E(f;D)=m1i=1∑m(f(xi)−yi)2
其中,f(xi)f(x_i)f(xi)为模型预测值,yiy_iyi为真实值,m为样本数。
(二)分类任务的性能度量
-
错误率与精度:
- 错误率:分错样本占总样本的比例,公式为:
E(f;D)=1m∑i=1mI(f(xi)≠yi)E(f ; D)=\frac{1}{m} \sum_{i=1}^{m} \mathbb{I}\left(f\left(x_{i}\right) \neq y_{i}\right)E(f;D)=m1i=1∑mI(f(xi)=yi) - 精度(正确率):分对样本占总样本的比例,公式为:
acc(f;D)=1m∑i=1mI(f(xi)=yi)=1−E(f;D)acc(f ; D) =\frac{1}{m} \sum_{i=1}^{m} \mathbb{I}\left(f\left(x_{i}\right)=y_{i}\right) =1-E(f ; D)acc(f;D)=m1i=1∑mI(f(xi)=yi)=1−E(f;D)
(I(⋅)\mathbb{I}(\cdot)I(⋅)为指示函数,条件成立时取1,否则取0)。
- 错误率:分错样本占总样本的比例,公式为:
-
查准率(P)与查全率(R):
- 基于混淆矩阵(统计真实标记与预测结果的组合):
- TP(真正例):真实为正例且预测为正例;
- FN(假反例):真实为正例但预测为反例;
- FP(假正例):真实为反例但预测为正例;
- TN(真反例):真实为反例且预测为反例;
- 查全率(召回率):所有真实正例中被正确预测的比例,公式为:
R=TPTP+FNR=\frac{TP}{TP+FN}R=TP+FNTP - 查准率(精确率):所有预测为正例中真实为正例的比例,公式为:
P=TPTP+FPP=\frac{TP}{TP+FP}P=TP+FPTP - 适用场景:信息检索、Web搜索等(需权衡“找到的正例是否准确”和“是否找到所有正例”)。
- 基于混淆矩阵(统计真实标记与预测结果的组合):
-
P-R曲线与平衡点:
- P-R曲线:按模型对正例的预测概率排序,逐个将样本视为正例时,得到的查准率-查全率曲线(直观反映模型在不同阈值下的P和R表现);
- 平衡点:P-R曲线上查准率=查全率的点,用于比较交叉曲线的模型性能(平衡点越高,模型越好)。
-
F1与Fβ度量:
- F1:查准率与查全率的调和平均,综合两者性能,公式为:
F1=2×P×RP+R=2×TP样例总数+TP−TNF1=\frac{2 × P × R}{P+R}=\frac{2 × TP}{样例总数 +TP-TN}F1=P+R2×P×R=样例总数+TP−TN2×TP - Fβ:更灵活的度量,通过β调整对P和R的偏重:
Fβ=(1+β2)×P×R(β2×P)+RF_{\beta}=\frac{\left(1+\beta^{2}\right) × P × R}{\left(\beta^{2} × P\right)+R}Fβ=(β2×P)+R(1+β2)×P×R- β=1时为标准F1;
- β>1时偏重查全率(如逃犯检索,需尽可能找到所有逃犯);
- β<1时偏重查准率(如商品推荐,需推荐的商品尽可能符合用户需求)。
- F1:查准率与查全率的调和平均,综合两者性能,公式为:
上一章:机器学习01——机器学习概述
下一章:机器学习03——线性模型
机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备