Keras提前停止设置

Keras提前停止设置,keras,early-stopping,Keras,Early Stopping,我已经构建了一个通用的Unet,通过使用Keras来训练我自己的数据集。我已经设置了如下的EarlyStoping选项。但是,在训练过程中,它会提示精度值不会发生变化,但在下一行中,它会发生明显的变化。以前有没有人遇到过这个问题,或者知道如何解决这个问题 您得到的反馈信息是,对于刚刚完成的历元,验证精度没有提高。这可能是因为您在回调设置中设置了verbose=2,目的是提醒您,如果您看到连续10个历元的消息,您的培训将结束。您收到的反馈消息告诉您,对于刚刚完成的历元,验证精度没有提高。发生这种

我已经构建了一个通用的Unet,通过使用Keras来训练我自己的数据集。我已经设置了如下的EarlyStoping选项。但是,在训练过程中,它会提示精度值不会发生变化,但在下一行中,它会发生明显的变化。以前有没有人遇到过这个问题,或者知道如何解决这个问题


您得到的反馈信息是,对于刚刚完成的历元,验证精度没有提高。这可能是因为您在回调设置中设置了
verbose=2
,目的是提醒您,如果您看到连续10个历元的消息,您的培训将结束。

您收到的反馈消息告诉您,对于刚刚完成的历元,验证精度没有提高。发生这种情况可能是因为您在回调设置中设置了
verbose=2
,这是为了提醒您,如果您看到连续10个时代的消息,您的培训将结束。

很抱歉,您的问题很难理解,因为您没有输入显示输出的链接图像的描述。相反,它被标记为“在此处输入图像描述”。很抱歉,您的问题很难理解,因为您没有输入显示输出的链接图像的描述。相反,它被标记为“在此处输入图像描述”
train_iterator = create_one_shot_iterator(train_files, batch_size=train_batch_size, num_epoch=epochs)
    train_images, train_masks = train_iterator.get_next()
    train_images, train_masks = augment_dataset(train_images, train_masks,
                                                augment=True,
                                                resize=True,
                                                scale=1 / 255.,
                                                hue_delta=0.1,
                                                horizontal_flip=True,
                                                width_shift_range=0.1,
                                                height_shift_range=0.1,
                                                rotate=15)

    val_iterator = create_initializable_iterator(val_files, batch_size=val_batch_size)
    val_images, val_masks = val_iterator.get_next()
    val_images, val_masks = augment_dataset(val_images, val_masks,
                                            augment=True,
                                            resize=True,
                                            scale=1 / 255.,
                                            )

model_input = tf.keras.layers.Input(tensor=train_images)

model_output = Unet.u_net_256(model_input)

# Model definition
model = models.Model(inputs=model_input, outputs=model_output)

precision = tf.keras.metrics.Precision()
model.compile(optimizer='adam',
              loss=bce_dice_loss,
              metrics=[precision],
              target_tensors=[train_masks])

model.summary()

cp = [tf.keras.callbacks.ModelCheckpoint(filepath=os.path.join(hdf5_dir, class_name) + '.hdf5',
                                         monitor='val_precision',
                                         save_best_only=True,
                                         verbose=1),
      tf.keras.callbacks.TensorBoard(log_dir=log_dir,
                                     write_graph=True,
                                     wr`enter code here`ite_images=True),
      tf.keras.callbacks.EarlyStopping(monitor='val_precision', patience=10, verbose=2, mode='max')]

History = model.fit(train_images, train_masks,
                    steps_per_epoch=int(np.ceil(num_train_samples / float(train_batch_size))),
                    epochs=epochs,
                    validation_data=(val_images, val_masks),
                    validation_steps=int(np.ceil(num_val_samples / float(val_batch_size))),
                    callbacks=cp,
                    )