我想训练一个MobileNet来识别自定义图像类。 但我不知道,如何告诉MobileNet应该将多少提供的数据用作训练数据。
使用重新训练脚本时:
我可以设置验证和测试百分比。 最大的问题是,这些百分比是如何计算的?
该程序是否使用100%并将其分为75%的培训,10%的验证,15%的测试? 或者MobileNet是否预先将70%的培训数据和30%的测试数据分开,然后将70%的10%作为验证数据?
我不明白这在MobileNet中如何运作? 我可以将训练数据的百分比调整为85%吗?
由于
答案 0 :(得分:1)
根据Tensorflow's documentation on MobileNet, - testing_percentage 和 - validation_percentage 参数控制以下内容:
通常的分割方法是将80%的图像放入主训练集中,保留10%以备在训练期间经常作为验证运行,然后将最终10%的图像作为测试集用于预测分类器的真实性能。可以使用 - testing_percentage 和 - validation_percentage 标记来控制这些比率。
所以我相信你当前的参数(--testing_percentage = 15, - validation_percentage = 10),你将有75%的数据用于主训练集,15%用于测试,10%用于验证正如你的建议。
如果您想将培训数据的百分比从75%提高到85%,您可以通过设置来实现:
- testing_percentage = 10和--validation_percentage = 5
或
- testing_percentage = 5和--validation_percentage = 10
或任何其他组合,留下85%的数据用于培训。
即:培训%= 100% - 测试% - 验证%
但是,您需要注意不要将测试/验证百分比设置得太低,否则您的准确度分数可能没有足够的测试数据来验证您的预测准确性分数本身是否准确。
希望这有帮助。