【发布时间】:2021-02-12 10:47:24
【问题描述】:
我正在从事一个项目,其中我有 3 个特征 x1、x2、x3,它们是文件夹中存在的图像,用于训练神经网络。我正在使用 keras 库 ImageDataGenerator.flow_from_directory(),它提供以下输出:
Found 78200 images belonging to 46 classes.
Found 78200 images belonging to 46 classes.
Found 78200 images belonging to 46 classes.
Found 13800 images belonging to 46 classes.
最后一个属于测试数据。 例如,我的数据的文件结构如下所示:
├── trainingf1
│ ├── Class1
│ │ ├── IMG_1.jpg
│ │ ├── etc.jpg
│ ├── Class2
│ │ ├── IMG_1.jpg
│ │ ├── etc.jpg
├── trainingf2
│ ├── Class1
│ │ ├── IMG_1.jpg
│ │ ├── etc.jpg
│ ├── Class2
│ │ ├── IMG_1.jpg
│ │ ├── etc.jpg
├── trainingf3
│ ├── Class1
│ │ ├── IMG_1.jpg
│ │ ├── etc.jpg
│ ├── Class2
│ │ ├── IMG_1.jpg
│ │ ├── etc.jpg
然后将这 3 个特征传递给 CNN,然后将最终输出连接起来并传递给神经网络。
现在我正在构建模型,我知道在传递目录迭代器时会出错,但我找不到相同的解决方案。
为了构建模型,我正在使用:
model.fit(x=[trainGeneratorf1, trainGeneratorf2, trainGeneratorf3],
epochs = 25,
steps_per_epoch = 2444,
validation_data = validation_generator,
validation_steps = 432,
batch_size=8)
错误是:Failed to find data adapter that can handle input: (<class 'list'> containing values of types {"<class 'tensorflow.python.keras.preprocessing.image.DirectoryIterator'>"}), <class 'NoneType'>
任何人都有任何解决方案,以便我可以使用目录迭代器并将其作为多个功能传递。
仅供参考,我使用的是功能 API,而不是顺序 API。
【问题讨论】:
标签: python tensorflow keras neural-network conv-neural-network