(统计学习方法|李航)第一章统计学习方法概论——四五六节模型评估与模型选择,正则化与交叉验证,泛化能力

一,模型评估与模型选择

1.训练误差与测试误差

假如我们有100个数据。80条记录给训练集,10条记录给测试集,10条记录给验证集

先在训练集中训练模型,

再在验证集上测试看哪种模型更拟合

最后用测试集算出成绩

表示决策函数

模型拟合的好坏(对已知数据的预测效果)我们可以通过训练集测出训练误差来衡量

对未知数据预测效果好坏可以利用测试集来衡量

  • 预测值和真实值不相等的个数占测试集样本总个数的比例
  • 经过模型的预测值和真实值相等的占样本点的个数。

2.过拟合与模型选择

在多项式拟合问题中 :
就很好的解释了过拟合问题,我们想要去拟合一个正弦函数

我们去选择正弦函数上的点去拟合

当图像是三次函数时,拟合效果是非常不错的,但是为了抓住图像中的每一个细节

(哪怕噪音也不放过,就容易出现过拟合问题)

  • 我们使用的是经验风险最小化的策略
  • 经验风险使用的损失函数是平方损失

要求出最小值就需要求导,这里的二分之一只是为了抵消平方

那么如何去看是否过拟合呢?

  • 他在训练集上拟合效果特别好(每个点集都在图像上)
  • 但是在测试集和验证集上特别差

就是过拟合了!!!

当M=9,训练误差极大,但测试误差极大

二,正则化与交叉验证

1.正则化

最小化结构风险中跟的就是正则项

目的:减少模型的复杂度,防止过拟合的

正则化项有两种形式:

  • L1范数和L2范数
  • w这里叫作参数

这里谈一个奥姆卡剃刀原理:

  • 我们发现当模型复杂度大于等于3的时候,训练集都能很好的拟合,、
  • 则选择最简单的模型

2.交叉验证

(1)简单交叉验证

(2)S折交叉验证

我们只有100个数据,一开始选择这80个数据作为训练集,剩下的是测试集和验证集

后来再随机选出80个,

选出来10种训练集进行模型训练。

选择不同的测试集去训练模型

(3)留一交叉验证

数据非常缺乏的情况下:

此时的N为数据的容量

三,泛化能力

1.泛化误差

  • 泛化误差R(f)
  • 就是对损失函数值loss求出其数学期望
  • 泛化误差反映了学习方法的泛化能力,即所学习到的模型的期望风险。

f-hat(X)为预测值

这里我们之前学的策略里的损失函数的期望值

我们下面给出的红豆绿豆的实例

下面这个是经验风险。

2.泛化误差上界

函数f是从假设空间F中抽取出来的


那么这个泛化误差R(f)(期望风险)是有上界的。

  • d代表的是假设空间中函数的个数
  • N表示训练集中样本的个数
  • 德尔塔则是概率

regulation

(1)当N->无穷大,样本容量增大,那么泛化误差上界就是趋向于0的。

(2)d越大,假设空间越来越复杂,那么泛化误差上界也会增大。

公式推导:

首先我们直到有以下

hoeffding不等式成立:

SN为随机变量求和

即可得:

相关推荐
NAGNIP3 小时前
GPT-5.1 发布:更聪明,也更有温度的 AI
人工智能·算法
NAGNIP3 小时前
激活函数有什么用?有哪些常用的激活函数?
人工智能·算法
骚戴3 小时前
2025 Python AI 实战:零基础调用 LLM API 开发指南
人工智能·python·大模型·llm·api·ai gateway
Cherry的跨界思维3 小时前
【AI测试全栈:质量模型】4、新AI测试金字塔:从单元到社会的四层测试策略落地指南
人工智能·单元测试·集成测试·ai测试·全栈ai·全栈ai测试·社会测试
亚马逊云开发者4 小时前
使用Amazon Nova模型实现自动化视频高光剪辑
人工智能
Tony Bai4 小时前
Go 的 AI 时代宣言:我们如何用“老”原则,解决“新”问题?
开发语言·人工智能·后端·golang
卤代烃4 小时前
🦾 可为与不可为:CDP 视角下的 Browser 控制边界
前端·人工智能·浏览器
ggabb4 小时前
海南封关:锚定中国制造2025,破解产业转移生死局
大数据·人工智能
_XU4 小时前
AI工具如何重塑我的开发日常
前端·人工智能·深度学习
Blossom.1185 小时前
Prompt工程与思维链优化实战:从零构建动态Few-Shot与CoT推理引擎
人工智能·分布式·python·智能手机·django·prompt·边缘计算