MrGiovanni / UNetPlusPlus

[IEEE TMI] Official Implementation for UNet++
Other
2.26k stars 538 forks source link

fit_generator #13

Closed shihlun1208 closed 5 years ago

shihlun1208 commented 5 years ago

I would like to try deep supervision mode, however it pops up an error, expect to have 4 array but got 1 with.... How to use fit_generator to feed into the model? I found something maybe would help but not sure how to use it, could somebody help? https://stackoverflow.com/questions/47585698/keras-using-a-generator-for-multi-output-model-with-model-fit-generator https://stackoverflow.com/questions/38972380/keras-how-to-use-fit-generator-with-multiple-outputs-of-different-type/41872896 https://stackoverflow.com/questions/49236260/keras-multiple-inputs-and-multiple-ouputs-for-fit-generator-using-flow-from-dir

image_datagen = ImageDataGenerator(aug_dict) mask_datagen = ImageDataGenerator(aug_dict)

image_generator = image_datagen.flow_from_directory(
    train_path,
    classes = [image_folder],
    class_mode = None,
    color_mode = image_color_mode,
    target_size = target_size,
    batch_size = batch_size,
    save_to_dir = save_to_dir,     
    save_prefix  = image_save_prefix,  
    seed = seed)

mask_generator = mask_datagen.flow_from_directory(
    train_path,
    classes = [mask_folder],
    class_mode = None,
    color_mode = mask_color_mode,
    target_size = target_size,
    batch_size = batch_size,
    save_to_dir = save_to_dir,
    save_prefix  = mask_save_prefix,
    seed = seed)
train_generator = zip(image_generator, mask_generator)

history = model.fit_generator(generator = traindata,
                                      #samples_per_epoch= 720,
                                      steps_per_epoch = 540,
                                      epochs = 100,
                                      validation_data = valdata,
                                      validation_steps = 200,
                                      callbacks=[es, model_checkpoint, reduce_lr_loss])

I have my data augmentation already, what to do next