【问题标题】:Keras : ValueError: `y` argument is not supported when using `keras.utils.Sequence` as inputKeras:ValueError:使用`keras.utils.Sequence`作为输入时不支持`y`参数
【发布时间】:2020-10-27 14:56:49
【问题描述】:

我想做一个简单的分类任务,但是当我尝试运行它时,我收到了这个错误:

`ValueError: `y` argument is not supported when using `keras.utils.Sequence` as input.`

【问题讨论】:

  • 哪一行给出了错误?
  • 是不是说“找到2个类别的100张图片”之类的?
  • 那是你的问题。 Keras 没有找到图像。第一个问题虽然解决了。只需确保 Keras 找到了 images 目录即可。
  • 这不是你原来的问题。这是另一个问题,因为您的原始问题已解决。
  • 你不应该。您应该将此标记为已解决,并研究为什么 keras 没有找到图像。发布答案后不要更改问题

标签: python tensorflow keras lstm


【解决方案1】:

使用关键字validation_data。如果您在没有关键字的情况下传递验证数据集,Keras 认为 validation_dataset 是您的标签。

model.fit(train_dataset, validation_data=validation_dataset, batch_size=32, epochs=1)

【讨论】:

  • 拯救了我的一天 :)
【解决方案2】:

假设您想预测它是狗还是猫图片,您有两个标签 Dog 和 Cat。现在,当谈到 CNN 数据集时,大多数人构建它的方式(这是预期的 image_generator.flow_from_directory)看起来像这样:

火车/
.........猫/
.............Image1.jpg
.............Image2.jpg
.........狗/
.............Image3.jpg
.............Image4.jpg
您的标签目录也是如此。
顺便说一句,你的目录标签应该重命名验证(这不是很重要,但更有意义)

【讨论】:

  • 我试图解释得更好,如果不清楚请告诉我
  • 我不知道你的标签是什么,而你正在努力做到这一点,我也没有时间训练你的模型。很抱歉,您需要在更改数据集结构后提供更多信息来说明问题所在。