训练集和测试集 (Training and Test Sets):拆分数据

原创 2018年04月16日 22:56:04

将数据集分为两个子集:

  • 训练集 - 用于训练模型的子集。
  • 测试集 - 用于测试训练后模型的子集。

如果只有一个数据集的话,可以将数据集分开:


图 1. 将单个数据集拆分为一个训练集和一个测试集。

但要确保测试集满足以下两个条件:

  • 规模足够大,可产生具有统计意义的结果。
  • 能代表整个数据集。换言之,挑选的测试集的特征应该与训练集的特征相同。

假设测试集满足上述两个条件,目标是创建一个能够很好地泛化到新数据的模型。我们的测试集充当新数据的代理。以下图为例。请注意,从训练数据中学习的模型非常简单。该模型的表现并不完美,出现了一些错误的预测。不过,该模型在测试数据上的表现与在训练数据上的表现一致。也就是说,这个简单的模型没有过拟合训练数据。


请勿对测试数据进行训练。 如果评估指标取得了意外的好结果,则可能表明不小心对测试集进行了训练。例如,高准确率可能表明测试数据泄露到了训练集。

例如,假设一个模型要预测某封电子邮件是否是垃圾邮件,它使用主题行、邮件正文和发件人的电子邮件地址作为特征。我们按照 80-20 的拆分比例将数据拆分为训练集和测试集。在训练之后,该模型在训练集和测试集上均达到了 99% 的精确率。我们原本预计测试集上的精确率会低于此结果,因此再次查看数据后发现,测试集中的很多样本与训练集中的样本是重复的(由于疏忽,我们在拆分数据之前,没有将输入数据库中的相同垃圾邮件重复条目清理掉)。我们无意中对一些测试数据进行了训练,因此无法再准确衡量该模型泛化到新数据的效果。

Key Terms
overfitting(过拟合)test set(测试集)
training set(训练集)

版权声明: https://blog.csdn.net/bxg1065283526/article/details/79967928

r语言中怎么划分训练集和测试集

#做训练集和测试集 set.seed(1) sub length(sub) data_train data_test dim(data_train)#训练集行数和列数13542 23 d...
  • li603060971
  • li603060971
  • 2017-02-25 10:59:51
  • 4477

机器学习中,从样本集合分得训练集、测试集的三种方法

一、为什么要分开训练集与测试集在机器学习中,我们是依靠对学习器的泛化误差进行评估的方法来选择学习器。具体方法如下:我们需要从训练集数据中产出学习器,再用测试集来测试所得学习器对新样本的判别能力,以测试...
  • zzZ_CMing
  • zzZ_CMing
  • 2017-12-07 12:12:03
  • 1313

R语言实现数据抽样&创建训练集和测试集

原文地址:http://blog.csdn.net/helen1313/article/details/38017131  主要参考《数据挖掘:R语言实战》(黄文,王正林编著) 在收集...
  • jiabiao1602
  • jiabiao1602
  • 2015-01-13 13:45:31
  • 5589

机器学习 数据挖掘 数据集划分 训练集 验证集 测试集

机器学习之数据集划分: 训练集 验证集 测试集 Q:将数据集划分为测试数据集和训练数据集的常用套路是什么呢? A:three ways shown as follow: 1.像sklea...
  • Scotfield_msn
  • Scotfield_msn
  • 2017-04-10 12:40:59
  • 4038

深度学习总结(八)——训练、开发和测试集及偏差和方差

1. 数据集的划分小数据时代: 70%(训练集)/30%(测试集)或者60%(训练集)/20%(验证集)/20%(测试集) 大数据时代: 验证集和测试集的比例要逐渐减小,比如: 980000/10...
  • manong_wxd
  • manong_wxd
  • 2017-12-07 10:33:41
  • 824

python 划分数据集为训练集和测试集

sklearn的cross_validation包中含有将数据集按照一定的比例,随机划分为训练集和测试集的函数train_test_splitfrom sklearn.cross_validation...
  • xidianliutingting
  • xidianliutingting
  • 2016-12-05 10:42:07
  • 8708

机器学习-周志华-课后习题答案-决策树

本文为博主原创,由于没有可以参考的答案,所以内容中若有错误的地方烦请指正,不甚感激。 注:本文中的代码均使用python,常用工具包包括 pandas,scikit-learn,numpy, sci...
  • wzmsltw
  • wzmsltw
  • 2016-04-04 23:07:26
  • 11424

自动训练(决策树)模型

http://www.cnblogs.com/qwj-sysu/p/5935016.html 项目上要求给出一个可配置的类自动化的流程,下面根据自己的思考给出自动训练模型...
  • zdy0_2004
  • zdy0_2004
  • 2016-10-07 16:48:52
  • 1329

30分钟学会用scikit-learn的基本分类方法(决策树、SVM、KNN)和集成方法(随机森林,Adaboost和GBRT)

关于回归方法,请参考我的另一篇博客30分钟学会用scikit-learn的基本回归方法(线性、决策树、SVM、KNN)和集成方法(随机森林,Adaboost和GBRT) 本文主要参考了scikit-...
  • u010900574
  • u010900574
  • 2016-09-26 12:14:59
  • 3548
收藏助手
不良信息举报
您举报文章:训练集和测试集 (Training and Test Sets):拆分数据
举报原因:
原因补充:

(最多只允许输入30个字)