@@ -256,6 +256,7 @@ def test_experiment_with_session_tags(self):
256
256
min_value: 100.0
257
257
max_value: 300.0
258
258
}
259
+ differs: true
259
260
},
260
261
hparam_infos: {
261
262
name: 'lr'
@@ -264,6 +265,7 @@ def test_experiment_with_session_tags(self):
264
265
min_value: 0.01
265
266
max_value: 0.05
266
267
}
268
+ differs: true
267
269
},
268
270
hparam_infos: {
269
271
name: 'model_type'
@@ -272,6 +274,106 @@ def test_experiment_with_session_tags(self):
272
274
values: [{string_value: 'CNN'},
273
275
{string_value: 'LATTICE'}]
274
276
}
277
+ differs: true
278
+ }
279
+ metric_infos: {
280
+ name: {group: '', tag: 'accuracy'}
281
+ }
282
+ metric_infos: {
283
+ name: {group: '', tag: 'loss'}
284
+ }
285
+ metric_infos: {
286
+ name: {group: 'eval', tag: 'loss'}
287
+ }
288
+ metric_infos: {
289
+ name: {group: 'train', tag: 'loss'}
290
+ }
291
+ """
292
+ actual_exp = self ._experiment_from_metadata ()
293
+ _canonicalize_experiment (actual_exp )
294
+ self .assertProtoEquals (expected_exp , actual_exp )
295
+
296
+ def test_experiment_with_session_tags_differs_field (self ):
297
+ self .session_1_start_info_ = """
298
+ hparams: [
299
+ {key: 'bool_hparam_differs_true' value: {bool_value: false}},
300
+ {key: 'bool_hparam_differs_true' value: {bool_value: true}},
301
+ {key: 'float_hparam_differs_false' value: {number_value: 1024}},
302
+ {key: 'float_hparam_differs_true' value: {number_value: 0.01}},
303
+ {key: 'string_hparams_differs_false' value: {string_value: 'momentum'}},
304
+ {key: 'string_hparams_differs_true' value: {string_value: 'CNN'}}
305
+ ]
306
+ """
307
+ self .session_2_start_info_ = """
308
+ hparams:[
309
+ {key: 'bool_hparam_differs_true' value: {bool_value: false}},
310
+ {key: 'float_hparam_differs_false' value: {number_value: 1024}},
311
+ {key: 'float_hparam_differs_true' value: {number_value: 0.02}},
312
+ {key: 'string_hparams_differs_false' value: {string_value: 'momentum'}},
313
+ {key: 'string_hparams_differs_true' value: {string_value: 'LATTICE'}}
314
+ ]
315
+ """
316
+ self .session_3_start_info_ = """
317
+ hparams:[
318
+ {key: 'bool_hparam_differs_false' value: {bool_value: false}},
319
+ {key: 'bool_hparam_differs_true' value: {bool_value: false}},
320
+ {key: 'float_hparam_differs_false' value: {number_value: 1024}},
321
+ {key: 'float_hparam_differs_true' value: {number_value: 0.05}},
322
+ {key: 'string_hparams_differs_false' value: {string_value: 'momentum'}},
323
+ {key: 'string_hparams_differs_true' value: {string_value: 'CNN'}}
324
+ ]
325
+ """
326
+ expected_exp = """
327
+ hparam_infos: {
328
+ name: 'bool_hparam_differs_false'
329
+ type: DATA_TYPE_BOOL
330
+ domain_discrete: {
331
+ values: [{bool_value: false}]
332
+ }
333
+ differs: false
334
+ }
335
+ hparam_infos: {
336
+ name: 'bool_hparam_differs_true'
337
+ type: DATA_TYPE_BOOL
338
+ domain_discrete: {
339
+ values: [{bool_value: false}, {bool_value: true}]
340
+ }
341
+ differs: true
342
+ }
343
+ hparam_infos: {
344
+ name: 'float_hparam_differs_false'
345
+ type: DATA_TYPE_FLOAT64
346
+ domain_interval {
347
+ min_value: 1024
348
+ max_value: 1024
349
+ }
350
+ differs: false
351
+ }
352
+ hparam_infos: {
353
+ name: 'float_hparam_differs_true'
354
+ type: DATA_TYPE_FLOAT64
355
+ domain_interval {
356
+ min_value: 0.01
357
+ max_value: 0.05
358
+ }
359
+ differs: true
360
+ }
361
+ hparam_infos: {
362
+ name: 'string_hparams_differs_false'
363
+ type: DATA_TYPE_STRING
364
+ domain_discrete: {
365
+ values: [{string_value: 'momentum'}]
366
+ }
367
+ differs: false
368
+ }
369
+ hparam_infos: {
370
+ name: 'string_hparams_differs_true'
371
+ type: DATA_TYPE_STRING
372
+ domain_discrete: {
373
+ values: [{string_value: 'CNN'},
374
+ {string_value: 'LATTICE'}]
375
+ }
376
+ differs: true
275
377
}
276
378
metric_infos: {
277
379
name: {group: '', tag: 'accuracy'}
@@ -317,6 +419,7 @@ def test_experiment_with_session_tags_different_hparam_types(self):
317
419
values: [{string_value: '100.0'},
318
420
{string_value: 'true'}]
319
421
}
422
+ differs: true
320
423
}
321
424
hparam_infos: {
322
425
name: 'lr'
@@ -325,6 +428,7 @@ def test_experiment_with_session_tags_different_hparam_types(self):
325
428
values: [{string_value: '0.01'},
326
429
{string_value: '0.02'}]
327
430
}
431
+ differs: true
328
432
}
329
433
hparam_infos: {
330
434
name: 'model_type'
@@ -333,6 +437,7 @@ def test_experiment_with_session_tags_different_hparam_types(self):
333
437
values: [{string_value: 'CNN'},
334
438
{string_value: 'LATTICE'}]
335
439
}
440
+ differs: true
336
441
}
337
442
metric_infos: {
338
443
name: {group: '', tag: 'accuracy'}
@@ -354,12 +459,12 @@ def test_experiment_with_session_tags_different_hparam_types(self):
354
459
def test_experiment_with_session_tags_bool_types (self ):
355
460
self .session_1_start_info_ = """
356
461
hparams:[
357
- {key: 'batch_size ' value: {bool_value: true}}
462
+ {key: 'use_batch_norm ' value: {bool_value: true}}
358
463
]
359
464
"""
360
465
self .session_2_start_info_ = """
361
466
hparams:[
362
- {key: 'batch_size ' value: {bool_value: true}}
467
+ {key: 'use_batch_norm ' value: {bool_value: true}}
363
468
]
364
469
"""
365
470
self .session_3_start_info_ = """
@@ -368,11 +473,12 @@ def test_experiment_with_session_tags_bool_types(self):
368
473
"""
369
474
expected_exp = """
370
475
hparam_infos: {
371
- name: 'batch_size '
476
+ name: 'use_batch_norm '
372
477
type: DATA_TYPE_BOOL
373
478
domain_discrete: {
374
- values: [{bool_value: true}, {bool_value: false} ]
479
+ values: [{bool_value: true}]
375
480
}
481
+ differs: false
376
482
}
377
483
metric_infos: {
378
484
name: {group: '', tag: 'accuracy'}
0 commit comments