深度学习基础-训练集与测试集的划分

深度学习基础-训练集与测试集的划分

本篇文章将介绍常用的三种训练集与测试集的方法,描述都是我自己的理解,如果理解有误,还望读者指正。

1.留出法

留出法是最直观,也是最简单的训练集与数据集的划分方法,其步骤为:

(1)将数据随机分为两组,一组作为训练集,一组作为测试集
(2)利用训练集训练数据分类器,然后用测试集评估模型,记录最后的分类准确率来作为分类器的评价指标

缺点:在测试集上的预测性能的高低与数据集的拆分有很大的关系,所以基于这种数据集拆分基础上的性能评价结果不够稳定。

2.K折交叉验证

既然留出法的结果是不够稳定,那么我多拆分几次,将这几次的准确率取平均值,这样性能评价不就稳定了吗,K折交叉验证就是一种这样的验证方式。步骤:
(1)将数据集分成K份(K通常取5或者10)
(2)不重复的每次取其中的一份作为测试集,用其他的K-1份做训练集训练,这样会得到k个评价模型
(3)将上述步骤2中的K次评价的性能均值作为最后评价结果。
深度学习基础-训练集与测试集的划分

分层抽样策略(stratified k-fold)

其思路为将数据集划分为k份,特点在于,划分的k份中,每一份内各个类别数据的比例和原始数据集中各个类别的比例相同。
深度学习基础-训练集与测试集的划分