如何手动shuffle数据集?

使用openmv训练神经网络,代码里的 model.fit 函数,虽然默认shuffle=TRUE,但由于该函数先分离出验证集,再进行打乱,实际上并没有起到shuffle的作用,请问如何在拆分数据集之前手动shuffle(带标签)?

model.fit(train_dataset, validation_data=validation_dataset, epochs=EPOCHS, verbose=2, callbacks=callbacks,shuffle=True)