tensorflow - keras model.fit_generator 的分割图像数据集

标签 tensorflow deep-learning keras

我有一个目录,数据集,其中包含图像的子文件夹(标签/类)。
以下是数据集中动物图像的子文件夹:

我想将数据集拆分为 model.fit_generotar() 的训练集和测试集。

我怎样才能做到这一点?

最佳答案

使用glob获取文件路径迭代器。

然后,您可以使用 scikit-learn 的训练-测试分割来获取训练和测试数据路径(使用 stratify 参数在 test/中获取相同的类分布)在整个数据集中进行训练)。

结果将是两个路径列表,您可以将其写入适当的测试/训练文件夹,然后可以应用生成器的 flow_from_directory 方法。

编辑:

第二种方法是不使用 flow_from_directory,而是加载训练/测试集(要么加载所有内容并使用 scikit-learn 方法,要么使用我所描述的方法之前),然后使用生成器的 flow 方法。

另请注意,您可能不想使用生成器来进行测试/验证数据,因为这会使比较准确性变得困难,因为您没有固定的有效/测试集。

关于tensorflow - keras model.fit_generator 的分割图像数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50563247/

相关文章:

python-3.x - 安装 theano "blas error"

python - 在 Keras 中加载模型权重时出现问题

python - 当切片本身是 tensorflow 中的张量时如何进行切片分配

python - Tensorflow ImageDataGenerator错误关闭:“图像”对象没有属性“fp”

python - 类型错误:在 EarlyStopping keras 中使用 restore_best_weights=True 时,类型 'NoneType' 的对象没有 len()

sql-server - 将keras模型保存到数据库

python - 是否可以在 keras 中训练多种图像尺寸?

tensorflow - 加载模型后 Keras 精度低

tensorflow - "Images"选项卡在 Tensorboard 上显示什么?

image-processing - Tensorflow:标签初始阶段在类别训练中没有图像