Suppose i have 1000 dog images and my batch size is 10.
It will take 1000/10=100 steps to complete 1 epoch.
So doesn't it mean steps_per_epoch=100 ?
Then why do we have to specify it separately in keras while applying .fit().
As clearly mentioned in the documentation:
Steps_per_epoch is total number of steps (batches of samples) before declaring one epoch finished and starting the next epoch. The default None is equal to the number of samples in your dataset divided by the batch size, or 1 if that cannot be determined. It is a optional parameter and is useful when passing an infinitely repeating dataset.