if whole data makes only one batch does it makes sense to shuffle data? if whole data makes only one batch does it makes sense to shuffle data? from my point of view it's not necessary because you will not have any bias per batch
 A: When training your model with mini batch gradient descent alike algorithm, you want the batches to differ from each other, but not too much. When the batches differ, learning from some slightly different sample has the regularizing effect, since the model needs to be flexible enough to adapt to those different batches. When the batches are too different, it may have problems with converging, since from batch to batch it could need to make drastic changes in the parameters. To achieve good results, we shuffle the data before splitting into batches, so that splitting the shuffled data leads to getting random samples from the whole dataset.
When you learn on whole data, there is not point in shuffling. At each step, you would apply the same operations to whole dataset, so it wouldn't matter. You would be multiplying all the samples by same weights, adding same biases, transforming using same activation function etc., so the order of the samples would not matter. In the end you would use a cost function that usually is a sum of losses over all samples, and it doesn't matter in what order you take the sum. 
