Machine Learning-L3-训练集与测试集

简介: Machine Learning-L3-训练集与测试集

1. 过拟合与欠拟合


欠拟合(underfitting):模型未能拟合训练数据,高偏差(high bias)。

过拟合(overfitting) :模型未能拟合测试数据,高方差(high variance)。

过度拟合通常发生在特征过多的时候,模型总能很好的拟合训练数据,但泛化能力(模型能够应用到新样本的能力)差,无法应用到新的数据样本中。

image.png


为了防止数据的过拟合(Overfitting),一般将数据集分为两部分:


  • 训练集(Training set):用于训练模型
  • 测试集(Test set):用于测试模型。


有时在模型的训练过程,为调整参数辅助模型构建(如神经网络中选择隐藏单元数),又会另将训练数据划分为训练集与验证集(Validation Set)。

验证集可以在模型训练中重复使用,而测试集只用于模型检测中,评估模型的准确率,不允许用于模型训练。

实际应用中,一般只将数据集划分为训练集与测试集。


《Pattern Recognition and Neural Networks》(Ripley, B.D,1996)中对三个词的定义如下:


Training set: A set of examples used for learning, which is to fit the parameters [i.e., weights] of the classifier.

Validation set: A set of examples used to tune the parameters [i.e., architecture, not weights] of a classifier, for example to choose the number of hidden units in a neural network.

Test set: A set of examples used only to assess the performance [generalization] of a fully specified classifier.

2020041521534797.jpg


2. 训练集与测试集划分


2.1 保持(Holdout)方法


保持方法是划分训练集与测试集的常用方法,将给定数据随机划分成两个独立的集合,通常以75/25或80/20的比例分配到训练集与测试集。


2.2 交叉验证 (cross-validation)


k-折交叉验证(k-fold cross-validation)中,初始数据随机地划分成k个互不相交的子集(折), s1 , s2 , . . . ,  sk 。训练并检验k次,第i次迭代中,分区S i 作为测试集,其余分区用作训练模型。

即第1次迭代,子集s2 , . . . ,  sk作为训练集,得到第1个模型,并在 s1 上测试;第2次迭代,子集 s1 , s3 , . . . ,  sk 作为训练集,得到第2个模型,并在s2上测试;如此下去。每个样本用于训练的次数相同,并且仅用于1次测试。


20200415215553906.png


相关文章
|
8月前
|
人工智能 安全 算法
基于Aidlux平台实现真章假章相似度对比训练推理测试
在互联网内容安全风控领域,AI技术的应用对于提高管理的自动化程度和准确性具有重要意义。
123 0
|
10月前
|
Python
使用python将数据集划分为训练集、验证集和测试集
使用python将数据集划分为训练集、验证集和测试集
|
数据采集 机器学习/深度学习 编解码
MMdetection框架速成系列 第02部分:整体算法流程+模型搭建流程+detection训练与测试核心组件+训练部分与测试部分的核心算法
众所周知,目标检测算法比较复杂,细节比较多,难以复现,而我们推出的 MMDetection 开源框架则希望解决上述问题。目前 MMdetection 已经复现了大部分主流和前沿模型,例如 Faster R-CNN 系列、Mask R-CNN 系列、YOLO 系列和比较新的 DETR 等等,模型库非常丰富,star 接近 13k,在学术研究和工业落地中应用非常广泛。
1269 0
|
22天前
|
测试技术 Linux 开发工具
软件测试之【面试题综合训练题】
软件测试之【面试题综合训练题】
17 0
|
1月前
|
机器学习/深度学习 API Apache
机器学习PAI常见问题之本地运行深度学习训练和预测的测试代码时报错如何解决
PAI(平台为智能,Platform for Artificial Intelligence)是阿里云提供的一个全面的人工智能开发平台,旨在为开发者提供机器学习、深度学习等人工智能技术的模型训练、优化和部署服务。以下是PAI平台使用中的一些常见问题及其答案汇总,帮助用户解决在使用过程中遇到的问题。
|
1月前
|
机器学习/深度学习 算法 异构计算
yolov7训练自己的数据集(pycharm上训练测试)
yolov7训练自己的数据集(pycharm上训练测试)
|
1月前
|
并行计算 计算机视觉
YOLOv8太卷啦 | YOLOv8官方仓库正式支持RT-DETR训练、测试以及推理
YOLOv8太卷啦 | YOLOv8官方仓库正式支持RT-DETR训练、测试以及推理
222 0
|
1月前
|
机器学习/深度学习 传感器 算法
PyTorch基础之优化器模块、训练和测试模块讲解(附源码)
PyTorch基础之优化器模块、训练和测试模块讲解(附源码)
87 0
|
8月前
|
机器学习/深度学习 算法 数据挖掘
【数据科学】Scikit-learn[Scikit-learn、加载数据、训练集与测试集数据、创建模型、模型拟合、拟合数据与模型、评估模型性能、模型调整]
【数据科学】Scikit-learn[Scikit-learn、加载数据、训练集与测试集数据、创建模型、模型拟合、拟合数据与模型、评估模型性能、模型调整]
|
异构计算
【超快超轻YOLO】YOLO-Fastest从Darknet源码编译、测试再到训练完整图文教程!
【超快超轻YOLO】YOLO-Fastest从Darknet源码编译、测试再到训练完整图文教程!
370 0

热门文章

最新文章