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

一,模型评估与模型选择

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为随机变量求和

即可得:

相关推荐
cdut_suye7 分钟前
踏浪而行,2024年技术创作的星光轨迹
经验分享·笔记·学习方法·热榜·博客之星·学习历程·回顾2024
IE0610 分钟前
深度学习系列76:流式tts的一个简单实现
人工智能·深度学习
GIS数据转换器14 分钟前
城市生命线安全保障:技术应用与策略创新
大数据·人工智能·安全·3d·智慧城市
无须logic ᭄17 分钟前
CrypTen项目实践
python·机器学习·密码学·同态加密
一水鉴天2 小时前
为AI聊天工具添加一个知识系统 之65 详细设计 之6 变形机器人及伺服跟随
人工智能
井底哇哇7 小时前
ChatGPT是强人工智能吗?
人工智能·chatgpt
Coovally AI模型快速验证8 小时前
MMYOLO:打破单一模式限制,多模态目标检测的革命性突破!
人工智能·算法·yolo·目标检测·机器学习·计算机视觉·目标跟踪
AI浩8 小时前
【面试总结】FFN(前馈神经网络)在Transformer模型中先升维再降维的原因
人工智能·深度学习·计算机视觉·transformer
可为测控8 小时前
图像处理基础(4):高斯滤波器详解
人工智能·算法·计算机视觉
一水鉴天9 小时前
为AI聊天工具添加一个知识系统 之63 详细设计 之4:AI操作系统 之2 智能合约
开发语言·人工智能·python