@@ -29,41 +29,95 @@ def run_experiment(argv):
29
29
30
30
default_exp_name = 'experiment_%s_%s' % (timestamp , rand_id )
31
31
parser = argparse .ArgumentParser ()
32
- parser .add_argument ('--n_parallel' , type = int , default = 1 ,
33
- help = 'Number of parallel workers to perform rollouts. 0 => don\' t start any workers' )
34
- parser .add_argument (
35
- '--exp_name' , type = str , default = default_exp_name , help = 'Name of the experiment.' )
36
- parser .add_argument ('--log_dir' , type = str , default = None ,
37
- help = 'Path to save the log and iteration snapshot.' )
38
- parser .add_argument ('--snapshot_mode' , type = str , default = 'all' ,
39
- help = 'Mode to save the snapshot. Can be either "all" '
40
- '(all iterations will be saved), "last" (only '
41
- 'the last iteration will be saved), "gap" (every'
42
- '`snapshot_gap` iterations are saved), or "none" '
43
- '(do not save snapshots)' )
44
- parser .add_argument ('--snapshot_gap' , type = int , default = 1 ,
45
- help = 'Gap between snapshot iterations.' )
46
- parser .add_argument ('--tabular_log_file' , type = str , default = 'progress.csv' ,
47
- help = 'Name of the tabular log file (in csv).' )
48
- parser .add_argument ('--text_log_file' , type = str , default = 'debug.log' ,
49
- help = 'Name of the text log file (in pure text).' )
50
- parser .add_argument ('--params_log_file' , type = str , default = 'params.json' ,
51
- help = 'Name of the parameter log file (in json).' )
52
- parser .add_argument ('--variant_log_file' , type = str , default = 'variant.json' ,
53
- help = 'Name of the variant log file (in json).' )
54
- parser .add_argument ('--resume_from' , type = str , default = None ,
55
- help = 'Name of the pickle file to resume experiment from.' )
56
- parser .add_argument ('--plot' , type = ast .literal_eval , default = False ,
57
- help = 'Whether to plot the iteration results' )
58
- parser .add_argument ('--log_tabular_only' , type = ast .literal_eval , default = False ,
59
- help = 'Whether to only print the tabular log information (in a horizontal format)' )
60
- parser .add_argument ('--seed' , type = int ,
61
- help = 'Random seed for numpy' )
62
- parser .add_argument ('--args_data' , type = str ,
63
- help = 'Pickled data for stub objects' )
64
- parser .add_argument ('--variant_data' , type = str ,
65
- help = 'Pickled data for variant configuration' )
66
- parser .add_argument ('--use_cloudpickle' , type = ast .literal_eval , default = False )
32
+ parser .add_argument (
33
+ '--n_parallel' ,
34
+ type = int ,
35
+ default = 1 ,
36
+ help =
37
+ 'Number of parallel workers to perform rollouts. 0 => don\' t start any workers'
38
+ )
39
+ parser .add_argument (
40
+ '--exp_name' ,
41
+ type = str ,
42
+ default = default_exp_name ,
43
+ help = 'Name of the experiment.' )
44
+ parser .add_argument (
45
+ '--log_dir' ,
46
+ type = str ,
47
+ default = None ,
48
+ help = 'Path to save the log and iteration snapshot.' )
49
+ parser .add_argument (
50
+ '--snapshot_mode' ,
51
+ type = str ,
52
+ default = 'all' ,
53
+ help = 'Mode to save the snapshot. Can be either "all" '
54
+ '(all iterations will be saved), "last" (only '
55
+ 'the last iteration will be saved), "gap" (every'
56
+ '`snapshot_gap` iterations are saved), or "none" '
57
+ '(do not save snapshots)' )
58
+ parser .add_argument (
59
+ '--snapshot_gap' ,
60
+ type = int ,
61
+ default = 1 ,
62
+ help = 'Gap between snapshot iterations.' )
63
+ parser .add_argument (
64
+ '--tabular_log_file' ,
65
+ type = str ,
66
+ default = 'progress.csv' ,
67
+ help = 'Name of the tabular log file (in csv).' )
68
+ parser .add_argument (
69
+ '--text_log_file' ,
70
+ type = str ,
71
+ default = 'debug.log' ,
72
+ help = 'Name of the text log file (in pure text).' )
73
+ parser .add_argument (
74
+ '--tensorboard_log_dir' ,
75
+ type = str ,
76
+ default = 'progress' ,
77
+ help = 'Name of the folder for tensorboard_summary.' )
78
+ parser .add_argument (
79
+ '--tensorboard_step_key' ,
80
+ type = str ,
81
+ default = None ,
82
+ help =
83
+ 'Name of the step key in log data which shows the step in tensorboard_summary.'
84
+ )
85
+ parser .add_argument (
86
+ '--params_log_file' ,
87
+ type = str ,
88
+ default = 'params.json' ,
89
+ help = 'Name of the parameter log file (in json).' )
90
+ parser .add_argument (
91
+ '--variant_log_file' ,
92
+ type = str ,
93
+ default = 'variant.json' ,
94
+ help = 'Name of the variant log file (in json).' )
95
+ parser .add_argument (
96
+ '--resume_from' ,
97
+ type = str ,
98
+ default = None ,
99
+ help = 'Name of the pickle file to resume experiment from.' )
100
+ parser .add_argument (
101
+ '--plot' ,
102
+ type = ast .literal_eval ,
103
+ default = False ,
104
+ help = 'Whether to plot the iteration results' )
105
+ parser .add_argument (
106
+ '--log_tabular_only' ,
107
+ type = ast .literal_eval ,
108
+ default = False ,
109
+ help =
110
+ 'Whether to only print the tabular log information (in a horizontal format)'
111
+ )
112
+ parser .add_argument ('--seed' , type = int , help = 'Random seed for numpy' )
113
+ parser .add_argument (
114
+ '--args_data' , type = str , help = 'Pickled data for stub objects' )
115
+ parser .add_argument (
116
+ '--variant_data' ,
117
+ type = str ,
118
+ help = 'Pickled data for variant configuration' )
119
+ parser .add_argument (
120
+ '--use_cloudpickle' , type = ast .literal_eval , default = False )
67
121
68
122
args = parser .parse_args (argv [1 :])
69
123
@@ -87,6 +141,7 @@ def run_experiment(argv):
87
141
tabular_log_file = osp .join (log_dir , args .tabular_log_file )
88
142
text_log_file = osp .join (log_dir , args .text_log_file )
89
143
params_log_file = osp .join (log_dir , args .params_log_file )
144
+ tensorboard_log_dir = osp .join (log_dir , args .tensorboard_log_dir )
90
145
91
146
if args .variant_data is not None :
92
147
variant_data = pickle .loads (base64 .b64decode (args .variant_data ))
@@ -100,12 +155,14 @@ def run_experiment(argv):
100
155
101
156
logger .add_text_output (text_log_file )
102
157
logger .add_tabular_output (tabular_log_file )
158
+ logger .set_tensorboard_dir (tensorboard_log_dir )
103
159
prev_snapshot_dir = logger .get_snapshot_dir ()
104
160
prev_mode = logger .get_snapshot_mode ()
105
161
logger .set_snapshot_dir (log_dir )
106
162
logger .set_snapshot_mode (args .snapshot_mode )
107
163
logger .set_snapshot_gap (args .snapshot_gap )
108
164
logger .set_log_tabular_only (args .log_tabular_only )
165
+ logger .set_tensorboard_step_key (args .tensorboard_step_key )
109
166
logger .push_prefix ("[%s] " % args .exp_name )
110
167
111
168
if args .resume_from is not None :
0 commit comments