this post was submitted on 31 Oct 2023
1 points (100.0% liked)

Machine Learning

1 readers
1 users here now

Community Rules:

founded 11 months ago
MODERATORS
 

Hello,

I'm curious, when evaluating a neural network for both the training and validation data, do you calculate the accuracy across the entire dataset, or at every batch and then find the average at every batch?

you are viewing a single comment's thread
view the rest of the comments
[–] ObjectiveNewt333@alien.top 1 points 10 months ago

You can calculate your metrics (accuracy, loss, etc.) at each batch to track your training, but typically, the model's performance at each epoch (one iteration through the training set) is what people go by. Then, after each epoch, you should also iterate through the entirety of your validation set so that you can track how well the model is generalizing. Lastly, you may have a separate test set to calculate your metrics for after training.

Calculating the test set last is considered good practice in ML, but often just the validation is available, and test sets are often privately withheld for competitions and the sort depending on the type of data. I suppose its inevitable that people would inadvertently validate their techniques with the test set.

Also, be careful not just to average your batch metrics for the epoch metrics. Sometimes, the last epoch has a different size than the rest, leading to an error though it may be small.