annotate scripts/nist_read.py @ 321:403b9e6ecfaa

finetune NIST+P07 change pour P07+NIST, les experiences n'ont pas ete concluentes
author SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
date Fri, 02 Apr 2010 14:54:05 -0400
parents 7fb10ae0efec
children
rev   line source
3
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
1 #!/usr/bin/env python
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
2
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
3 # L'execution de "ipython -pylab nist_read.py" est recommande
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
4
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
5 # Pour lire les fichiers NIST, qui sont en format filetensor, il vous faut la
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
6 # librarie pylearn, disponible en executant:
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
7 # hg clone http://hg.assembla.com/pylearn Pylearn
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
8 # et en mettant le repertoire Pylearn dans votre PYTHONPATH
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
9
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
10 from pylearn.io import filetensor as ft
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
11 import pylab, numpy
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
12
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
13 # repertoire qui contient les donnees NIST
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
14 # le repertoire suivant va fonctionner si vous etes connecte sur un ordinateur
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
15 # du reseau DIRO
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
16 datapath = '/data/lisa/data/nist/by_class/'
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
17
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
18 # le fichier .ft contient chiffres NIST dans un format efficace. Les chiffres
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
19 # sont stockes dans une matrice de NxD, ou N est le nombre d'images, est D est
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
20 # le nombre de pixels par image (32x32 = 1024). Chaque pixel de l'image est une
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
21 # valeur entre 0 et 255, correspondant a un niveau de gris. Les valeurs sont
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
22 # stockees comme des uint8, donc des bytes.
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
23 f = open(datapath+'digits/digits_train_data.ft')
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
24
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
25 # Verifier que vous avez assez de memoire pour loader les donnees au complet
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
26 # dans le memoire. Sinon, utilisez ft.arraylike, une classe construite
4
7fb10ae0efec unfinished sentence
Dumitru Erhan <dumitru.erhan@gmail.com>
parents: 3
diff changeset
27 # specialement pour des fichiers qu'on ne souhaite pas loader dans RAM.
3
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
28 d = ft.read(f)
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
29
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
30 # Affichage d'une image
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
31 pylab.imshow(d[0].reshape((32,32)))
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
32 pylab.show()
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
33
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
34 # NB: N'oubliez pas de diviser les valeurs des pixels par 255. si jamais vous
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
35 # utilisez les donnees commes entrees dans un reseaux de neurones et que vous
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
36 # voulez des entres entre 0 et 1.
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
37
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
38 # digits_train_data.ft contient les images, digits_train_labels.ft contient les
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
39 # etiquettes
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
40 f = open(datapath+'digits/digits_train_labels.ft')
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
41 labels = ft.read(f)
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
42 print 'etiquette: ', labels[0]
5b0772bf4576 exemple d'un script qui charges les donnees NIST en memoire et affiche la premiere chiffre
Dumitru Erhan <dumitru.erhan@gmail.com>
parents:
diff changeset
43