Основная идея состоит в том, чтобы получить доступ к потерям во время обучения, а не только в конце обучения. Что делать, если вы тренируетесь в течение 200 эпох и 5 часов в неделю? Ответ выше является подходящим, при условии, что программист хочет проверить только в конце обучения, а не в конце каждой эпохи во время обучения.
Следующие строки решат эту проблему:
class LossHistoryCallback(tf.keras.callbacks.Callback):
def on_epoch_end(self, batch, logs=None):
#logs['loss'] or logs['val_loss'] (the latter available only if you use validation data when model.fit()
# Use logs['loss'] or logs['val_loss'] for pyqt5 purposes
print('Loss is: logs['loss'], validation loss is: logs['val_loss']')
model.fit(x_train, y_train,
batch_size=64,
epochs=10,
steps_per_epoch=5,
verbose=1,
callbacks=[LossHistoryCallback()])
Таким образом, вы можете получить выходные данные о вашей потере и validation_loss в конце каждой эпохи, а не только в конце вашей тренировки, так как вы хотите отслеживать прогресс тренировки в каждой эпохе, а не чтобы увидеть результат только в конце.