您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
在DL中为什么将数据集分为训练集,开发集,测试集,可以提高迭代效率吗?
能力,数据,测试在DL中为什么将数据集分为训练集,开发集,测试集,可以提高迭代效率吗?
发布时间:2016-12-08加入收藏来源:互联网点击:
在DL中为什么将数据集分为训练集,开发集,测试集,可以提高迭代效率吗?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
首先,不是为了减少运算量,绝大多数情况下,对于深度学习而言困扰都在于优秀的数据太少,而不会嫌多,数据比计算力更为值钱。然后,这样做主要是为了提高和验证网络的泛化能力。DL有非常强大的拟合能力,只要见过的数据通常都能记住,因此训练阶段一般准确率可以接近100%,但是你还需要保证他能够处理没有见过的样本,例如识别花朵的神经网络,你不可能把世界上的所有花都找来,因此需要用验证集(调整Hyperparamerter)和测试集(最终验证)来确保它具有这个能力。我举个简单的例子,这就是课后作业、期末考试、高考这三者之间的关系。
课后作业(训练集):让你学会知识(网络收敛)
期末考试(验证集):让你检验自己是否真的学会了,发现了问题之后,你会调整学习方法(调整Hyperparameter)
高考(测试集):这是最终的测试,在你没见过的题上究竟能做到什么程度(泛化能力),且不再给你调整的机会。
题外话:要确保三个数据集独立同分布,这样才能确保泛化能力
上一篇:床头皮革掉皮了怎么办?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |