I'm currently working on a multi-class classification problem which is highly imbalanced. I want to save my model weights for best epoch but I'm confused on which metric I should choose?
Here's my training progress bar :
I am using ModelCheckpoint
callback in tf.keras
and monitoring val_loss
as a metric to save best model weights.
As you can see in the image,
- At 8th epoch I got an
val_acc = 0.9845
butval_loss = 0.629
and precision and recall is also high here. - But at 3rd epoch I got
val_acc = 0.9840
butval_loss = 0.590
I understand the difference is not huge but in such cases what's the ideal metric to believe on imbalanced dataset?