> Just to add my 2 cents, I observed that creating minibatches using from
> sklearn.utils import gen_even_slices with batch_slices = list(gen_even_slices
> (n_batches * self.batch_size, n_batches)), is much faster than X[inds
> [minibatch::n_batches]],

Indeed, the memory access will be much more regular. This is a good
comment.