用pycharm运行猫狗识别的程序,在训练时遇到了KeyError: 'loss'这个问题。

问题遇到的现象和发生背景

用pycharm运行老师给的猫狗识别的程序,在训练时遇到了KeyError: 'loss'这个问题。

img

问题相关代码,请勿粘贴截图
train_image=pre.train_image
train_label_onehot=pre.train_label_onehot
train_history = VGG16.model.fit(x=train_image,
                                y=train_label_onehot, validation_split=par.validation_split,
                                epochs=par.epochs, batch_size=par.batch_size, callbacks=callbacks, verbose=par.verbose)
运行结果及报错内容
Traceback (most recent call last):
  File "C:/Users/dell/PycharmProjects/pythonProject/tf20_vgg16_train.py", line 58, in <module>
    epochs=par.epochs, batch_size=par.batch_size, callbacks=callbacks, verbose=par.verbose)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\engine\training.py", line 728, in fit
    use_multiprocessing=use_multiprocessing)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\engine\training_v2.py", line 372, in fit
    prefix='val_')
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\contextlib.py", line 99, in __exit__
    self.gen.throw(type, value, traceback)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\engine\training_v2.py", line 685, in on_epoch
    self.callbacks.on_epoch_end(epoch, epoch_logs)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\callbacks.py", line 298, in on_epoch_end
    callback.on_epoch_end(epoch, logs)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\callbacks.py", line 965, in on_epoch_end
    self._save_model(epoch=epoch, logs=logs)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\callbacks.py", line 984, in _save_model
    filepath = self._get_file_path(epoch, logs)
  File "C:\Users\dell\AppData\Local\conda\conda\envs\p36t20\lib\site-packages\tensorflow_core\python\keras\callbacks.py", line 1020, in _get_file_path
    return self.filepath.format(epoch=epoch + 1, **logs)
KeyError: 'loss'

Process finished with exit code 1


我的解答思路和尝试过的方法

我去网上百度过,说是把batch_size调小点。我把batch_size改为1还是出现同样的错误

我想要达到的结果

解决这个错误

应该是没区分大小写,应该是’Loss'