- 训练集(training set)
- 验证集(validation set)
- 测试集(test set)
一般数据集是trainset和testset,而trainset里会拿出一部分样本做validate set
1.训练集(训练模型)
用于模型拟合的数据样本。
确定模型后,用于训练参数,注意训练的是普通参数(每多加入一个数据对模型进行训练,模型中就会受到影响的参数,通过多次迭代不断更新,是一个梯度下降的过程)而不是超参数(超参数是指训练开始之前设置的参数,超参数的选择与训练过程实际上是独立的,训练过程不会影响超参数。但是训练结束后可以根据训练结果考虑超参数是否可优化,可优化的话就调整超参数的值开始下一次训练)
2.验证集(交叉验证集CV)
是模型训练过程中单独留出的样本集,它可以用于调整模型的超参数和用于对模型的能力进行初步评估。
通常用来在模型迭代训练时,用以验证当前模型泛化能力(准确率,召回率等),以决定是否停止继续训练。
在神经网络中, 我们用验证数据集去寻找最优的网络深度(number of hidden layers),或者决定反向传播算法的停止点或者在神经网络中选择隐藏层神经元的数量;
在普通的机器学习中常用的交叉验证(Cross Validation) 就是把训练数据集本身再细分成不同的验证数据集去训练模型。
3.测试集(评估模型)
用来评估模最终模型的泛化能力。但不能作为调参、选择特征等算法相关的选择的依据。