def test_serialization_lifecycle(self): arch = _Architecture("foo", "dummy_ensembler_name", replay_indices=[1, 2]) arch.add_subnetwork(0, "linear") arch.add_subnetwork(0, "dnn") arch.add_subnetwork(1, "dnn") self.assertEqual("foo", arch.ensemble_candidate_name) self.assertEqual("dummy_ensembler_name", arch.ensembler_name) self.assertEqual(((0, ("linear", "dnn")), (1, ("dnn", ))), arch.subnetworks_grouped_by_iteration) iteration_number = 2 global_step = 100 serialized = arch.serialize(iteration_number, global_step) self.assertEqual( '{"ensemble_candidate_name": "foo", "ensembler_name": ' '"dummy_ensembler_name", "global_step": 100, "iteration_number": 2, ' '"replay_indices": [1, 2], ' '"subnetworks": [{"builder_name": "linear", "iteration_number": 0}, ' '{"builder_name": "dnn", "iteration_number": 0},' ' {"builder_name": "dnn", "iteration_number": 1}]}', serialized) deserialized_arch = _Architecture.deserialize(serialized) self.assertEqual(arch.ensemble_candidate_name, deserialized_arch.ensemble_candidate_name) self.assertEqual(arch.ensembler_name, deserialized_arch.ensembler_name) self.assertEqual(arch.subnetworks_grouped_by_iteration, deserialized_arch.subnetworks_grouped_by_iteration) self.assertEqual(global_step, deserialized_arch.global_step)
def test_serialization_lifecycle(self): arch = _Architecture() arch.add_subnetwork(0, "linear") arch.add_subnetwork(0, "dnn") arch.add_subnetwork(1, "dnn") self.assertEqual(((0, ("linear", "dnn")), (1, ("dnn", ))), arch.subnetworks) serialized = arch.serialize() self.assertEqual( b"\n\x08\x12\x06linear\n\x05\x12\x03dnn\n\x07\x08\x01\x12\x03dnn", serialized) deserialized_arch = _Architecture.deserialize(serialized) self.assertEqual(arch.subnetworks, deserialized_arch.subnetworks)
def test_serialization_lifecycle(self): arch = _Architecture() arch.add_subnetwork(0, "linear") arch.add_subnetwork(0, "dnn") arch.add_subnetwork(1, "dnn") self.assertEqual(((0, ("linear", "dnn")), (1, ("dnn", ))), arch.subnetworks_grouped_by_iteration) serialized = arch.serialize() self.assertEqual( '{"subnetworks": [{"builder_name": "linear", "iteration_number": 0}, ' '{"builder_name": "dnn", "iteration_number": 0}, ' '{"builder_name": "dnn", "iteration_number": 1}]}', serialized) deserialized_arch = _Architecture.deserialize(serialized) self.assertEqual(arch.subnetworks_grouped_by_iteration, deserialized_arch.subnetworks_grouped_by_iteration)