io_mnist.py 682 B

12345678910111213141516171819202122232425262728
  1. from mnist import MNIST
  2. import numpy as np
  3. def load_training_samples():
  4. """
  5. Return np_images, np_expected
  6. where
  7. np_impages is a np.array of 60 000 x 784
  8. np_expected is a np.array of 60 000 x 10
  9. """
  10. mndata = MNIST('../../resources/download')
  11. images = [[]] # Contains vectors of 784 pixels image
  12. labels = [] # Contains expected response for each image
  13. images, labels = mndata.load_training()
  14. np_images = np.array(images, dtype=np.float64)
  15. # Normalize data between 0.0 and 1.0
  16. np_images /= 255
  17. # Contstruct expected outputs
  18. np_expected = np.zeros((len(labels), 10))
  19. for k, label in enumerate(labels):
  20. np_expected[k][label] = 1.0
  21. return np_images, np_expected