【问题标题】:keras datagen.flow_from_directory class mode categorical get labels wrongkeras datagen.flow_from_directory 类模式分类获取标签错误
【发布时间】:2019-11-19 11:17:06
【问题描述】:

我有 24 个班级的图像训练数据集,每个班级有 2800 张图像 这些类在一个名为 training 的目录中的目录中相互分离

我使用以下代码使用 keras 加载数据:

datagen = ImageDataGenerator(rescale= 1./255
                             ,fill_mode='nearest')

train_data = datagen.flow_from_directory('training-images',class_mode='categorical',
                                         target_size=(32,32))

它加载图像但图像得到错误的标签

目录结构如下:

training-images/
  0/
     image.jpg
     .
     .
  1/
     image.jpg
     .
     .
  .
  .
  23/
     image.jpg
     .
     .

【问题讨论】:

  • “错误标签”是什么意思?你能举一个图片的具体例子,你期望的标签,你得到的标签,以及你是如何获得这个标签的吗?
  • 对于名为 10 的文件夹,它给出标签 2,对于名为 11 的标签,它给出标签 3,依此类推

标签: python machine-learning keras


【解决方案1】:

flow_from_directory 按字母顺序排列类,而不是按数字排列。这意味着您的课程将按 0、1、11、12、13、14、15、16、17、18、19、2、20、21、22、23、24、3、4、5、6、 7, 8, 9. 如果我是你,我会给文件夹起描述性的名称(例如,对于 CIFAR10,它们将是“飞机”、“鸟”等),然后使用 @ 将生成的 ID 映射到类名987654321@.

【讨论】:

    猜你喜欢
    • 2018-07-02
    • 1970-01-01
    • 2016-12-22
    • 2019-05-21
    • 2018-08-04
    • 2019-02-26
    • 1970-01-01
    • 2021-11-30
    • 2019-01-06
    相关资源
    最近更新 更多