I transformed the MNIST dataset as follows:(X (70000 x 784) is the training matrix)
np.random.seed(42) def transform_X(): for i in range(len(X[:,1])): np.random.shuffle(X[i,:])
I had thought that shuffling the pixels in an image would make the digits unrecognizable by humans,but the machine learning algorithms would still be able to learn from the images with shuffled pixels correctly.
I cannot understand the mathematical reason behind not learning. Do you think this should work and I should recheck my code for any mistakes? I trained on SVC and SGDClassifier of sklearn.Results from both are just randomness.