0
  1. 我正在使用 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'"""

    我现在该怎么办?

4

0 回答 0