torch笔记十五 | 模型选择

1.训练误差和泛化误差

分别表示数据在训练数据上的误差,模型在新数据上的误差。

2.验证和测试数据集

验证数据集:来自训练数据集,没有参加训练的数据,用来模型的调参,评估模型好坏的数据集。

测试数据集:只用一次的数据集,不能用来当验证数据集调参数。

3.K-折交叉验证

因为没有足够多的数据使用作为验证。将训练数据分割成K块。依次遍历,将每一块数据用来验证集,其它k-1块用于训练。最后报告K个验证集误差的平均。常用K=5或者10。

小结:训练数据集用来训练模型参数、验证数据集用于选择模型超参数、非大数据集上通常使用k-折交叉验证。

4.过拟合和欠拟合

过拟合:数据简单,模型容量高,把每一个样本都记住了,见到新样本可能没有泛化性。

欠拟合:数据复杂,模型容量低,训练不好模型。

所以,数据简单,应该设计小容量的模型;数据复杂,应该设计大容量的模型。

5.模型容量

模型容量是拟合各种函数的能力。随着模型容量的增加,泛化误差先减小在增加,训练误差一直减小。低容量的模型难以拟合训练数据;高容量的模型可以记住所有的训练数据。

有时候为了降低泛化误差,不得不承受一定程度的过拟合。首先,模型的容量需要够大。比较模型容量的方法有两个:计算参数的个数、参数值的选择范围。

6.VC维

统计学习理论的一个核心思想。VC维指的是,对于一个分类模型,不管如何给数据集样本标号,都能在数据集上进行划分的数据集样本的最大个数。例如,对于二维输入的感知机模型(单层),可以完美分割3个样本,而对于4个样本的XOR问题就不能解决,所以,该模型的VC维是3。推论:支持N维输入的感知机的VC维是N+1。

VC维可以提供一个判断模型好坏的理论依据,但是衡量不是很准确,深度学习模型的VC维计算很困难。

7.数据复杂度

样本个数、每个样本的元素个数、时间空间结构、多样性(分类的数量等等)

8.判断模型的好坏

实际上,经常使用泛化误差和训练误差的差距,来衡量模型好坏。关注点:训练结束后的val_loss大小val_loss和train_loss之间的差距

正常的模型:train_loss和val_loss都比较小,而且两者的差距很小。
欠拟合的模型:train_loss和val_loss都很大。
过拟合的模型:train_loss很小,但是val_loss比train_loss要大很多。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值