测试集 , 训练集和验证集的区别

最近在看机器学习的东西发现验证集的(Validation set) 有时候被提起到,以时间没明白验证集的真正用途。
首先,这三个名词在机器学习领域的文章中是很常见的,以下是这三个词的定义。
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.
训练集:学习样本数据集,通过匹配一些参数来建立一个分类器。建立一种分类的方式,主要是用来训练模型的。
验证集:对学习出来的模型,调整分类器的参数,如在神经网络中选择隐藏单元数。验证集还用来确定网络结构或者控制模型复杂程度的参数。
测试集:主要是测试训练好的模型的分辨能力(识别率等)
显然,training set是用来训练模型或确定模型参数的,如ANN中权值等; validation set是用来做模型选择(model selection),即做模型的最终优化及确定的,如ANN的结构;而 test set则纯粹是为了测试已经训练好的模型的推广能力。当然,test set这并不能保证模型的正确性,他只是说相似的数据用此模型会得出相似的结果。但实际应用中,一般只将数据集分成两类,即training set 和test set,大多数文章并不涉及validation set。

针对数据偏差与数据方差的关系
偏差:描述的是预测值(估计值)的期望与真实值之间的差距。偏差越大,越偏离真实数据,如下图第二行所示。
方差:描述的是预测值的变化范围,离散程度,也就是离其期望值的距离。方差越大,数据的分布越分散,如下图右列所示。<img src="https://pic1.zhimg.com/162bbe3ae6c8f46da4f4e05edea2d9fc_b.jpg" data-rawwidth="936" data-rawheight="886" class="origin_image zh-lightbox-thumb" width="936" data-original="https://pic1.zhimg.com/162bbe3ae6c8f46da4f4e05edea2d9fc_r.jpg">参考:

时间: 2024-10-22 17:15:53

测试集 , 训练集和验证集的区别的相关文章

训练集(train set) 验证集(validation set) 测试集(test set)

在有监督(supervise)的机器学习中,数据集常被分成2~3个,即:训练集(train set) 验证集(validation set) 测试集(test set). http://blog.sina.com.cn/s/blog_4d2f6cf201000cjx.html 一般需要将样本分成独立的三部分训练集(train set),验证集(validation set)和测试集(test set).其中训练集用来估计模型,验证集用来确定网络结构或者控制模型复杂程度的参数,而测试集则检验最终选

《写给程序员的数据挖掘实践指南》——5.1训练集和测试集

5.1训练集和测试集 前一章的最后部分中,我们使用了3个不同的数据集:女子运动员数据集.Iris数据集以及汽车MPG数据集.我们把每个数据集分成两个子集,一个用于构建分类器,该数据集称为训练集(training set).另一个数据集用于评估分类器,该数据集称为测试集(test set).训练集和测试集是数据挖掘中的常用术语. 数据挖掘领域的人永远不会在用于训练系统的数据上进行测试!下面以近邻算法为例来解释为什么不能使用训练数据来测试.如果上述例子中的篮球运动员Marissa Coleman在训

corel 5k数据集中怎么分训练集和测试集图片?

问题描述 corel 5k数据集中怎么分训练集和测试集图片? 它有50个主题,每个主题100张图像.那么4500张训练图像和500张测试图像怎么分?我感觉图像和标签怎么对不上? 解决方案 楼主,corel5k这个数据集,你有吗?现在我需要做一些实验,但是没有这个数据集,希望得到你的帮助.非常期待你的回复

《应用程序性能测试的艺术(第2版)》—第2章 2.3节性能测试工具集:概念验证

2.3 性能测试工具集:概念验证对于候选的性能测试工具,你需要对它们一一试用以验证工具的可行性,只有这样才能确保你最终选择的工具集能够满足你的需求.在验证过程中至少选择录制两个测试用例:一个只读用例(比如一个返回一条或者多条记录的搜索操作)和一个涉及插入和更新你的应用数据库的写用例.这样你就能验证录制下来的测试用例是否能够正确回放.如果你的应用是只读的,你也要检查脚本回放日志来确保回放过程中没有任何错误. 概念验证完成以下目标. 为验证性能测试工具是否适合目标应用提供了一次技术评估的机会技术兼容

启动Hadoop集群和HBase集群脚本

#!/bin/sh #echo "waring" #read NAME #等待用户输入并把输入的值付给NAME NAME=$1 #将脚本第一个参数赋给NAME #引用变量时加上"{}",是个好习惯,利于shell辨别变量边界 if [ -z ${NAME} ] ;then #默认如果为空,hadoop start echo "1.start hadoop on ${HOSTNAME}" start-all.sh elif [ "${NA

搭建mongodb集群(副本集+分片)

搭建mongodb集群(副本集+分片) 转载自:http://blog.csdn.net/bluejoe2000/article/details/41323051 完整的搭建mongodb集群(副本集+分片)的例子... 准备四台机器,分别是bluejoe1,bluejoe2,bluejoe3,以及bluejoe0 副本集及分片策略确定如下:   将创建3个副本集,命名为shard1,shard2,shard3: 以上3个副本集作为3个分片: 每个副本集包含3个副本(主.辅1.辅2): 副本分开

请问在Asp.net里面如何实现Web服务器集群 ,做集群的时候需要注意点什么 ?IIS如何集群 ?请大师们解惑

问题描述 请问在Asp.net里面如何实现Web服务器集群,做集群的时候需要注意点什么?IIS如何集群?请大师们解惑 解决方案 解决方案二:集群应该是操作系统或者专用软件实现的,不是编程实现的,另外还涉及到硬件设备是否支持集群,有专门的集群设备.解决方案三:回复:1楼:不会的,例如WebSphere它就有支持集群的版本

阿里云E-MapReduce 扩容集群和释放集群

扩容集群: 当您的集群资源(计算资源.存储资源)不足的时候,您可以将您的集群进行水平扩展.目前只能扩展您的 Core 节点,且使用的配置默认与您之前购买的 ECS 配置一致. 扩容入口 在集群列表页上,找到需要扩展的集群条目,单击调整规模按钮就会进入集群扩容页面.也可以单击查看详情,然后在详情页的 Core 节点信息位置单击调整集群规模. 扩容界面 如下图所示: 注意:目前,只支持扩容,不支持缩容. 当前 Master 节点数量:不可以调整,当前默认值是 1 个. 当前 Core 台数:默认显示

Linux系统SureHA集群,在集群生成向导中添加镜像磁盘资源后应用配置文件,集群无法启动的处理方法

Linux系统SureHA集群,在集群生成向导中添加镜像磁盘资源后应用配置文件,启动集群出现报错,如下图:   解决方案: Linux系统SureHA集群,在集群生成向导中添加镜像磁盘资源后应用配置文件,需要重新启动所有节点,集群会自动启动.