2020-05-29
阅读量:
2798
测试集和验证集有什么区别?
问:
测试集和验证集有什么区别和联系?

答:
1)联系:
当我们获取一组数据后,先将数据集分成整体的训练集和测试集,然后我们把训练集放入交叉验证中,从训练集中分割更小的训练集(k-1份)和验证集(1份),此时我们返回的交叉验证结果其实是验证集上的结果。我们使用验证集寻找最佳参数,确认一个我们认为泛化能力最佳的模型,然后我们将这个模型使用在测试集上,观察模型的表现。
2)区别:
两者的主要区别是:验证集用于进一步确定模型中的超参数(例如正则项系数、ANN中隐含层的节点个数等)而测试集只是用于评估模型的精确度(即泛化能力)。
举个例子:假设建立一个BP神经网络,对于隐含层的节点数目,我们并没有很好的方法去确定。此时,一般将节点数设定为某一具体的值,通过训练集训练出相应的参数后,再由交叉验证集去检测该模型的误差;然后再改变节点数,重复上述过程,直到交叉验证误差最小。此时的节点数可以认为是最优节点数,即该节点数(这个参数)是通过交叉验证集得到的。而测试集是在确定了所有参数之后,根据测试误差来评判这个学习模型的;也可以说是用来评估模型的泛化能力。所以,验证集主要主要是用于模型的调参。






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论