【发布时间】:2017-02-15 15:34:19
【问题描述】:
我有 7 类图像需要分类。每个类都有不同数量的样本。
- 75 张图片
- 70 张图片
- 98 张图片
- 182 张图片
- 146 张图片
- 197 张图片
- 150 张图片
我最终删除了所有课程中的所有图像,减少到 70 张图像(50 张训练和 20 张验证)。使用 Keras 和生成器以及 flow_from_directory 方法,我能够对所有这些进行分类,但很明显我不会得到很好的准确性。我也有计划在以后增加数据。
我的问题是,我可以使用 flow_from_directory 方法为每个班级使用不同数量的训练数据吗?这种方法有什么潜在的缺点吗?
例如:
- 55 次培训 - 20 次验证
- 50 次培训 - 20 次验证
- 78 次培训 - 20 次验证
- ......
谢谢
【问题讨论】:
-
我相信不同数量的样本会起作用,但你的模型会偏向于更频繁的类。按照你的比例,这应该不是问题。
-
@AlexandrePassos 我听说有偏分类出现了,当你的批次大小与类的数量和它们在批次中出现的概率相比变得很小时。例如。如果您在示例中拥有 7 个类,但一批中只有 10 个图像,那么您很有可能无法在一批中表示某些类。我听说你可以通过让你的批次足够大来容纳所有类的图像来避免这个问题,例如在上面的示例中,batch_size=150 图像。你会说我报告的声明是有效的吗?
标签: tensorflow keras keras-layer