I am writing to ask what is the difference between using a Fisher-Yates shuffling algorithm to shuffle a dataset compared to using np.random.permutation
just like in the following code snippet:
X.shape[1] # number of training examples
permutation = list(np.random.permutation(m))
shuffled_X = X[:, permutation]
shuffled_Y = Y[:, permutation].reshape((1,m))