Mercurial > ift6266
annotate deep/stacked_dae/v_sylvain/train_error.py @ 388:0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
author | SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca> |
---|---|
date | Tue, 27 Apr 2010 08:42:43 -0400 |
parents | 442fc117e886 |
children | 66b05c6077c7 |
rev | line source |
---|---|
326
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
1 #!/usr/bin/python |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
2 # coding: utf-8 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
3 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
4 import ift6266 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
5 import pylearn |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
6 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
7 import numpy |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
8 import theano |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
9 import time |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
10 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
11 import pylearn.version |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
12 import theano.tensor as T |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
13 from theano.tensor.shared_randomstreams import RandomStreams |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
14 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
15 import copy |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
16 import sys |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
17 import os |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
18 import os.path |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
19 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
20 from jobman import DD |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
21 import jobman, jobman.sql |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
22 from pylearn.io import filetensor |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
23 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
24 from utils import produit_cartesien_jobs |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
25 from copy import copy |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
26 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
27 from sgd_optimization import SdaSgdOptimizer |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
28 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
29 #from ift6266.utils.scalar_series import * |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
30 from ift6266.utils.seriestables import * |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
31 import tables |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
32 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
33 from ift6266 import datasets |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
34 from config import * |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
35 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
36 ''' |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
37 Function called by jobman upon launching each job |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
38 Its path is the one given when inserting jobs: see EXPERIMENT_PATH |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
39 ''' |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
40 def jobman_entrypoint(state, channel): |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
41 # record mercurial versions of each package |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
42 pylearn.version.record_versions(state,[theano,ift6266,pylearn]) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
43 # TODO: remove this, bad for number of simultaneous requests on DB |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
44 channel.save() |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
45 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
46 # For test runs, we don't want to use the whole dataset so |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
47 # reduce it to fewer elements if asked to. |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
48 rtt = None |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
49 if state.has_key('reduce_train_to'): |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
50 rtt = state['reduce_train_to'] |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
51 elif REDUCE_TRAIN_TO: |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
52 rtt = REDUCE_TRAIN_TO |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
53 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
54 n_ins = 32*32 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
55 n_outs = 62 # 10 digits, 26*2 (lower, capitals) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
56 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
57 examples_per_epoch = NIST_ALL_TRAIN_SIZE |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
58 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
59 PATH = '' |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
60 maximum_exemples=int(500000) #Maximum number of exemples seen |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
61 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
62 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
63 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
64 print "Creating optimizer with state, ", state |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
65 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
66 optimizer = SdaSgdOptimizer(dataset=datasets.nist_all(), |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
67 hyperparameters=state, \ |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
68 n_ins=n_ins, n_outs=n_outs,\ |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
69 examples_per_epoch=examples_per_epoch, \ |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
70 max_minibatches=rtt) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
71 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
72 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
73 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
74 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
75 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
76 if os.path.exists(PATH+'params_finetune_NIST.txt'): |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
77 print ('\n finetune = NIST ') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
78 optimizer.reload_parameters(PATH+'params_finetune_NIST.txt') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
79 print "For" + str(maximum_exemples) + "over the NIST training set: " |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
80 optimizer.training_error(datasets.nist_all(maxsize=maximum_exemples)) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
81 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
82 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
83 if os.path.exists(PATH+'params_finetune_P07.txt'): |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
84 print ('\n finetune = P07 ') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
85 optimizer.reload_parameters(PATH+'params_finetune_P07.txt') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
86 print "For" + str(maximum_exemples) + "over the P07 training set: " |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
87 optimizer.training_error(datasets.nist_P07(maxsize=maximum_exemples)) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
88 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
89 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
90 if os.path.exists(PATH+'params_finetune_NIST_then_P07.txt'): |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
91 print ('\n finetune = NIST then P07') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
92 optimizer.reload_parameters(PATH+'params_finetune_NIST_then_P07.txt') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
93 print "For" + str(maximum_exemples) + "over the NIST training set: " |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
94 optimizer.training_error(datasets.nist_all(maxsize=maximum_exemples)) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
95 print "For" + str(maximum_exemples) + "over the P07 training set: " |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
96 optimizer.training_error(datasets.nist_P07(maxsize=maximum_exemples)) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
97 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
98 if os.path.exists(PATH+'params_finetune_P07_then_NIST.txt'): |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
99 print ('\n finetune = P07 then NIST') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
100 optimizer.reload_parameters(PATH+'params_finetune_P07_then_NIST.txt') |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
101 print "For" + str(maximum_exemples) + "over the P07 training set: " |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
102 optimizer.training_error(datasets.nist_P07(maxsize=maximum_exemples)) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
103 print "For" + str(maximum_exemples) + "over the NIST training set: " |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
104 optimizer.training_error(datasets.nist_all(maxsize=maximum_exemples)) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
105 |
385
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
106 if os.path.exists(PATH+'params_finetune_PNIST07.txt'): |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
107 print ('\n finetune = PNIST07') |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
108 optimizer.reload_parameters(PATH+'params_finetune_PNIST07.txt') |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
109 print "For" + str(maximum_exemples) + "over the NIST training set: " |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
110 optimizer.training_error(datasets.nist_all(maxsize=maximum_exemples)) |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
111 print "For" + str(maximum_exemples) + "over the P07 training set: " |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
112 optimizer.training_error(datasets.nist_P07(maxsize=maximum_exemples)) |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
113 print "For" + str(maximum_exemples) + "over the PNIST07 training set: " |
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
114 optimizer.training_error(datasets.PNIST07(maxsize=maximum_exemples)) |
388
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
115 |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
116 if os.path.exists(PATH+'params_finetune_PNIST07_then_NIST.txt'): |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
117 print ('\n finetune = PNIST07 then NIST') |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
118 optimizer.reload_parameters(PATH+'params_finetune_PNIST07_then_NIST.txt') |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
119 print "For" + str(maximum_exemples) + "over the NIST training set: " |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
120 optimizer.training_error(datasets.nist_all(maxsize=maximum_exemples)) |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
121 print "For" + str(maximum_exemples) + "over the P07 training set: " |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
122 optimizer.training_error(datasets.nist_P07(maxsize=maximum_exemples)) |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
123 print "For" + str(maximum_exemples) + "over the PNIST07 training set: " |
0d97fead004f
Changement pour prendre en compte l'option finetune amelioree pour PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
385
diff
changeset
|
124 optimizer.training_error(datasets.PNIST07(maxsize=maximum_exemples)) |
385
442fc117e886
Ajout de la faculte de prendre PNIST07
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
326
diff
changeset
|
125 |
326
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
126 channel.save() |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
127 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
128 return channel.COMPLETE |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
129 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
130 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
131 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
132 if __name__ == '__main__': |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
133 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
134 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
135 chanmock = DD({'COMPLETE':0,'save':(lambda:None)}) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
136 jobman_entrypoint(DD(DEFAULT_HP_NIST), chanmock) |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
137 |
b762ac18a2d7
Calcule l'erreur d'entrainement
SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca>
parents:
diff
changeset
|
138 |