annotate deep/crbm/mnist_config.py.example @ 409:f0c2e3cfb1f1

added some images to illustrate the transformation
author Xavier Glorot <glorotxa@iro.umontreal.ca>
date Wed, 28 Apr 2010 16:39:10 -0400
parents 64fa85d68923
children 1e9788ce1680
rev   line source
359
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
1 # ----------------------------------------------------------------------------
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
2 # BEGIN EXPERIMENT ISOLATION CODE
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
3
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
4 # Path to pass to jobman sqlschedule. IMPORTANT TO CHANGE TO REFLECT YOUR CLONE.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
5 # Make sure this is accessible from the default $PYTHONPATH (in your .bashrc)
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
6 # (and make sure every subdirectory has its __init__.py file)
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
7 EXPERIMENT_PATH = "ift6266_mnistcrbm_exp1.ift6266.deep.crbm.mnist_crbm.jobman_entrypoint"
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
8
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
9 def isolate_experiment():
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
10 '''
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
11 This makes sure we use the codebase clone created for this experiment.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
12 I.e. if you want to make modifications to the codebase but don't want your
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
13 running experiment code to be impacted by those changes, first copy the
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
14 codebase somewhere, and configure this section. It will make sure we import
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
15 from the right place.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
16
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
17 MUST BE DONE BEFORE IMPORTING ANYTHING ELSE
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
18 (Leave this comment there so others will understand what's going on)
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
19 '''
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
20
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
21 # Place where you copied modules that should be frozen for this experiment
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
22 codebase_clone_path = "/u/savardf/ift6266/experiment_clones/ift6266_mnistcrbm_exp1"
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
23
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
24 # Places where there might be conflicting modules from your $PYTHONPATH
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
25 remove_these_from_pythonpath = ["/u/savardf/ift6266/dev_code"]
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
26
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
27 import sys
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
28 sys.path[0:0] = [codebase_clone_path]
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
29
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
30 # remove paths we specifically don't want in $PYTHONPATH
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
31 for bad_path in remove_these_from_pythonpath:
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
32 sys.path[:] = [el for el in sys.path if not el in (bad_path, bad_path+"/")]
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
33
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
34 # Make the imports
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
35 import ift6266
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
36
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
37 # Just making sure we're importing from the right place
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
38 modules_to_check = [ift6266]
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
39 for module in modules_to_check:
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
40 if not codebase_clone_path in module.__path__[0]:
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
41 raise RuntimeError("Module loaded from incorrect path "+module.__path__[0])
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
42
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
43 # END EXPERIMENT ISOLATION CODE
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
44 # ----------------------------------------------------------------------------
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
45
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
46 from jobman import DD
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
47
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
48 '''
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
49 These are parameters used by mnist_crbm.py. They'll end up as globals in there.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
50
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
51 Rename this file to config.py and configure as needed.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
52 DON'T add the renamed file to the repository, as others might use it
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
53 without realizing it, with dire consequences.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
54 '''
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
55
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
56 # change "sandbox" when you're ready
360
f37c0705649d Problèmes de révisions hg... tentative de merger
fsavard
parents: 359
diff changeset
57 JOBDB = 'postgres://ift6266h10@gershwin/ift6266h10_sandbox_db/yourtablenamehere'
359
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
58
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
59 # Set this to True when you want to run cluster tests, ie. you want
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
60 # to run on the cluster, many jobs, but want to reduce the training
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
61 # set size and the number of epochs, so you know everything runs
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
62 # fine on the cluster.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
63 # Set this PRIOR to inserting your test jobs in the DB.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
64 TEST_CONFIG = False
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
65
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
66 # save params at training end
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
67 SAVE_PARAMS = True
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
68
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
69 IMAGE_OUTPUT_DIR = 'img/'
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
70
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
71 # number of minibatches before taking means for valid error etc.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
72 REDUCE_EVERY = 100
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
73
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
74 # print series to stdout too (otherwise just produce the HDF5 file)
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
75 SERIES_STDOUT_TOO = False
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
76
360
f37c0705649d Problèmes de révisions hg... tentative de merger
fsavard
parents: 359
diff changeset
77 VISUALIZE_EVERY = 20000
359
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
78 GIBBS_STEPS_IN_VIZ_CHAIN = 1000
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
79
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
80 if TEST_CONFIG:
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
81 REDUCE_EVERY = 10
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
82 VISUALIZE_EVERY = 20
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
83
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
84 # This is to configure insertion of jobs on the cluster.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
85 # Possible values the hyperparameters can take. These are then
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
86 # combined with produit_cartesien_jobs so we get a list of all
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
87 # possible combinations, each one resulting in a job inserted
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
88 # in the jobman DB.
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
89 JOB_VALS = {'learning_rate': [1.0, 0.1, 0.01],
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
90 'sparsity_lambda': [3.0,0.5],
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
91 'sparsity_p': [0.3,0.05],
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
92 'num_filters': [40,15],
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
93 'filter_size': [12,7],
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
94 'minibatch_size': [20],
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
95 'num_epochs': [20]}
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
96
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
97 # Just useful for tests... minimal number of epochs
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
98 # Useful when launching a single local job
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
99 DEFAULT_STATE = DD({'learning_rate': 0.1,
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
100 'sparsity_lambda': 1.0,
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
101 'sparsity_p': 0.05,
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
102 'num_filters': 40,
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
103 'filter_size': 12,
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
104 'minibatch_size': 10,
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
105 'num_epochs': 20})
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
106
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
107 # To reinsert duplicate of jobs that crashed
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
108 REINSERT_COLS = ['learning_rate','sparsity_lambda','sparsity_p','num_filters','filter_size','minibatch_size','dupe']
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
109 #REINSERT_JOB_VALS = [\
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
110 # [,2],]
969ad25e78cc Fichier config.py.example supprimé je ne sais pas pourquoi ?! Enfin je le réajoute
fsavard
parents:
diff changeset
111