I am fairly new to deep learning algorithms and a question comes to mind regarding how to properly shuffle my training data. Looking at the tutorial data_loading_tutorial.html#dataset-class which describes how to create our own dataset, the
__get_item__() method seems to be the key point of this class. My question is this:
Should the call to
__get_item__() for a given
idx must return the same tensor every time? or in other words: should the batch 0 be the same across epochs? Is the
shuffle=True parameter in the dataloader sufficient to ensure a complete random distribution of the data? Does it depend on the optimizer or something else (I use Adam’s optimizer in a classification context)? In fact, the tutorial doesn’t seem to rearrange the contents of the batch at each time.
I am sorry if this is not the right place to post my question, please show me where it would be most appropriate to post my question.