Mini batch sampling with graphlab.neuralnet_classifier

User 1478 | 3/13/2015, 4:34:34 PM

Should the input dataset to graphlab.neuralnetclassifier be randomized before calling graphlab.neuralnetclassifier.create() to ensure that Mini Batches contain a proper distribution of classes?

Or, is random sampling automatically employed in graphlab.neuralnet_classifier.create() when sampling Mini Batches?


User 18 | 3/13/2015, 10:18:50 PM

<a href="">graphlab.imageanalysis.loadimages</a> loads the images in random order. The neural net classifier doesn't do any additional random shuffling. It does send data in mini batches, but with a fixed batch ordering. So it's not really random.

So load_images() ensures that the images aren't ordered by classes. The training procedure doesn't do additional randomization.