I looked at the MNIST example and noticed that when the array of the image is flattened into a 728 array, would it matter if that array was randomized? I mean does the NN take into account the adjacency of the data, or is there one input node put input number (therefore 728 nodes).
What I am asking is, will I get the same network if I train with the images flattened as in the example, as I would if I randomised the 728 data array ?
Depends on which mnist example you're looking at. convolutional.py runs a 5x5 spatial convolutional window across the image, which does take into account spatial correlation.
The MNIST for beginners example that uses a simple weight matrix:
W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))
does not. You could permute the order of entries in the points and not change anything, as long as you permute all inputs the same way.
(There's a reason that convolutional approaches are winning for most image recognition applications -- spatial locality is useful. :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With