您好,我遇到了这个问题,指出 keras 会跳过保存检查点,因为缺少val_acc。
RuntimeWarning: Can save best model only with val_acc available, skipping. skipping. % (self.monitor), RuntimeWarning)
我将监视器设置为 val_acc 并且validation_data设置为 test_set(您将在代码中看到(,但仍然没有保存检查点。
法典:
model.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics = ['accuracy'])
# Part 2 - Fitting the CNN to the images
from keras.preprocessing.image import ImageDataGenerator
train_datagen = ImageDataGenerator(rescale = 1./255,
shear_range = 0.2,
zoom_range = 0.3,
horizontal_flip = True)
test_datagen = ImageDataGenerator(rescale = 1./255)
training_set = train_datagen.flow_from_directory('TRAIN_SET',
target_size = (input_shape, input_shape),
batch_size = batch_size,
class_mode = 'categorical')
test_set = test_datagen.flow_from_directory('TEST_SET',
target_size = (input_shape, input_shape),
batch_size = batch_size,
class_mode = 'categorical')
checkpoint = ModelCheckpoint(WEIGHTS_PATH, monitor='val_acc', verbose=1, save_best_only=True, mode='max')
model.fit_generator(training_set,
steps_per_epoch=len (training_set.filenames)//batch_size,
epochs = 60,
validation_data = test_set,
validation_steps = len (training_set.filenames)//batch_size,
callbacks = [checkpoint])
model.save('model.h5')# creates a HDF5 file 'model.h5'
谁能告诉我我哪里出错了。提前感谢!
感谢 techytushar 爵士将val_acc更改为val_accuracy的提示。当我更新蟒蛇时,这似乎是一个问题。 来源: github.com/tensorflow/tensorflow/issues/33163