用于对象检测的训练/测试拆分百分比-当前的建议是什么?

时间:2019-06-13 12:44:28

标签: tensorflow machine-learning object-detection

使用Tensorflow Object Detection API,围绕标记示例的训练/测试拆分百分比的当前建议/最佳实践是什么?我已经看到很多有冲突的信息,范围从70/30到95/5。感谢您最近在现实世界中的经验。

2 个答案:

答案 0 :(得分:0)

传统建议是约70-75%的培训和其余测试数据。实际上,最近的文章确实提出了不同的分歧。这些天,我经常阅读95 / 2.5 / 2.5(用于超参数调整的训练/测试/开发)。

我想您的最佳分割取决于可用数据量和偏差/方差特征。训练数据表现不佳可能是由于拟合不足而需要更多的训练数据。如果您的模型拟合得很好甚至过度拟合,您应该可以将一些训练数据分配给测试数据。

如果您陷于中间,还可以将交叉验证视为一种计算量大但数据友好的选择。

答案 1 :(得分:0)

这取决于数据集的大小,正如 Andrew ng 所建议的: (train/dev 或 Val/test)

If the size of the dataset is 100 to 10K ~ 60/20/20
If the size of the dataset is 1M to INF ==> 98/1/1 or 99.5/0.25/0.25 

请注意,这些不是固定的,只是建议。

此处提到的测试集的目标是为您的工作提供公正的绩效衡量标准。在某些作品中,不要只设置两个集合是可以的(然后他们将其称为训练/测试,尽管这里的测试集实际上是有效的,因为开发集比率可以是 70/30)