How does shuffling work while training in tensorflow object detection API
The framework does not actually shuffle your data, it's memory intensive and time consuming.
Instead, there's an array with random indices that are used to access your data. Usually, indices cover the whole dataset, so, you're right, all data is seen by your network, however in random order.
I have been playing around the tensorflow object detection API for instance segmentation. In the pipeline configuration file, as a part of the train_config we specify the num_steps value. So it is the total number of steps that network is trained on. 
So let us say, I have 10,000 images in training dataset and batch_size is set to 1. In this case, does the data gets shuffled after every 10000 steps? Does it make sure automatically, that entire dataset is seen by the network before shuffling occurs?