I have implemented ReduceLROnPlateau 1 in my code and I have a question about verbose.
When I set verbose=True and patience=1 it gives me the following result:
...
...
Epoch: 9/100
validation_loss: 0.9176
Epoch: 10/100
validation_loss: 0.8771
Epoch     9: reducing learning rate of group 0 to 2.5000e-04.
validation_loss: 0.8286
Epoch: 12/100
validation_loss: 0.8203
Epoch: 13/100
validation_loss: 0.8343
Epoch: 14/100
validation_loss: 0.8316
Epoch    13: reducing learning rate of group 0 to 2.5000e-05.
...
...

What I find strange is that I would expect it to print:
Epoch     10: reducing learning rate of group 0 to 2.5000e-04.

Instead of:
Epoch     9: reducing learning rate of group 0 to 2.5000e-04.

As I see it the learning rate changes at epoch 10 and not at epoch 9? Again at the other verbose message I would expect it to be epoch 14 instead of epoch 13.
So what am I missing here?