jianshu.com,效率集

在DL中为什么将数据集分为训练集,开发集,测试集,可以提高迭代效率吗?
【jianshu.com,效率集】

jianshu.com,效率集


首先,不是为了减少运算量,绝大多数情况下,对于深度学习而言困扰都在于优秀的数据太少,而不会嫌多,数据比计算力更为值钱 。然后,这样做主要是为了提高和验证网络的泛化能力 。DL有非常强大的拟合能力,只要见过的数据通常都能记住,因此训练阶段一般准确率可以接近100%,但是你还需要保证他能够处理没有见过的样本,例如识别花朵的神经网络,你不可能把世界上的所有花都找来,因此需要用验证集(调整Hyperparamerter)和测试集(最终验证)来确保它具有这个能力 。
我举个简单的例子,这就是课后作业、期末考试、高考这三者之间的关系 。课后作业(训练集):让你学会知识(网络收敛)期末考试(验证集):让你检验自己是否真的学会了,发现了问题之后,你会调整学习方法(调整Hyperparameter)高考(测试集):这是最终的测试,在你没见过的题上究竟能做到什么程度(泛化能力),且不再给你调整的机会 。

    推荐阅读