我正在使用 keras 功能 api 制作多输入 cnn 模型,但它给出了错误......数据:
trainset1 = trainset.flow_from_directory( '/content/', target_size=(404,410), batch_size=32, #seed=50, class_mode='categorical') print('In Training Set..Entropy....') trainset12 = trainset.flow_from_directory( '/content/', target_size=(404,410), batch_size=32, #seed=50, class_mode='categorical')
模型:输入1 =输入(形状=(404,410,3))输入2 =输入(形状=(404,410,3))
# x = layers.Dense(128, activation= 'relu')
x = layers.Conv2D(25, (5, 5), activation='relu', padding='same')(input1) x = layers.MaxPool2D(pool_size=(2, 2), padding='same')( X)
x1 = layers.Conv2D(25, (5, 5), activation='relu', padding='same')(input2) x1 = layers.MaxPool2D(pool_size=(2, 2), padding='same')( x1) flat_layer1 = Flatten()(x) flat_layer2 = Flatten()(x1)
打印(flat_layer1.shape)
print(flat_layer2.shape) concat_layer= 连接()([flat_layer1,flat_layer2])
concat_layer= 连接([flat_layer1,flat_layer2])
x = layers.Dense(16, activation= 'relu')(flat_layer1) #(concat_layer) 输出 = layers.Dense(2, activation='softmax')(concat_layer) 模型 =
keras.Model(输入=[输入1,输入2],输出=输出)
model.compile(loss = keras.losses.BinaryCrossentropy(), optimizer=keras.optimizers.Adam(learning_rate=0.001), metrics=["accuracy"])
model.fit([trainset1,trainset12] ,batch_size=32,epochs=5,verbose=2)
给出错误:
-------------------------------------------------- ------------------------- ValueError Traceback (last last call last) in () ----> 1 model.fit([trainset1,trainset12 ] ,batch_size=32,epochs=5,verbose=2)
1 帧 /usr/local/lib/python3.7/dist-packages/keras/engine/data_adapter.py 在 select_data_adapter(x, y) 989“找不到可以处理“990”的数据适配器输入:{},{ }".format( --> 991 _type_name(x), _type_name(y))) 992 elif len(adapter_cls) > 1: 993 raise RuntimeError(
ValueError:未能找到可以处理输入的数据适配器:(<class 'list'> 包含类型 {"<class 'keras.preprocessing.image.DirectoryIterator'>"}),<class 'NoneType'
"""
我现在该怎么办?
问问题
27 次