ML
学習データをシャッフルする
データをシャッフルする目的
分散を減らす(学習の収束を早める)
モデルの汎化性能を維持する。
overfitting を減らす
全てのトレーニング iteration で変化がない場合は、様々な最小値に対して固定になるため、変化が小さい。
これを解決するために、mini batch + shuffle が有効である。
参考
https://datascience.stackexchange.com/questions/24511/why-should-the-data-be-shuffled-for-machine-learning-tasks
https://pytorch.org/docs/stable/data.html#torch.utils.data.DataLoader