6 Copyright (C) e2its - All Rights Reserved 7 * Unauthorized copying of this file, via any medium is strictly prohibited 8 * Proprietary and confidential 10 * This file is part of gDayF project. 12 * Written by Jose L. Sanchez <e2its.es@gmail.com>, 2016-2019 15 from collections
import OrderedDict
16 from copy
import deepcopy
17 from json
import dumps
27 OrderedDict.__init__(self)
28 self[
'model_id'] =
None 29 self[
'version'] =
None 31 self[
'objective_column'] =
None 32 self[
'workflow_id'] =
None 33 self[
'user_id'] =
None 34 self[
'timestamp'] =
None 36 self[
'execution_seconds'] = 0
37 self[
'load_path'] =
None 38 self[
'metrics'] = OrderedDict()
39 self[
'normalizations_set'] =
None 40 self[
'dataset'] =
None 41 self[
'dataset_hash_value'] =
None 42 self[
'data_initial'] =
None 43 self[
'data_normalized'] =
None 44 self[
'model_parameters'] =
None 45 self[
'ignored_parameters'] =
None 46 self[
'full_parameters_stack'] =
None 47 self[
'log_path'] =
None 48 self[
'json_path'] =
None 49 self[
'prediction_path'] =
None 50 self[
'predecessor'] =
None 57 return dumps(self, indent=4)
65 new_model[
'model_id'] = deepcopy(self[
'model_id'])
66 new_model[
'version'] = deepcopy(self[
'version'])
67 new_model[
'workflow_id'] = deepcopy(self[
'workflow_id'])
68 new_model[
'user_id'] = deepcopy(self[
'user_id'])
69 new_model[
'type'] = deepcopy(self[
'type'])
70 new_model[
'objective_column'] = deepcopy(self[
'objective_column'])
71 new_model[
'timestamp'] = deepcopy(self[
'timestamp'])
72 new_model[
'round'] = self[
'round'] + increment
73 new_model[
'execution_seconds'] = 0.0
74 new_model[
'tolerance'] = 0.0
75 new_model[
'predecessor'] = self[
'model_parameters'][get_model_fw(self)][
'parameters'][
'model_id'][
'value']
76 new_model[
'normalizations_set'] = deepcopy(self[
'normalizations_set'])
77 new_model[
'dataset'] = deepcopy(self[
'dataset'])
78 new_model[
'dataset_hash_value'] = deepcopy(self[
'dataset_hash_value'])
79 new_model[
'data_initial'] = deepcopy(self[
'data_initial'])
80 new_model[
'data_normalized'] = deepcopy(self[
'data_normalized'])
81 new_model[
'model_parameters'] = deepcopy(self[
'model_parameters'])
82 new_model[
'ignored_parameters'] = deepcopy(self[
'ignored_parameters'])
87 def pop(self, key, default=None):
101 for key, value
in armetadata.items():
102 if key
not in [
'load_path',
'json_path',
'load_path',
'prediction_path']:
103 new_model[key] = deepcopy(value)
105 if value
is not None:
106 new_model[key] = list()
107 for each_storage
in armetadata[key]:
108 new_model[key].append(OrderedDict(
109 {
'value': each_storage[
'value'],
110 'type': each_storage[
'type'],
111 'hash_value': each_storage[
'hash_value'],
112 'hash_type': each_storage[
'hash_type']
116 new_model[key] =
None 120 '''## Main block only for testing issues 121 if __name__ == "__main__": 122 ## Varible for testinf propouses 124 print(m.get_json())'''
Define all objects, functions and structs related to common utilities not associated to one concrete ...