в общем случае, неизвестно, в каком порядке поступят данные, могут и коррелированное группироваться, что замедлит сходимость, поэтому при разбиении на батчи лучше перемешивать. достаточно один раз на глоальном уровне, как это делается например в pytorch DataLoader с флагом shuffle=true. после того, как батч получен, его мешать не надо, т.к. там все равно выполняются обычные матричные операции, индифферентные к порядку сэмплов