Search code examples
pythontensorflowkerasneural-network

What is the difference between CSVLogger and model.evaluate()?


I have been using Keras/TF's CSVLogger in order to save the training and validation accuracies. Then I was plotting those data to check the trajectory of training and validation accuracy or loss.

Yesterday, I read this link.

Here, they used model.evaluate() to plot the accuracy metric.

What is the difference between these two approaches?


Solution

  • Here are the big key differences between the two:

    model.evaluate() gives a different loss on training data from the one in the training process, while CSVLogger tracks metrics on the validation set after every epoch in the process.